HaL4 Summary
                          (Deutsche Version) 
                          After three successful regional meetings "Haskell in Leipzig" we organized the fourth HaL meeting on 2009-06-12 in Halle/Saale,
                          Germany. In order to make the event more attractive, we decided to complement the main talks by tutorials for Haskell newcomers and
                          interested users. The tutorials turned out to be of high interest to many, since instead of the expected 20 participants we welcomed
                          60 participants - as many as attended the main programme. We are especially proud that participants came from all over the
                          country and even from a German language foreign country, namely from Vienna/Austria. 
                          Tutorials:
                          
                            - 10 o'clock: Turn design patterns upside down:
 
                            data, fold and laziness instead of compound, visitor, iterator. 
                            J. Waldmann, HTWK Leipzig. [material] 
                            - 11 o'clock: How to overload the semicolon:
 
                            Structuring and reusing code using monads 
                            Bertram Felgenhauer (Dresden). [material] 
                            - 12 o'clock: CAL/openquark: ( openquark.org )
 
                            Haskell + Java => CAL, a practical introduction 
                            Eclipse as CAL-IDE, read Excel, type safe SQL == LINQ for Java? 
                            Alf Richter, iba Consulting, Leipzig. [material] 
                           
                          Because of the big number of participants we had to move to the colloquium room of our institute shortly. It started to fill up
                          around 10 o'clock and was covered by a growing network of power supply cables, that brought our institute to the limits of its
                          connector resources. 
                          First, the attendees were taught by Prof. Johannes Waldmann (HTWK Leipzig) on how to find similarities in different algorithms and
                          how to express them using higher-order functions (namely fold ). 
                          Also the following tutorial concerned such abstractions. Bertram Felgenhauer (Dresden) explained the concept of monads
                          using exception handling and stateful computations. 
                          The final tutorial, held by Alf Richter (iba Consulting, Leipzig), addressed friends of Java and Eclipse and gave an
                          introduction to the work with CAL . CAL is a simplified variant of Haskell that allows easy interaction with Java and
                          generation of Java-Bytecode. 
                          Talks:
                          
                            - 15 o'clock: Hayoo! Haskell API Search
 
                            Timo Hübel, FH Wedel 
                            - 16 o'clock: Haskell as pure specification language
 
                            Baltasar Trancón y Widemann, Universität Bayreuth 
                            - 17 o'clock: Functional-logic programming with Curry
 
                            Jan Christiansen, Universität Kiel 
                           Slides, photos and live record of the talks (please excuse the chopped
                          speech)
                          After a refreshment and first debates amongst the participants we continued with the main talks at 15 o'clock. Timo Hübel
                          (freiheit.com technologies gmbh Hamburg) gave a report about the technique underlying Hayoo , a search engine for Haskell
                          APIs. It is part of the Holumbus-Project that provides basics for implementation of general search engines. 
                          The next talk, given by Baltasar Trancón y Widemann (Universität Bayreuth) was about shared and circular data structures
                          and how to make them explicit and make use of these properties. We expect that the presented techniques will help to improve domain
                          specific languages embedded in Haskell (EDSLs). 
                          The last talk by Jan Christiansen (Universität Kiel) widened our view from functional programming languages to combined logical
                          and functional programming languages. In contrast to Mercury, that extends logic programming by functional elements, the programming
                          language Curry approaches the combination of both paradigms starting from the functional concept. This triggered lively discussions
                          about whether Curry can also be simulated in Haskell using an appropriate non-determinism monad. 
                          The day was finished with sausage, steak, fish and feta from the barbecue and a lot of discussion amongst the participants. 
                          We like to thank all lecturers and visitors and look forward to an equally successful meeting in 2010!  
                           
                          Meeting HaL4 : Haskell - Tutorial + Workshop + Party
                          Date: 12. Juni 2009 
                          Location: Institut für Informatik 
                          der Martin-Luther-Universität Halle-Wittenberg, 
                          Von-Seckendorff-Platz 1, 06120 Halle 
                          www.informatik.uni-halle.de 
                          Programme Committee: 
                          Alf Richter, Janis Voigtländer, Johannes Waldmann (Chair) 
                           
                          Local Organisation: 
                          Henning Thielemann 
                           
                          Sponsoring: 
                          iba Consulting Gesellschaft mbH & Co. KG, Leipzig 
                          HaL4 Zusammenfassung
                          Nach drei erfolgreichen regionalen Treffen "Haskell in Leipzig" fand die vierte Auflage von HaL am 12. Juni 2009 in Halle statt.
                          Unsere Überlegungen, wie wir dieses Treffen attraktiver machen könnten, führten dazu, dass wir dem eigentlichen Vortragsprogramm noch
                          ein Programm für Einsteiger und Umsteiger voranstellten. Damit stießen wir auf großes Interesse, denn statt der erwarteten 20
                          Teilnehmer kamen mehr als 60 Teilnehmer - so viel, wie auch am Hauptprogramm teilnahmen. Besonders freut uns, dass Teilnehmer
                          aus allen Ecken des Landes kamen und sogar aus dem deutschsprachigen Ausland, nämlich aus Wien. 
                          Tutorien:
                          
                            - 10 Uhr: Entwurfsmuster vom Kopf auf die Füße gestellt:
 
                            data, fold und laziness statt Kompositum, Visitor, Iterator. 
                            J. Waldmann, HTWK Leipzig. [Material] 
                            - 11 Uhr: Wie man das Semikolon überlädt:
 
                            Code-Strukturierung und -Wiederverwendung durch Monaden 
                            Bertram Felgenhauer (Dresden). [Material] 
                            - 12 Uhr: CAL/openquark: ( openquark.org )
 
                            Haskell + Java => CAL, eine praktische Einführung 
                            Eclipse als CAL-IDE, Excel lesen, typsicheres SQL == LINQ für Java? 
                            Alf Richter, iba Consulting, Leipzig. [Material] 
                           
                          Wegen der großen Teilnehmerzahl mussten wir kurzfristig auf den Kolloquiumsraum unseres Institutes ausweichen. Dieser füllte sich
                          gegen 10 Uhr und wurde nach und nach von einem beachtlichen Netzwerk aus Verteilersteckdosen durchzogen, welches das Institut an die
                          Grenzen seiner Vorräte brachte. 
                          Die Teilnehmer wurden dann von Prof. Johannes Waldmann (HTWK Leipzig) darin geschult, Gemeinsamkeiten in verschiedenen Algorithmen
                          zu entdecken und diese mit einer Funktion höherer Ordnung (hier fold) zu beschreiben. 
                          Auch im anschliessenden Tutorium ging es um derartige Abstraktionen. Hier erklärte Bertram Felgenhauer (Dresden) am Beispiel von
                          Fehlerbehandlung und Verwaltung eines Zustandes, was es mit dem Konzept der Monaden auf sich hat. 
                          Das abschließende Tutorium von Alf Richter (iba Consulting, Leipzig) richtete sich an Java- und Eclipse -Liebhaber und
                          führte in die Arbeit mit CAL ein. CAL ist eine vereinfachte Variante von Haskell, die einfache Interaktion mit Java erlaubt
                          und selbst in Java-Bytecode übersetzt werden kann. 
                          Vortragsprogramm:
                          
                            - 15 Uhr: Hayoo! Haskell API Search
 
                            Timo Hübel, FH Wedel 
                            - 16 Uhr: Haskell als reine Spezifikationssprache
 
                            Baltasar Trancón y Widemann, Universität Bayreuth 
                            - 17 Uhr: Funktional-logische Programmierung mit Curry
 
                            Jan Christiansen, Universität Kiel 
                           Folien, Fotos und Live-Mitschnitt (leider mit leicht zerhakten Ton)
                          Nach einer Stärkung in der Cafeteria und ersten Debatten unter den Teilnehmern ging es ab 15 Uhr weiter mit den Hauptvortraegen.
                          Timo Hübel (freiheit.com technologies gmbh Hamburg) berichtete über die Funktionsweise von Hayoo , einer Suchmaschine für
                          Haskell-APIs. Sie ist Teil des Holumbus-Projektes , welches die Grundlagen fuer Suchmaschinen beinhaltet. 
                          Weiter ging es mit einem Vortrag von Baltasar Trancon y Widemann (Universität Bayreuth) über das Sichtbarmachen und Ausnutzen von
                          gemeinsam genutzten und zirkulären Datenstrukturen (sharing) . Die vorgestellten Techniken dürften für viele in Haskell
                          eingebettete anwendungsspezifische Programmiersprachen (EDSL) eingesetzt werden können. 
                          Der letzte Vortrag von Jan Christiansen (Universität Kiel) bot einen Blick über den Tellerrand der funktionalen Programmierung hin
                          zur logischen Programmierung. Im Gegensatz zu Mercury, welches logische Programmierung um funktionale Elemente erweitert, nähert sich
                          Curry von der funktionalen Programmierung her einer Vereinigung beider Paradigmen. Dies löste angeregte Debatten darüber aus, ob man
                          Curry auch in Haskell mit einem geeigneten Nichtdeterminismus-Monad nachbilden kann. Der Abend klang bei gegrillten
                          Würstchen, Steaks, Fisch und Feta aus und wurde von allen Teilnehmern intensiv für Diskussionen genutzt. Wir bedanken uns bei
                          allen Vortragenden und allen Teilnehmern und hoffen auf ein ebenso erfolgreiches Treffen 2010! 
                           
                          Veranstaltung HaL4 : Haskell - Tutorial + Workshop + Party
                          Termin: 12. Juni 2009 
                          Ort: Institut für Informatik 
                          der Martin-Luther-Universität Halle-Wittenberg, 
                          Von-Seckendorff-Platz 1, 06120 Halle 
                          www.informatik.uni-halle.de 
                          Programmkomitee: 
                          Alf Richter, Janis Voigtländer, Johannes Waldmann (Chair) 
                           
                          Lokale Organisation: 
                          Henning Thielemann 
                           
                          Sponsor: 
                          iba Consulting Gesellschaft mbH & Co. KG, Leipzig 
                         |