From HaskellWiki
Revision as of 12:15, 8 April 2014 by Basvandijk (talk | contribs) (Direct link to better.com)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Zurich FP Afternoon:

When: Thursday, Aug 29th 2013
Hours: 13:00 ~ 18:00
Where: ETH, Zurich, Switzerland

ZuriHac 2013:

When: Friday, Aug 30th 2013 – Sunday, Sep 1st 2013
Hours: 09:00 ~ 20:00
Where: Erudify (now known as Better), Zurich, Switzerland

Switzerland has its own power sockets. We can't provide converters for everybody so make sure to bring one along. Do note that the Europlug will fit in a Swiss power socket. There's an electronics shop Fust Center Eschenmoser very near our office where you can buy converters.



On Thursday, 29 August 2013 the Zurich HaskellerZ Meetup group will hold the "Zurich FP Afternoon". This will be a half-day event consisting of talks themed "Functional Programming in Industry". It will be held at ETH and will start with a keynote from Simon Marlow!

The Zurich FP Afternoon is followed by ZuriHac 2013, a three day Haskell Hackathon from Friday, 30 August until Sunday, 1 September hosted at the Erudify offices.

The Haskell Hackathon is an international, grassroots collaborative coding festival with a simple focus: build and improve Haskell libraries, tools, and infrastructure.

This is a great opportunity to meet your fellow haskellers in real life, find new contributors for your project, improve existing libraries and tools or even start new ones!

See ZuriHac for previous Hackathons in Zurich.



Better (formerly known as Erudify) will host the Hackathon.


Google Switzerland are providing financial and food support


ETH will host the Zurich FP Afternoon.


19 August 2013
Google Switzerland is an official co-sponsor of ZuriHac 2013.
This enables us to give all attendees this free T-shirt:
T Shirt ZuriHac 2013 front 1.jpgT Shirt ZuriHac 2013 back 1.jpg
and free food and drinks during the FP Afternoon!
Thanks Google!
24 July 2013
Completed speakers schedule for the FP Afternoon.
10 June 2013
Registration is now open!


To register please fill in the form.



Zurich, Switzerland

To learn more about the city, please see the Wikipedia and Wikitravel articles.

Getting around

Google map with important places

Local transport links:


Getting to the FP Afternoon Talks on the 29th from the Airport

Follow signs to the Tram 10 from the Airport arrivals. Take the Tram 10 direct to the stop "ETH/Universitätsspital"

Getting to the Zurich Youth Hostel from the Airport

Take any train that stops at Zurich Bahnhof Hardbrücke, transfer to the 33 Trolley bus going direction Morgental. Take 33 to Jugendherberge and you will see the Hostel.

Getting from the Youth Hostel to the FP Afternoon Talks

Walk to Morgental and take the number 7 Tram direction Bahnhof Stettbach. Change to the Number 10 or Number 6 Tram at the stop "Central" (direction Flughafen/Oerklion and Zoo) and get off at "ETH/Universitätsspital"

A note on day tickets:

Day tickets in Zurich run for 24 hours and can be used on all forms of transport, bus, train, tram.


We have spoken with the local Youth Hostel in Zurich and they will be able to group Haskellers together if you mention the code "ZuriHac2013" when booking and when you check in.

The website to book is here http://www.youthhostel.ch/en/hostels/zurich

Please be advised we do not have a hold on rooms so you should book sooner rather than later if you will attend! Erudify and the Youth Hostel can't guarantee space

The Hostel has good public transport links to the Hackathon and downtown Zurich.

Transport between the Hostel and Hackathon is very easy with the Trolley Bus 33.

Other options we recommend are Wimdu or Airbnb.


FP Afternoon

Time Speaker Title Abstract Slides
13:00 Zurihac2013.png Registration Food and drinks provided by Google
13:30 Simon Marlow.jpg Simon Marlow Keynote: The Haxl Project at Facebook Writing code in an environment as large and complex as Facebook involves talking to many different back-end services, including databases, search engines, caches, and so forth. Each of these data sources has different characteristics and requires different access patterns to make best use of its resources. Typical front-end code will need to access many of these resources concurrently, but the programmer doesn't want to be concerned with the details of how best to access each resource. Moreover, we want to be able to write our code in a modular way and yet have concurrent accesses to the back-end services automatically batched and overlapped for us.

This talk describes a system that we're building using Haskell that allows the front-end programmer writing business logic to access all the back-end services in a concise and consistent way, while the system handles batching and overlapping of requests to multiple data sources behind the scenes. The programming model is one of implicit concurrency: there's no fork or async operation, all external data access is implicitly performed in parallel where possible.

