The symposium on Trends in Functional Programming (TFP) is an international forum for researchers with interests in all aspects of functional programming, taking a broad view of current and future trends in the area. It aspires to be a lively environment for presenting the latest research results, and other contributions. See the call for papers for more details.
This year, the event is taking place in-person at Seton Hall. It will be a 4-day event, with TFPiE taking place Jan 9, followed by TFP on Jan 10 - Jan 12.
TFP offers a friendly and constructive reviewing process designed to help less experienced authors succeed, with an opportunity for two rounds of review, both before and after the symposium itself. Authors thus have an opportunity to address reviewers’ concerns before the final decision on publication in the Proceedings is taken, in the light of previous reviews and discussions at the symposium.
TFP offers two “best paper” awards, the John McCarthy award for best paper, and the David Turner award for best student paper.
Register in advance using the following link:
Jeremy Gibbons, Oxford University
Turner, Bird, Eratosthenes: The Eternal Burning Thread
The late David Turner had great taste in language design and programming; the design decisions he made in his languages SASL, KRC, and Miranda over the last 50 years are still influential now. One example program that he introduced to illustrate lazy evaluation and list comprehensions in SASL is a one-line recursive “sieve” to generate the infinite list of prime numbers.
Turner called this algorithm The Sieve of Eratosthenes. In a lovely paper “The Genuine Sieve of Eratosthenes” (JFP, 2009), Melissa O’Neill argued that Turner’s algorithm is not faithful to Eratosthenes, and gave a detailed presentation using priority queues of the real thing. She included a variation by Richard Bird, that uses only lists but makes clever use of circular programming. Bird describes his circular program again in his textbook “Thinking Functionally with Haskell”, and sets its proof of correctness as an exercise. Unfortunately, his hint for a solution is incorrect. So what should a proof look like?
One of the last projects Turner worked on was the notion of “Total Functional Programming” (eg J.UCS, 2004), “designed to exclude the possibility of non-termination”. He observed that most programs are already structurally recursive or corecursive, therefore guaranteed terminating or productive respectively, and conjectured that “with more practice we will find this is always true”. Much as I find this idea appealing, I think we are still some way off, even after 20 years of “more practice”. I will discuss Bird’s circular Sieve of Eratosthenes as a challenge problem for Turner’s Total FP.
Benjamin Pierce, University of Pennsylvania
Types for Streams
Delta is a new functional core calculus that compiles to reactive state machines. Programs in Delta are written in an idiomatic functional style, conceptually transforming entire streams of inputs at once, but are executed event-by-event fashion. Delta uses a novel “ordered” substructural type system to enforce critical guarantees, ensuring that the programs are monotone — they never “retract” a previous output — and deterministic, even in the presence of parallel inputs. I’ll discuss the design of Delta’s type system, how it guarantees the above properties, and how it might apply to building real distributed stream processing systems.
Delta is joint work with Joseph Cutler and others at Penn and UC Davis.
John Reppy, University of Chicago
The Implementation of Functional Programming Languages
Functional programming has grown significantly in its adoption and impact over the past decades. To support this broader adoption of functional languages, we need performant compilers and runtime systems. In this talk, I will discuss aspects of compilers for functional languages with a particular focus on the design of intermediate representations.
|Submission deadline: pre-symposium, full papers
|Saturday 4 November, 2023 (AOE)
|Submission deadline: pre-symposium, draft papers
Friday 8 December, 2023 (AOE)
|Notification: pre-symposium full papers
|Friday 8 December, 2023
|Notification: pre-symposium draft papers
Thursday 14 December, 2023
|Friday 5 January, 2024
|Tuesday 9 January 2024
|Wednesday 10 - Friday 12 January, 2024
|Submission deadline: post-symposium review
|Friday 23 February, 2024 (AOE)
|Notification: post-symposium submissions
|Friday 5 April, 2024
|Camera-ready: post-symposium submissions
|Friday 3 May, 2024 (AOE)
|Seton Hall University, USA
|University of Massachusetts Boston, USA
|Seton Hall University, USA
|Radboud University Nijmegen, Netherlands
|University of Wrocław, Poland
|University of Kent, UK
|University of Oxford, UK
|RPTU Kaiserslautern-Landau, Germany
|Technion Israel Institute of Technology, Israel
|University of Bristol, UK
|Hsiang-Shang ‘Josh’ Ko
|Institute of Information Science, Academia Sinica, Taiwan
|Portland State University, USA
|Kyoto University, Japan
|Australian National University, Australia
|KU Leuven, Belgium
|Charles University, Czech Republic
|ITU Copenhagen, Denmark
|IIT Madras, India and Tarides
|University of Kent, UK and Eötvös Loránd University, Hungary
|Juliana Kaizer Vizzotto
|Universidade Federal de Santa Maria, Brazil
|Hendrix College, USA
Call for Papers
The call for papers is here.
Past TFP conferences:     [Others]