In February 2002 I quit researching and started working as system administrator, first in Kiel, now in Munich.

During my time working as research assistant, I was mainly interested in the integration of functional and logic languages. As a student I started implementing the first prototype of the functional logic language Curry and also got involved in some design issues of this language.

Curry is lazy functional logic language which was originally designed back in 1996/97. Since then a few things have changed and many new concepts were added. Today, Curry offers a variety of modern features of functional and logic languages, e.g. a polymorphic type system, Monadic I/O, modules, constraints, higher-order and non-deterministic functions, encapsulated search and libraries for communication, distributed programming and programming of HTML, CGI and graphical user interfaces.

The topic of my diploma thesis was the integration of Encapsulated Search into Curry which was adapted from the language Oz.

After my diploma, I was working on a DFG project in the research group Michael Hanus who is one of the fathers and the main developer of Curry.

I studied and developed analysis methods for functional logic languages. In this field, still a lot work needs to be done. Although many analyses exist for functional and for logic languages, their adaption to the functional logic framework is often not trivial. Sometimes completely new analyses are neccessary, e.g. the non-determinism analysis, which I've developed. I was also involved in some research effort to adapt program transformations to functional logic languages. See the publications below for further details.

Additionally, I was dealing with implementation issues of Curry. We tried out several implementation approaches and have a quite complete implementation available today, which is called PAKCS and has been programmed by people from Michael Hanus research group and from the Portland State University.

Functional Logic Languages

There are some other functional logic languages around the world (the list below is not a complete one!). Most of them are based either on residuation or on narrowing, while Curry unifies the two concepts. Unfortunately, the development of many of these languages has been more or less stopped (*).
ALF * narrowing-based
Babel * narrowing-based
Escher * residuation-based
Life * residuation-based
Mercury         mode-based
Oz constraint language, residuation-based
Toy narrowing-based


Some of the researchers who I've been working with or who work in the field of functional logic programming:
Elvira Albert UPV, Spain
Maria Alpuente UPV, Spain
Sergio Antoy PDX, USA
Rachid Echahed IMAG, France
Santiago Escobar        UPV, Spain
Cesar Ferri UPV, Spain
Michael Hanus CAU Kiel, Germany
Herbert Kuchen University of Münster, Germany
John Lloyd ANU, Australia
Rita Loogen University of Marburg, Germany
Salvador Lucas UPV, Spain
Wolfgang Lux University of Münster, Germany
Bart Massey PDX, USA
Wendelin Serwe IMAG, France
German Vidal UPV, Spain


    To be completed
  • Eingekapselte Suchverfahren für logisch-funktionale Programmiersprachen
    Diploma thesis, 1997
    Available (german only):   Postscript   

Spannende Wanderungen mit Kindern südlich von München Wandern mit Kindern in Bayern Oberbayern und im Allgäu, Kinderwanderungen KinderwandernHomepage Florian SteinerHomepage Ariane SteinerSpannende Wanderungen mit Kindern südlich von München Wandern mit Kindern in Bayern Oberbayern und im Allgäu, Kinderwanderungen KinderwandernHomepage der Familie Steiner