ICFP 2021
Sun 22 - Sat 28 August 2021
Fri 27 Aug 2021 20:30 - 21:00 at Scheme - Session A

The program design recipe [Felleisen et al. 2018] is a sequence of steps for systematically designing functions. The recipe steps can be divided into design steps (e.g., data definition and input-output examples, template) and coding steps. These help the programmer avoid mistakes and develop good programming habits.

One challenge with the design recipe is that the programmer may skip the design steps and directly start coding. This is due to the fact that the outcome of certain steps (e.g., purpose statement) is written as informal, natural language comments. Such outcomes might appear unimportant, and for beginners, it could be hard to produce proper outcomes. However, without these outcomes, the programmer would not be able to take the full advantage of the design recipe.

As a solution to this challenge, we propose a programming environment with full support for the design recipe. The key idea is that we provide Scratch-style blocks for the design steps. These blocks would encourage the programmer to go through all necessary steps, and would serve as a guide for each intermediate step. In this talk, we present the design of our environment and discuss the plans for implementation.

Fri 27 Aug

Displayed time zone: Seoul change

20:00 - 21:30
Session AScheme at Scheme
Is Space-Efficient Polymorphic Gradual Typing Possible?
Shota Ozaki , Taro Sekiyama National Institute of Informatics, Atsushi Igarashi Kyoto University, Japan
Design with Blocks, Code in Text (Lightning Talk)
Junya Nose Tokyo Institute of Technology, Youyou Cong Tokyo Institute of Technology, Hidehiko Masuhara Tokyo Institute of Technology
GRASP: A GRAphical Scheme Programming environment (Lightning Talk)