From tfpie
Jump to navigation Jump to search

The 5th International Workshop on Trends in Functional Programming in Education, TFPIE 2016, will be held on June 7, 2016 at the University of Maryland College Park in the USA. It is co-located with the Symposium on Trends in Functional Programming (TFP 2016) which takes place from June 8 - 10.

The proceedings are available in EPTCS 230.


The goal of TFPIE is to gather researchers, teachers and professionals that use, or are interested in the use of, functional programming in education. TFPIE aims to be a venue where novel ideas, classroom-tested ideas and work-in-progress on the use of functional programming in education are discussed. The one-day workshop will foster a spirit of open discussion by having a review process for publication after the workshop. The program chair of TFPIE 2016 will screen submissions to ensure that all presentations are within scope and are of interest to participants. Potential presenters are invited to submit an extended abstract (4-6 pages) or a draft paper (up to 16 pages) in EPTCS style. The authors of accepted presentations will have their preprints and their slides made available on the workshop's website/wiki. Visitors to the TFPIE 2016 website/wiki will be able to add comments. This includes presenters who may respond to comments and questions as well as provide pointers to improvements and follow-up work. After the workshop, presenters will be invited to submit (a revised version of) their article for review. The PC will select the best articles for publication in the journal Electronic Proceedings in Theoretical Computer Science (EPTCS). Articles rejected for presentation and extended abstracts will not be formally reviewed by the PC. TFPIE workshops have previously been held in St Andrews, Scotland (2012), Provo Utah, USA (2013), Soesterberg, The Netherlands (2014), and Sophia-Antipolis, France (2015).


08:45 - 09:00 Welcome
09:00 - 10:00 Invited Talk: Matthias Felleisen
              Developing Developers
10:00 - 10:30 Break
10:30 - 11:10 Scott Walck
              Learn Quantum Mechanics with Haskell (slides) (draft)
11:10 - 11:50 Elena Machkasova, Henry Fellows, Thomas Hagen and Sean Stockholm
              Usability of beginner-oriented Clojure error messages (slides)
11:50 - 12:30 Victor Winter, Betty Love and Cindy Corritore
              The Bricklayer Ecosystem - Art, Math, and Code (slides) (draft)
12:30 - 14:00 Lunch
14:00 - 14:40 Panel Discussion
              What _doesn't_ work in FP? What _unexpectedly_ works?
14:40 - 15:20 Prabhakar Ragde
              Proust: A Nano Proof Assistant (slides) (draft)
15:20 - 15:50 Break
15:50 - 16:30 Youyou Cong and Akiko Mito
              A half-day class in OCaml for non-CS major students
16:30 - 17:10 Tim Steenvoorden, Jurriën Stutterheim, Erik Barendsen and Rinus Plasmeijer
              Monad Education Supported by Visualisations (slides)

Invited Talk Abstract

Developing Developers

Matthias Felleisen

NU PRL, Boston, Mass.

Ninety percent of our undergraduates enter the job market as developers of software, and it is our moral obligation to prepare them for this phase of their career as well as possible. At the same time, we must teach in such a way that everyone with some basic understanding of algebra can pick up the necessary skills.

At Northeastern, I have created an undergraduate introductory programming curriculum with this goal in mind (the first four to six semesters). Starting with the first semester, courses focus on explicit and systematic approaches to program design. To accommodate the full range of freshmen, the first course uses a simple teaching language that is tailored to this goal. Follow-up courses explain how the explicit design principles apply to industrial programming languages, how they enable logical reasoning about code, and why they matter when programmers deal with large and complex software.

In parallel, these introductory courses insist on presenting programming as a communicative discipline. Students find out that people write programs to inform other people of ideas. Working with compilers and interpreters also teaches them that these tools provide only shallow feedback. For true insight, they must turn to other people. Hence, the freshman course introduces pair programming so that students learn to articulate their thoughts. Downstream courses teach students how to present their ideas to large groups and how to listen/evaluate such presentations.

Submission Guidelines

TFPIE 2016 welcomes submissions describing techniques used in the classroom, tools used in and/or developed for the classroom and any creative use of functional programming (FP) to aid education in or outside Computer Science. Topics of interest include, but are not limited to:

  FP and beginning CS students
  FP and Computational Thinking
  FP and Artificial Intelligence
  FP in Robotics
  FP and Music 
  Advanced FP for undergraduates
  FP in graduate education
  Engaging students in research using FP
  FP in Programming Languages
  FP in the high school curriculum
  FP as a stepping stone to other CS topics
  FP and Philosophy
  Best Lectures

In addition to papers, we are requesting “best lecture” presentations. What’s your best lecture topic in an FP related course? Do you have a fun way to present FP concepts to novices or perhaps an especially interesting presentation of a difficult topic? In either case, please consider sharing it. Best lecture topics will be selected for presentation based on a short abstract describing the lecture and its interest to TFPIE attendees.

Papers and abstracts can be submitted via easychair at the following link:

It is expected at at least one author for each submitted paper will attend the workshop.

Registration & Local Information

Please see the TFP site for registration and local information:

Important Dates

    April 27, 2016: Submission deadline for draft TFPIE papers and abstracts
      May  3, 2016: Notification of acceptance for presentation
      May 13, 2016: Registration for TFP/TFPIE closes
     June  7, 2016: Presentations in Maryland, USA
     July  7, 2016: Full papers for EPTCS proceedings due. 
September  1, 2016: Notification of acceptance for proceedings 
September 22, 2016: Camera ready copy due for EPTCS

Submission of an abstract implies no obligation to submit a full version; abstracts with no corresponding full versions by the full paper deadline will be considered as withdrawn.

Program Committee

  Stephen Chang    at Northeastern University            in Massachusetts, USA
     Marc Feeley   at Université de Montréal             in Québec, Canada
 Patricia Johann   at Appalachian State University       in North Carolina, USA
      Jay McCarthy at University of Massachusetts Lowell in Massachusetts, USA (Chair)
Prabhakar Ragde    at University of Waterloo             in Ontario, Canada
    Brent Yorgey   at Hendrix College                    in Arkansas, USA