Course Schedule

USCS2011

General information

The course starts on Monday, August 15 with the registration and the welcome lunch and ends on Friday, August 26 with the farewell lunch.

The normal day schedule is:

Time Activity
09:00 - 11:00 lecture
11:00 - 12:30 computer lab
14:00 - 16:00 lecture
16:00 - 17:30 computer lab

There are coffee breaks at 09:45 and 14:45.

Outside of these times, you will be free to plan your own time. It will probably be possible to use the computers each day until around 20:00. Note that sometimes, the course assignments may require you to spend more time than just the allocated hours for the computer lab.

For some of the lectures, we will split the group into beginners (A) and advanced students (B). Assignment to the groups will be discussed during the computer lab intro on Monday afternoon. There are also lectures that are intended for all participants (C).

During the computer labs, you will be working in small groups on assignments and projects, and supervisors will be around at all times for questions and assistance.

During the weekend, there will be no lectures, and the buildings will most likely be closed.

We are planning to organize at least one common dinner for all the participants. The day(s) have not yet been decided. As soon as they have, we will announce them.

Detailed schedule

The schedule can still be adapted. Check regularly for updates.

Day Time BBL-023 BBL-075 BBL-103
BBL-106
elsewhere
Monday 15 10:30 - 11:30 registration      
  11:30 - 12:30 Introduction and organizational matters
(everyone)
     
  12:30 - 14:00       welcome lunch
(Minnaert restaurant)
  14:00 - 16:00 B1 - Lambda calculus
(Andres Löh)
A1 - Haskell intro
(Doaitse Swierstra)
   
  16:00 - 17:30     Computer Lab? Haskell Tutor
 
           
Tuesday 16 09:00 - 11:00 B2 - Typed Lambda Calculus
(Andres Löh)
A2 - Data Structures
(Doaitse Swierstra)
   
  11:00 - 12:30     Pedro, Andres, Atze, Jan
 
  14:00 - 16:00 C1 - Testing with QuickCheck, demo examples
(Atze Dijkstra)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze
 
  18:00 - ~21:00       pancakes in Theehuis Rhijnauwen
           
Wednesday 17 09:00 - 11:00 B3 - Generic programming
(Andres Löh)
A3 - Class System
(Atze Dijkstra)
   
  11:00 - 12:30     Alex, Wouter, Pedro
 
  14:00 - 16:00 C2 - Monads
(Andres Löh)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze
 
           
Thursday 18 09:00 - 11:00 B4 - Monad transformers
(Andres Löh)
A4 - IO
(Doaitse Swierstra)
   
  11:00 - 12:30     Alex, Sean, Pedro
 
  14:00 - 16:00 C3 - Lazy Evaluation
(Doaitse Swierstra)
     
  16:00 - 17:00     Jurrien, Ruud, Jan, Atze
 
  17:00 -       reception
(Minnaert restaurant)
           
Friday 19 09:00 - 11:00 C4 - Data structures
(Atze Dijkstra)
     
  11:00 - 12:30     Alex, Wouter, Pedro
 
  14:00 - 16:00 C5 - Haskell Programming Practices
(Andres Löh)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze
 
           
Monday 22 09:00 - 11:00 C6 - Finger Trees, paper Hinze & Paterson
(Atze Dijkstra)
     
  11:00 - 12:30     Alex, Wouter, Jan
 
  14:00 - 16:00 C7 - Concurrency and Parallelism
(Andres Löh)
     
  16:00 - 17:30     Jurrien, Ruud, Pedro, Atze
 
           
Tuesday 23 09:00 - 11:00 C7 - Concurrency and Parallelism
(Andres Löh)
     
  11:00 - 12:30     Alex, Wouter, Pedro  
  14:00 - 16:00 C8 - Generalised Algebraic Data Types
(Andres Löh)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze  
           
Wednesday 24 09:00 - 11:00 G1 - Dependently Typed Programming
(Wouter Swierstra) Coq demo Agda demo
     
  11:00 - 12:30     Alex, Wouter, Pedro  
  14:00 - 16:00 C9 - Web Programming
(Jurriën Stutterheim)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze  
  19:00 - ~21:00       joint pizza dinner
           
