Klaus Didrich
Technical University of Berlin
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Klaus Didrich.
implementation and application of functional languages | 1997
Klaus Didrich; Wolfgang Grieskamp; Christian Maeder; Peter Pepper
We present design aspects of the algebraic-functional language Opal 2α, which features flexible modularization to support programming in the large. Opal 2α provides parameterized structures and theories as part of packages. Parameterized theories serve to specify properties of functions and are shown — along with partial instantiations — to play a similar role to type classes in Haskell. Structures can be viewed as (mere) interfaces or as concrete implementations. A realization relation between structures tells us which implementation realizes which interface. A package is a kind of folder for structures and theories. Packages establish flexible name spaces via an import relation. Name spaces, overloading and instance derivation are based on a well-established annotation concept.
KORSO - Methods, Languages, and Tools for the Construction of Correct Software | 1995
Uwe Wolter; Klaus Didrich; Felix Cornelius; Marcus Klar
The specification language Spectrum [BFG+93] melts a wide range of concepts into a single language frame: three-valued first-order logic, polymorphism, type classes, higher-order functions, infinite objects. The desire of identifying and relating sub-languages satisfying certain constraints given by syntactical and pragmatic considerations appears.
KORSO - Methods, Languages, and Tools for the Construction of Correct Software | 1995
Peter Pepper; Ralph Betschko; Sabine Dick; Klaus Didrich
One of the crucial operations on the path from specification to implementation is the modification of data structures. In this paper we demonstrate how this task can be accomplished constructively.
algebraic methodology and software technology | 1996
Klaus Didrich; Carola Gerke; Wolfgang Grieskamp; Christian Maeder; Peter Pepper
The Opal system has been used in teaching and research activities. The experience that we have gained from working on and with the Opal system indicates that, functional programming is indeed well suited for producing “real-life” software. This result coincides with the findings of other research teams working in this area. The integration of algebraic specification constructs into a functional language as it is done in the Opal system helps in closing the gap between the two worlds of formal specification and efficient implementation. We feel confident that the functional paradigm, supported by formal methods, will eventually provide a basis for industrial software development.
implementation and application of functional languages | 1999
Klaus Didrich; Wolfgang Grieskamp; Florian Schintke; Till Tantau; Baltasar Trancón-y-Widemann
We report on an extension of the Opal system that allows the use of reflections. Using reflections, a programmer can query information like the type of an object at runtime. The type can in turn be queried for properties like the constructor and deconstructor functions, and the resulting reflected functions can be evaluated. These facilities can be used for generic meta-programming. We describe the reflection interface of Opal and its applications, and sketch the implementation. For an existing language implementation like Opal’s the extension by a reflection facility is challenging: in a statically typed language the management of runtime type information seems to be an alien objective. However, it turns out that runtime type information can be incorporated in an elegant way by a source-level transformation and an appropriate set of library modules. We show how this transformation can be done without changing the Opal core system and causing runtime overhead only where reflections are actually used.
colloquium on trees in algebra and programming | 1997
Klaus Didrich; Torsten Klein
We present an approach to the design of a literate programming tool for the algebraic programming language Opal, which serves as a back-end in the formal program derivation process. In designing our documentation system we not only take technical aspects into account, but also have the acceptance of the documentation system by the software developer in mind.
international conference on programming languages and system architectures | 1994
Klaus Didrich; Andreas Fett; Carola Gerke; Wolfgang Grieskamp; Peter Pepper
Journal of Systems and Software | 2002
Peter Pepper; Michael Cebulla; Klaus Didrich; Wolfgang Grieskamp
Archive | 1994
Peter Pepper; Martin Wirsing; R. Betschko; Manfred Broy; S. Dick; Klaus Didrich; J. Faulhaber; Wolfgang Grieskamp; M. Mehlich; Wolfgang Reif
Archive | 1996
Klaus Didrich; Torsten Klein