14:30 Break Food and drinks provided by Google
15:00 Erik Hesselink.jpgErik Hesselink Functional programming at Silk. At Silk we've been using functional programming for about 4 years now. We've used it to build a web application, coding in Haskell and Javascript. I will explain what we do, how we do it, and what we've found to be the strengths and weaknesses of Haskell and Javascript. Slides
15:35 Gergely Risko.pngGergely Risko Ceh, power-user environments to share It's a common problem to share user environments (editor, compiler, browser, etc.) between GNU/Linux computers: laptop on the move and desktop at home, or different engineering workstations of a product team. This is usually solved by using the GNU/Linux distribution's package manager. That fails if the different engineers use different distributions or different versions. Ceh, building on Nix provides the same version controlled, reproducible power-user environment on top of any modern GNU/Linux, be it 64-bit or 32-bit. What makes it interesting for Haskellers is the fact that Nix applies the concept of purity and laziness on the filesystem level and package management level, and Ceh also has excellent GHC support with ~80 cabal packages included. Slides
16:10 Break Food and drinks provided by Google
16:40 Thomas Schilling.jpgThomas Schilling A virtual machine for Haskell The Glasgow Haskell Compiler is a very good static compiler, but the code it produces is often large and it can be difficult to predict performance.

Furthermore, profiling a program often requires recompiling the program and all libraries it uses. This talk describes Lambdachine, a virtual machine and trace-based just-in-time (JIT) compiler for Haskell, which attempts to address these problems. Lambdachine reuses GHC for type checking and (optional) static optimisations, and complements it with additional optimisations performed at runtime based on the program's behaviour. This talk describes some of the challenges of the design and implementation of Lambdachine.

17:15 Luite Stegeman.pngLuite Stegeman Concurrent Haskell in the browser with GHCJS GHCJS is a Haskell to JavaScript compiler that supports many modern Haskell features, including lightweight threads, exceptions, Template Haskell and STM. Since It's based on GHC, we also get all recent type system extensions for free!

In this talk I will explain how GHCJS hooks into the GHC pipeline to translate Haskell to JavaScript and discuss the challenges of compiling to a high level language. We will see how we can interact with JavaScript code from the Haskell world, in particular how GHCJS lets us avoid callback hell for HTTP requests and event handling in the browser.

17:50 Prizegiving Announcement of Google prizes



Hacking hours: 10:00 to 18:00.


Please come before 11:00. At 11:00 there will be projects introduction and discussion.


Since the weather is lovely we'll go BBQing at Lake Zurich this afternoon!

  • The plan is to leave at 18:00.
  • We'll close the office at 18:00 so make sure you've got your stuff with you.
  • To make it easier we'll go in two groups:
    • Group A will be lead by Simon Meier.
    • Group B will be lead by Bas van Dijk.
    • We'll assemble the groups at around 17:45.
  • Everybody should bring their own food & drinks so we'll go shopping at: Migros at Wengistrasse 7 which is a 5 min. walk from ZuriHac.
  • Make sure to buy a ticket because Swiss train conductors know no mercy. I suggest you buy a "Tageskarte" (which is a ticket for 24 hours) for zone 10.
  • If you like you can take a dive in the lake. The water is around 22°C. So make sure to pack a swimsuit and towel.

ZuriHac BBQ 1.jpg ZuriHac BBQ 2.jpg ZuriHac BBQ 4.jpg ZuriHac BBQ 3.jpg


Dinner: Pizza!

  • We'll order pizzas at the standard Erudify pizza place: Molino at Stauffacher.
  • Bas will come by and take your order and your money ;-)
  • The organizers will get the pizzas and we'll eat them at ZuriHac.


  • We would like to organize a Demo / Lightning-talk session at 13:30 today.
  • Please come to Bas if you would like to demo something or like to give a lightning talk.
  • Please keep your demo's/talks shorter than 5 minutes.
  • Program:
    • Duncan Coutts: Lightning talk: "async I/O vs sync I/O" & "Hackage 2".
    • Simon Meier: Demo: "Outlook on an improved binary serialization".
    • Simon Hengel: Demo: "Source locations for error / undefined / failing tests".
    • Patrick Premont: Talk: "Easily Persisting Large Immutable Data Structures".
    • Break
    • Sjoerd Visscher: Demo: "Free Functors".
    • Roman Cheplyaka: Lightning talk: The status of the Haskell Suite
    • Erik Hesselink: Demo: "Halberd: automatically generating imports".
    • Mihaly Barasz: Demo: "SSTM, it's a thing!".
    • Gergely Risko: Demo: "the final library".
    • Adam Bergmark: Talk: "Fay: status update".

ZuriHac Demoday 3.jpg ZuriHac Demoday 1.jpg ZuriHac Demoday 2.jpg


See the list of people who are attending the FP Afternoon / ZuriHac 2013.


See the projects page.

IRC, Twitter

The main communication channel during the Hackathon will be our IRC channel: #zurihac at Freenode.

#zurihac is our Twitter/Google+ hashtag as well.


The events are organized in name of the Zurich HaskellerZ meetup group by the following people:

  • Alexander Bernauer (Google)
  • Thomas Schilling (Erudify)
  • Simon Meier (Erudify)
  • Michela D'Amelio (Erudify)
  • Dominic Small (Erudify)
  • Ales Pospisil (Erudify)
  • Bas van Dijk (Erudify)

For any questions or emergencies, you can always call Bas (Bas van Dijk.png) at +41 791 285 624 or send an email to zurihac@erudify.com