Thursday 25 09:00 - 11:00 C10 - DSL's: Parser Combinators
(Doaitse Swierstra)
     
  11:00 - 12:30     Alex, Wouter, Pedro  
  14:00 - 16:00 C11 - Attribute Grammars, example
(Atze Dijkstra)
     
  16:00 - 17:30     Jurrien, Ruud, Jan, Atze  
           
Friday 26 09:00 - 10:15 G2 - Functional Modelling of Musical Harmony
(José Pedro Magalhães)
     
  10:30 - 11:45 G3 - Shortcut Fusion in Haskell
(Tom Harper)
     
  12:00 - 12:30 Closing and certificates      
  12:30 - 14:00       farewell lunch
(Minnaert restaurant)

Topic attachments
I Attachment Action Size Date Who Comment
pdfpdf 0-Intro-final.pdf manage 349.7 K 15 Aug 2011 - 08:00 DoaitseSwierstra  
pdfpdf A1-QuickStart-final.pdf manage 683.0 K 16 Aug 2011 - 08:01 DoaitseSwierstra  
pdfpdf A2-DataStructures-final.pdf manage 647.0 K 15 Aug 2011 - 21:06 DoaitseSwierstra  
pdfpdf A3-ClassesAndInstances-final.pdf manage 795.1 K 17 Aug 2011 - 06:09 AtzeDijkstra  
pdfpdf A4-IO.pdf manage 442.6 K 18 Aug 2011 - 09:00 DoaitseSwierstra  
pdfpdf B1-LambdaCalculus-final.pdf manage 204.2 K 15 Aug 2011 - 15:13 AndresLoeh  
pdfpdf B2-TypedLambdaCalculus-final.pdf manage 180.7 K 16 Aug 2011 - 06:01 AndresLoeh  
pdfpdf B3-GenericProgramming-final.pdf manage 198.8 K 17 Aug 2011 - 07:53 AndresLoeh  
pdfpdf B4-MonadTransformers-final.pdf manage 187.3 K 19 Aug 2011 - 11:53 AndresLoeh  
pdfpdf C1-Testing-final.pdf manage 664.7 K 16 Aug 2011 - 09:40 AtzeDijkstra  
pdfpdf C10-ParserCombinators-final.pdf manage 483.7 K 29 Aug 2011 - 11:32 DoaitseSwierstra  
pdfpdf C11-AG-final.pdf manage 907.4 K 25 Aug 2011 - 08:02 AtzeDijkstra  
pdfpdf C2-Monads-final.pdf manage 213.7 K 17 Aug 2011 - 11:09 AndresLoeh  
pdfpdf C3-LazyEvaluation.pdf manage 727.0 K 18 Aug 2011 - 12:54 DoaitseSwierstra  
pdfpdf C4-DataStructures-final.pdf manage 1076.6 K 19 Aug 2011 - 06:25 AtzeDijkstra  
pdfpdf C5-ProgrammingPractices-final.pdf manage 160.6 K 19 Aug 2011 - 11:54 AndresLoeh  
pdfpdf C6-FingerTrees-final.pdf manage 730.3 K 22 Aug 2011 - 06:28 AtzeDijkstra  
pdfpdf C7-Concurrency-final.pdf manage 311.8 K 23 Aug 2011 - 11:36 AndresLoeh  
pdfpdf C8-GADT-final.pdf manage 174.3 K 23 Aug 2011 - 20:38 AndresLoeh  
pdfpdf C9-WebProgramming-final.pdf manage 382.5 K 24 Aug 2011 - 15:27 JurrienStutterheim  
pdfpdf DTP.pdf manage 480.8 K 24 Aug 2011 - 09:40 WouterSwierstra Dependently typed programming slides
pdfpdf FusionSlidesTomHarper.pdf manage 447.6 K 09 Sep 2011 - 10:33 DoaitseSwierstra  
elsehs QC.hs manage 1.3 K 16 Aug 2011 - 14:24 AtzeDijkstra QuickCheck? demo examples
elseagda demo.agda manage 0.8 K 24 Aug 2011 - 09:41 WouterSwierstra Agda demo
elsev demo.v manage 0.8 K 24 Aug 2011 - 09:41 WouterSwierstra Coq demo