Personal tools

DHD UHac/DHD Program

From HaskellWiki

< DHD UHac(Difference between revisions)
Jump to: navigation, search
(Update schedule)
(Add links)
Line 15: Line 15:
 
|-
 
|-
 
| 10:15
 
| 10:15
| WebSockets
+
| [[#websockets|WebSockets]]
 
| Jasper Van der Jeugt
 
| Jasper Van der Jeugt
 
|-
 
|-
 
| 10:45
 
| 10:45
| ''TBD''
+
| [[#hesselink|''TBD'']]
 
| Erik Hesselink
 
| Erik Hesselink
 
|-
 
|-
Line 30: Line 30:
 
|-
 
|-
 
|
 
|
| DotFS
+
| [[#dotfs|DotFS]]
 
| Paul van der Walt, Sjoerd Timmer
 
| Paul van der Walt, Sjoerd Timmer
 
|-
 
|-
Line 37: Line 37:
 
|-
 
|-
 
| 13:15
 
| 13:15
| Haskell in Practice
+
| [[#practice|Haskell in Practice]]
 
| Stef Joosten, Martijn Schrage
 
| Stef Joosten, Martijn Schrage
 
|-
 
|-
 
| 13:45
 
| 13:45
| fclabels
+
| [[#fclabels|fclabels]]
 
| Sebastiaan Visser
 
| Sebastiaan Visser
 
|-
 
|-
Line 59: Line 59:
 
== Summaries ==
 
== Summaries ==
  
=== Supporting Different Versions of the WebSockets Protocol ===
+
=== <span id="websockets"></span>Supporting Different Versions of the WebSockets Protocol ===
  
 
Jasper Van der Jeugt
 
Jasper Van der Jeugt
Line 71: Line 71:
 
allowing the latest features.
 
allowing the latest features.
  
=== 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. ===
  
 
Stef Joosten (Ordina), Martijn Schrage (Ordina)
 
Stef Joosten (Ordina), Martijn Schrage (Ordina)
Line 81: Line 81:
 
The presentation is accompanied by a brief demonstration.
 
The presentation is accompanied by a brief demonstration.
  
=== fclabels: First Class Record Labels for Haskell ===
+
=== <span id="fclabels"></span>fclabels: First Class Record Labels for Haskell ===
  
 
Sebastiaan Visser (Silk)
 
Sebastiaan Visser (Silk)
Line 87: Line 87:
 
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.
  
=== ''TBD'' ===
+
=== <span id="hesselink"></span>''TBD'' ===
  
 
Erik Hesselink (Silk)
 
Erik Hesselink (Silk)
  
=== DotFS - Or How Fred Solved His Config Clutter ===
+
=== <span id="dotfs"></span>DotFS - Or How Fred Solved His Config Clutter ===
  
 
Paul van der Walt (UU), Sjoerd Timmer (UU)
 
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. <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.

Revision as of 13:12, 13 March 2012

This is currently a very rough draft of the Dutch HUG Day program.

Time Title Speaker or Note
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 More Talks
11:45 Lightning Talks
DotFS Paul van der Walt, Sjoerd Timmer
12:15 Lunch (Provided by Ordina)
13:15 Haskell in Practice Stef Joosten, Martijn Schrage
13:45 fclabels Sebastiaan Visser
14:15 More Talks
15:15 Closing Jurriën Stutterheim (UU)
15:30 Depart for UHac

Contents

1 Summaries

1.1 Supporting Different Versions of the WebSockets Protocol

Jasper Van der Jeugt

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.

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

Stef Joosten (Ordina), Martijn Schrage (Ordina)

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.

1.3 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.

1.4 TBD

Erik Hesselink (Silk)

1.5 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.