CW2011 Tutorial Session

Sep. 23, 2011 (Metting time: 18:30pm-18:55pm) at IIJ Meeting room in the Jinbocho-Mitsui Building.

[New!] Information about necessary software and tutorial material is available. Please check the page !


Title: Introduction to programming with shift and reset
Speakers: Kenichi Asai and Oleg Kiselyov

The concept of continuations arises naturally in programming: a conditional branch selects a continuation from the two possible futures; raising an exception discards a part of the continuation; a tail-call or “goto” continues with the continuation. Although continuations are implicitly manipulated in every language, manipulating them explicitly as first-class objects is rarely used because of the perceived difficulty.

This tutorial aims to give a gentle introduction to continuations and a taste of programming with first-class delimited continuations using the control operators shift and reset. Assuming no prior knowledge on continuations, the tutorial helps participants write simple co-routines and non-deterministic searches. The tutorial should make it easier to understand and appreciate the talks at CW 2011.

We assume basic familiarity with functional programming languages, such as OCaml, Standard ML, and Scheme. No prior knowledge of continuations is needed. Participants are encouraged to bring their laptops and program along.

The software to be used in the tutorial will be announced from this page. Participants are encouraged to install it to their laptops beforehand.

Place and Time

Place: Jinbocho-Mitsui Building (You will find Jinbocho Mitsui Building as well as the label "Hitotsubashi". The conference hall of ICFP is located "on" the first few letters of this label. The two buildings are very close; only a few blocks.)
Tutorial Hours: 19:00pm-21:00pm, Friday Sep. 23rd, 2011.
Important: Please come to the 1st floor of the building between 18:30pm and 18:55pm. Delay is NOT allowed. The building has several entrances and the precise meeting place is in front of an antic piano. (If you are not certain about the meeting place, please come to the ICFP conference hall (2nd floor) by 18:20pm. Then we can go to the bldg. together.)

Dinner is not served in the tutorial session, but you can bring foods/drinks into the tutorial room.

Registration and Local Information

No registration fee is needed, however, those who want to participate in the tutorial should register by either one of the following ways:

Software and course material

Information about necessary software is written here.

Participants are encouraged to install the software before the tutorial.


Inquiry about tutorial should be sent to: cw2011-tutorial (at) logic.cs.tsukuba.ac.jp (replace "(at)" by "@".)

Organizers: Yukiyoshi Kameyama, Oleg Kiselyov and Chung-chieh Shan.