Summary, 1. Haskell in Leipzig, Tuesday, [05 Dec 2006]

More than 25 Haskellers from all over Germany (Dresden, Göttingen, Potsdam, Karlsruhe, Halle, Leipzig, ...) gathered in Leipzig for the first "HaL - Haskell in Leipzig" meeting. The range of different backgrounds was broad and spanned both the academic (students and professors) and the business (developers, consultants and managers) worlds, encompassing seasoned Haskell programmers as well as beginners.

There were five talks and two discussion sessions, and a 'functional breakfast' on Wednesday morning.

One of the discussion sessions had IDE support (in particular, in Eclipse, see below) as its topic, the other focused on the possibilities for promoting Haskell in the software industry. The talk topics ranged from the use of Haskell in web technology and in climate research to specifics of programming (MonadFix, coding guidelines). A very Haskell-like language (CAL Quark) that offers access to Java libraries and can be compiled to JVM bytecode was introduced.

Apart from the 'official' tracks, there was a lively exchange about programming, applications and experiences going on at the buffet.

A second "Haskell in Leipzig" meeting is planned for early spring 2007.

Presentation/Links (most in german)

Eclipse and Haskell

Eclipse provides a lot of language-neutral infrastructure that is independent of the Java support:

  • Editor (syntax highlighting, quick fixes, code assist, templates, ...)
  • Project model (workspace, resources)
  • Team support (Subversion, CVS, Darcs, ...)
  • Diff (file compare), source outline, preferences
  • Complex UI components (perspectives, views, help system, progress feedback, ...)
  • Powerful plugin model (extension points, version management for plugins, ...)
Yet a lot of important functionality cannot be easily used for other programming languages: refactoring, debugging, compiling, code navigation; this is supported by the tight integration between the Java IDE and its own incremental Java compiler implementation, which helps building a model of the sources and libraries in the workspace and keeping it constantly in sync with file changes. This enables all the language-specific functionality, like error markers, coding hints and automated refactorings.

The central question therefore is how to integrate the Haskell compiler (GHC API) and the IDE. The Visual Haskell project had to deal with a similar problem, so there might be a few things to be learned from its approach. (Actual re-use of parts of Visual Haskell would be an option only on Windows systems.) For refactoring in particular, an integration with HaRe would be desirable.

HaL1 -- erstes Haskell in Leipzig Treffen


Ein informelles Treffen für Anwender und Interessenten der funktionalen Programmierung, insbesondereHaskell.


Dienstag, 5. Dezember 2006, 19:00 Uhr bis 23:30 Uhr.


iba Consulting Gesellschaft, Leipzig, Erich-Zeigner-Allee 22. link


Geplant sind Kurzvorträge (10 .. höchstens 15 Minuten) zu


  • H. Thielemann: Das sächsische Parallelnetz (Web-Server, HTML)
  • Potsdam Institut für Klimafolgenforschung: Formalisierung von "Vulnerabilität im Bezug zu Klimawandel" und die Entwicklung von Komponenten fürparallele Gitter-basierte Rechnungen. Haskell als Formalisierungssprache.
  • H. G. Zirnstein:DSELs MonadFix oder der Unterschied zwischen Konstruktion und Wert, frisby (packrat parser combinators) und linksrekursive Grammatiken, Hardware DSEL Lava.

Methodik, Stil & Werkzeuge

  • A. Richter: Open (?) CAL Quark neue Sprache, Haskell ähnlich (98%) & mit voller Java Integration. link
  • J. Waldmann: Bemerkungen zu Haskell-Style
    Welche Datentypen sollte man nehmen, welches Layout usw.


  • "I want a (free) Haskell IDE with..." , refactoring, debugging, ... using the GHC-API and Eclipse.
    Moderation: L. Frenzel (Initiator von eclipse fp undeclipse darcs)

WLAN, Beamer und Flipchart sind vorhanden. Kalte und warme Getränke werden von iba CG gestellt.


J. Waldmann, HTWK und A. Richter, iba CG


Bitte durch Email an "haskell (at) iba-cg.de" anmelden.

Wie weiter?

Das sehen wir dann. Bei genügend Interesse gibt es eine Fortsetzung.