| 2004 | 20 years of industrial functional programming. Ulf T. Wiger |
| 2004 | A nanopass infrastructure for compiler education. Dipanwita Sarkar, Oscar Waddell, R. Kent Dybvig |
| 2004 | A sound (and complete) model of contracts. Matthias Blume, David A. McAllester |
| 2004 | A type-theoretic foundation of continuations and prompts. Zena M. Ariola, Hugo Herbelin, Amr Sabry |
| 2004 | Don't make the wrong mistakes: programming as debugging. Paul Graham |
| 2004 | From process logic to program logic. Kohei Honda |
| 2004 | Functional morphology. Markus Forsberg, Aarne Ranta |
| 2004 | Galois: high assurance software. John Launchbury |
| 2004 | Generics for the masses. Ralf Hinze |
| 2004 | Implementing functional logic languages using multiple threads and stores. Andrew P. Tolmach, Sergio Antoy, Marius Nita |
| 2004 | Improving the static analysis of embedded languages via partial evaluation. David Herman, Philippe Meunier |
| 2004 | Making a fast curry: push/enter vs. eval/apply for higher-order languages. Simon Marlow, Simon L. Peyton Jones |
| 2004 | Monadic regions. Matthew Fluet, J. Gregory Morrisett |
| 2004 | Multi-return function call. Olin Shivers, David Fisher |
| 2004 | Numbering matters: first-order canonical forms for second-order recursive types. Nadji Gauthier, François Pottier |
| 2004 | Proceedings of the Ninth ACM SIGPLAN International Conference on Functional Programming, ICFP 2004, Snow Bird, UT, USA, September 19-21, 2004 Chris Okasaki, Kathleen Fisher |
| 2004 | Regular expression patterns. Niklas Broberg, Andreas Farre, Josef Svenningsson |
| 2004 | Relating models of backtracking. Mitchell Wand, Dale Vaillancourt |
| 2004 | Scrap more boilerplate: reflection, zips, and generalised casts. Ralf Lämmel, Simon L. Peyton Jones |
| 2004 | Searching for deadlocks while debugging concurrent haskell programs. Jan Christiansen, Frank Huch |
| 2004 | Slideshow: functional presentations. Robert Bruce Findler, Matthew Flatt |
| 2004 | The C - compiler infrastructure. Norman Ramsey, Simon L. Peyton Jones |
| 2004 | Translating dependency into parametricity. Stephen Tse, Steve Zdancewic |
| 2004 | Types for path correctness of XML queries. Dario Colazzo, Giorgio Ghelli, Paolo Manghi, Carlo Sartiani |
| 2004 | Types, potency, and idempotency: why nonlinearity and amnesia make a type system work. Peter Møller Neergaard, Harry G. Mairson |
| 2004 | Verification of safety properties for concurrent assembly code. Dachuan Yu, Zhong Shao |