Difference between revisions of "DHD UHac/DHD Program"

From HaskellWiki
Jump to navigation Jump to search
(Added Chris Done's lightning talk, rearranged a bit)
Line 25: Line 25:
 
|-
 
|-
 
| 11:15
 
| 11:15
  +
|colspan="2"| ''Available''
| More Talks
 
|
 
 
|-
 
|-
 
| 11:45
 
| 11:45
| colspan="2" | ''Lightning Talks''
+
|colspan="2"| ''Lightning Talks''
 
|-
 
|-
 
|
 
|
 
| [[#dotfs|DotFS]]
 
| [[#dotfs|DotFS]]
 
| Paul van der Walt, Sjoerd Timmer
 
| Paul van der Walt, Sjoerd Timmer
|-
 
|
 
| [[#case-study|Case Study Invitation]]
 
| Jurriaan Hage
 
|-
 
|
 
| [[#holes|Holes in GHC]]
 
| Thijs Alkemade
 
 
|-
 
|-
 
|
 
|
 
| [[#gruze|Snap and Gruze]]
 
| [[#gruze|Snap and Gruze]]
 
| Kevin Jardine
 
| Kevin Jardine
 
|-
 
|
 
| [[#case-study|Case Study Invitation]]
 
| Jurriaan Hage
 
|-
 
|-
 
| 12:15
 
| 12:15
Line 59: Line 54:
 
|-
 
|-
 
| 14:15
 
| 14:15
  +
|colspan="2"| ''Available''
| More Talks
 
 
|-
  +
| 14:45
  +
|colspan="2"| ''Lightning Talks''
 
|-
 
|
 
| [[#holes|Holes in GHC]]
 
| Thijs Alkemade
  +
|-
 
|
 
|
  +
| Ji
  +
| Chris Done
 
|-
 
|-
 
| 15:15
 
| 15:15
Line 95: Line 100:
 
Everyone who has more than one account on Linux/Unix/OS X systems knows how hard is can be to keep track of all the different config files in your home directory. <tt>.vimrc</tt>, <tt>.muttrc</tt>, <tt>.hgrc</tt>, <tt>.screenrc</tt>, <tt>.bashrc</tt>, and <tt>.xinitrc</tt> are just a few, but we're sure you can come up with many more yourself. Imagine how wonderful your life could be if you just had an easy tool to keep track of different versions of all these files on all your machines. We argue that traditional version control systems on their own are not up the task and we provide an alternative.
 
Everyone who has more than one account on Linux/Unix/OS X systems knows how hard is can be to keep track of all the different config files in your home directory. <tt>.vimrc</tt>, <tt>.muttrc</tt>, <tt>.hgrc</tt>, <tt>.screenrc</tt>, <tt>.bashrc</tt>, and <tt>.xinitrc</tt> are just a few, but we're sure you can come up with many more yourself. Imagine how wonderful your life could be if you just had an easy tool to keep track of different versions of all these files on all your machines. We argue that traditional version control systems on their own are not up the task and we provide an alternative.
   
 
=== <span id="gruze"></span>Snap and Gruze ===
  +
 
Kevin Jardine
 
 
Snap and Gruze. Developing an astronomy application using Snap and an experimental entity-attribute-value store for Haskell.
 
=== <span id="case-study"></span>Invitation to Participate in a Functional Programming Case Study ===
 
=== <span id="case-study"></span>Invitation to Participate in a Functional Programming Case Study ===
   
Line 111: Line 121:
 
with experienced Haskell programmers, which is why I am now seeking for
 
with experienced Haskell programmers, which is why I am now seeking for
 
participants.
 
participants.
 
=== <span id="holes"></span>Holes in GHC ===
 
 
Thijs Alkemade (UU)
 
 
This will be a demonstration of work-in-progress on adding holes for type-based debugging with GHC. See the [http://hackage.haskell.org/trac/ghc/wiki/Holes GHC Trac page] for details.
 
 
=== <span id="gruze"></span>Snap and Gruze ===
 
 
Kevin Jardine
 
 
Snap and Gruze. Developing an astronomy application using Snap and an experimental entity-attribute-value store for Haskell.
 
   
 
=== <span id="practice"></span>Haskell in Practice: How Haskell Has Been Used in a (Paid) IT Project. ===
 
=== <span id="practice"></span>Haskell in Practice: How Haskell Has Been Used in a (Paid) IT Project. ===
Line 139: Line 137:
   
 
Haskell's record system for algebraic datatypes uses labels as accessors for fields within constructors. Record labels can be used for both selection and modification of individual fields within value, but only selection can be composed in a natural way. The special syntax for updates makes composing modifications very cumbersome. The fclabels package tries to solve this problem by implementing field accessors as first class Haskell values instead of special syntax. Labels are implemented as lenses and can easily be composed for both selection and modification. To avoid boilerplate labels can be derived using Template Haskell. This talk will give a brief introduction into the usage of the library and will show a bit of the inner workings as a bridge to future extensions.
 
Haskell's record system for algebraic datatypes uses labels as accessors for fields within constructors. Record labels can be used for both selection and modification of individual fields within value, but only selection can be composed in a natural way. The special syntax for updates makes composing modifications very cumbersome. The fclabels package tries to solve this problem by implementing field accessors as first class Haskell values instead of special syntax. Labels are implemented as lenses and can easily be composed for both selection and modification. To avoid boilerplate labels can be derived using Template Haskell. This talk will give a brief introduction into the usage of the library and will show a bit of the inner workings as a bridge to future extensions.
  +
 
=== <span id="holes"></span>Holes in GHC ===
  +
 
Thijs Alkemade (UU)
  +
 
This will be a demonstration of work-in-progress on adding holes for type-based debugging with GHC. See the [http://hackage.haskell.org/trac/ghc/wiki/Holes GHC Trac page] for details.

Revision as of 14:35, 30 March 2012


This is the current program for the Dutch HUG Day. It may still change.

Time Title Speaker
9:30 Coffee and Tea
10:00 Welcome Sean Leather, Stef Joosten
10:15 WebSockets Jasper Van der Jeugt
10:45 TBD Erik Hesselink
11:15 Available
11:45 Lightning Talks
DotFS Paul van der Walt, Sjoerd Timmer
Snap and Gruze Kevin Jardine
Case Study Invitation Jurriaan Hage
12:15 Lunch (Provided by Ordina)
13:15 Haskell in Practice Stef Joosten, Martijn Schrage
13:45 fclabels Sebastiaan Visser
14:15 Available
14:45 Lightning Talks
Holes in GHC Thijs Alkemade
Ji Chris Done
15:15 Closing Jurriën Stutterheim
15:30 Depart for UHac

Summaries

Supporting Different Versions of the WebSockets Protocol

Jasper Van der Jeugt (Ghent)

The Haskell websockets library allows you to write WebSocket-enabled servers in Haskell, bidirectional communication with the browser. However, browsers and their related specifications change fast, and there are different versions of the WebSockets protocol. This talk discusses a type-safe technique which disallows the programmer from using primitives not available in the chosen version, while still allowing the latest features.

TBD

Erik Hesselink (Silk)

DotFS - Or How Fred Solved His Config Clutter

Paul van der Walt (UU), Sjoerd Timmer (UU)

Everyone who has more than one account on Linux/Unix/OS X systems knows how hard is can be to keep track of all the different config files in your home directory. .vimrc, .muttrc, .hgrc, .screenrc, .bashrc, and .xinitrc are just a few, but we're sure you can come up with many more yourself. Imagine how wonderful your life could be if you just had an easy tool to keep track of different versions of all these files on all your machines. We argue that traditional version control systems on their own are not up the task and we provide an alternative.

Snap and Gruze

Kevin Jardine

Snap and Gruze. Developing an astronomy application using Snap and an experimental entity-attribute-value store for Haskell.

Invitation to Participate in a Functional Programming Case Study

Jurriaan Hage (UU)

I want to invite you to participate in an experiment in Haskell. In this experiment we are going to pit HaRe (the Haskell Refactorer) against Holmes (my plagiarism detector). The goal is to find out how much time somebody needs to refactor a Haskell program into something that is not recognizable by Holmes as plagiarism. We shall be looking at two groups of study: experienced programmers (we shall pretend they are paid for by newbies to make their assignments for them, and to do so without starting from scratch), and the newbies themselves. This experiment is a collaboration with Simon Thompson of Kent. He will take charge of the newbies, my task is to perform the experiment with experienced Haskell programmers, which is why I am now seeking for participants.

Haskell in Practice: How Haskell Has Been Used in a (Paid) IT Project.

Stef Joosten (Ordina), Martijn Schrage (Oblomov Systems)

This presentation shows how new thinking helps the judiciary to gain control over and to reduce cost in a landscape of many different IT systems that serve the courts of law in the Netherlands.

Although Haskell plays a role outside the limelight, the results have become possible because of a tool, Ampersand, which has been built in Haskell.

The presentation is accompanied by a brief demonstration.

fclabels: First Class Record Labels for Haskell

Sebastiaan Visser (Silk)

Haskell's record system for algebraic datatypes uses labels as accessors for fields within constructors. Record labels can be used for both selection and modification of individual fields within value, but only selection can be composed in a natural way. The special syntax for updates makes composing modifications very cumbersome. The fclabels package tries to solve this problem by implementing field accessors as first class Haskell values instead of special syntax. Labels are implemented as lenses and can easily be composed for both selection and modification. To avoid boilerplate labels can be derived using Template Haskell. This talk will give a brief introduction into the usage of the library and will show a bit of the inner workings as a bridge to future extensions.

Holes in GHC

Thijs Alkemade (UU)

This will be a demonstration of work-in-progress on adding holes for type-based debugging with GHC. See the GHC Trac page for details.