Final programme


Friday, September 23
8.45-9.00 Opening
9.00-10.40 Donald Sannella, Martin Hofmann, David Aspinall, Stephen Gilmore, Ian Stark, Lennart Beringer, Hans-Wolfgang Loidl, Kenneth MacKenzie, Alberto Momigliano and Olha Shkaravska
Mobile Resource Guarantees (evaluation paper)
Malcolm Dowse and Andrew Butterfield
A toolkit for structuring I/O
Tarmo Uustalu and Varmo Vene
Comonadic functional attribute evaluation
Jan van Eijck and Simona Orzan
Modelling the epistemics of communication with functional programming
11.00-12.40 Allan Clark
Nitro foreign data
Marcin Kowalczyk
Asynchronous communication between threads
Martin Elsman
Type-specialized serialization with sharing
Simon Foster
HAIFA: an XML based interoperability solution for Haskell
14.30-16.10 Chris Ryder and Simon Thompson
Measuring Haskell
Tom Shackell and Colin Runciman
Faster production of redex trails: the hat G-machine
Manfred Widera
Data flow coverage for testing Erlang programs
Pieter Koopman and Rinus Plasmeijer
Generic generation of elements of types
16.30-17.45 Frédéric Prost
Sort abstraction for static analyzes of mobile processes
Susumu Katayama
Systematic search for lambda expressions
Morten Rhiger
First-class open and closed code fragments
Saturday, September 24
9.00-10.40 Kevin Hammond, Roy Dyckhoff, Christian Ferdinand, Reinhold Heckmann, Martin Hofmann, Hans-Wolfgang Loidl, Greg Michaelson, Jocelyn Sérot and Andy Wallace
The EmBounded project (project paper)
Hampus Weddig
Fixing the semantics
Kevin Millikin
A new approach to one-pass transformations
Huiqing Li
Formalisation of Haskell refactorings
11.00-12.40 Olha Shkaravska
Amortized heap-space analysis for first-order functional programs (position paper)
Daan Leijen
Extensible records with scoped labels
Neil Mitchell and Colin Runciman
Unfailing Haskell: a static checker for pattern matching
James Chapman, Thorsten Altenkirch and Conor McBride
Epigram reloaded: a standalone typechecker for ETT
14.30-16.10 Isaac Jones
The Haskell cabal: a common architecture for building applications and libraries
Chunxu Liu and Greg Michaelson
The Hume IDE
Nick Oosterhof, Philip Hölzenspies and Jan Kuper
Application patterns
Sharon Curtis and Clare Martin
Functional fractal image compression
16.30-17.45 Tetsuo Yokoyama, Zhenjiang Hu and Masato Takeichi
Calculation rules for warming-up in fusion transformation
Kenichi Asai
Logical relations for call-by-value delimited continuations
Carmen Torrano and Clara Segura
Strictness analysis and let-to-case transformation using Template Haskell
20.00-TFP / ICFP pre-workshops dinner at Le Paris


Monday, September 26
8.45-9.00 Opening
9.00-10.00 Franēois Pottier
From ML type inference to stratified type inference (invited talk)
10.00-10.30 Olin Shivers
The anatomy of a loop: A story of scope and control
11.00-12.30 Peter Sewell, James J. Leifer, Keith Wansbrough, Francesco Zappa Nardelli, Mair Allen-Williams, Pierre Habouzit and Viktor Vafeiadis
Acute: high-level programming language design for distributed computation
Norman Ramsey, Kathleen Fisher and Paul Govereau
An expressive language of signatures
Derek Dreyer
Recursive type generativity
14.30-16.00 Henrik Nilsson
Dynamic optimization for functional reactive programming using generalized algebraic data types
Chiyan Chen and Hongwei Xi
Combining programming with theorem proving
Amal Ahmed, Matthew Fluet and Greg Morrisett
A step-indexed model of substructural state
16.30-18.00 Michael F. Ringenburg and Dan Grossman
AtomCaml: first-class atomicity via rollback
Tachio Terauchi and Alex Aiken
Witnessing side-effects
Thomas Hallgren, Mark P. Jones, Rebekah Leslie and Andrew Tolmach
A principled approach to operating system construction in Haskell
18.00-18.30 Business meeting and PC chair's report
20.00-ICFP reception at the Town Hall
Tuesday, September 27
9.00-10.00 Brendan Eich
JavaScript at ten years (invited talk)
10.00-10.30 Didier Rémy
Exploring partial type inference for predicative fragments of System F
11.00-12.30 Daan Leijen and Andres Löh
Qualified types for MLF
Henning Makholm and Joe B. Wells
Type inference, principal typings, and let-polymorphism for first-class mixin modules
Iavor Diatchki, Mark P. Jones and Rebekah Leslie
High-level views on low-level representations
14.30-16.00 James Cheney
Scrap your nameplate (functional pearl)
Oleg Kiselyov, Chung-chieh Shan, Daniel P. Friedman and Amr Sabry
Backtracking, interleaving, and terminating monad transformers (functional pearl)
Ralf Lämmel and Simon Peyton Jones
Scrap your boilerplate with class: extensible generic functions
16.30-17.30 Greg Pettyjohn, John Clements, Joe Marshall, Shriram Krishnamurthi and Matthias Felleisen
Continuations from generalized stack inspection
J. Guadalupe Ramos, Josep Silva and German Vidal
Fast narrowing-driven partial evaluation for inductively sequential programs
17.30-18.15Programming contest report
20.00-ICFP dinner at Olde Hansa
Wednesday, September 28
9.00-10.00 Robert Harper
Mechanizing the meta-theory of programming languages (invited talk)
10.00-10.30 Manuel M. T. Chakravarty, Gabriele Keller and Simon Peyton Jones
Associated type synonyms
11.00-12.30 Xinyu Feng and Zhong Shao
Modular verification of concurrent assembly code with dynamic thread creation and termination
Edwin Westbrook, Aaron Stump and Ian Wehrman
A language-based approach to functionally correct imperative programming
Martin Berger, Kohei Honda and Nobuko Yoshida
A logical analysis of aliasing in imperative higher-order functions
14.30-16.00 Neil Ghani, Patricia Johann, Tarmo Uustalu and Varmo Vene
Monadic augment and generalised short cut fusion
Daniel S. Dantas, David Walker, Geoffrey Washburn and Stephanie Weirich
PolyAML: a polymorphic aspect-oriented functional programmming language
Hideaki Tatsuzawa, Hidehiko Masuhara and Akinori Yonezawa
Aspectual Caml: an aspect-oriented functional language


Saturday, September 24
9.00-12.30 Ronald Garcia and Andrew Lumsdaine
Type classes without types (45 min)
Sebastian Egner
Eager comprehensions in Scheme: the design of SRFI-42 (45 min)
Jonathan Sobel, Erik Hilsdale, R. Kent Dybvig and Daniel P. Friedman
Abstraction and performance from explicit monadic reflection (1 h)
Jacob Matthews and Robert Bruce Findler
An operational semantics for R5RS Scheme (1 h)
14.30-16.00 Martin Gasbichler and Eric Knauel
Commander S - the shell as a browser
Erick Gallesio and Manuel Serrano
Ubiquitous mails
Jean-Michel Hufflen
Implementing a bibliography processor in Scheme
16.30-18.00 Chongkai Zhu
The Marriage of MrMathematica and MzScheme
Alan Pavicic and Niksa Bosnic
ACT parameterization framework
Florian Loitsch
Javascript to Scheme
18.00-18.30Open session
20.00-TFP / ICFP pre-workshops dinner at Le Paris


Saturday, September 24
No timetable information
9.00-10.30 Session 1
11.00-12.30 Session 2
14.30-16.00 Session 3
16.30-18.00 Session 4
20.00-TFP / ICFP pre-workshops dinner at Le Paris


Sunday, September 25
9.00-9.45 Ulf Wiger
Sourdough and Erlang -- the secret of reuse (invited talk)
9.45-10.30 Jay Nelson
A stream library using Erlang binaries (15 mins)
Per Gustafsson and Konstantinos Sagonas
Bit-level binaries and generalized comprehensions in Erlang
11.00-12.30 Tobias Lindahl and Konstantinos Sagonas
TypEr: a type annotator of Erlang code
Clara Benac Earle, Lars-Åke Fredlund and John Derrick
Verifying fault tolerant Erlang programs
Hans Svensson and Thomas Arts
A new leader election implementation (15 mins)
Thomas Lindgren
Atom garbage collection (15 mins)
14.30-16.00 Simon Aurell
Remote controlling devices using instant messaging
Javier Parķs, Alberto Valderruten and Victor M. Gullias
A high performance Erlang TCP/IP stack
Antonella Di Stefano, Francesca Gangemi and Corrado Santoro
ERESYE: artificial intelligence in Erlang programs
16.30-17.15 Thomas Noll and Chanchal Kumar Roy
Modeling Erlang in the π-calculus
Koen Claessen and Hans Svensson
A semantics for distributed Erlang (15 mins)
17.15-18.00Five-minute madness session
18.00-18.30Discussion, report from the PC, closing comments


Sunday, September 25
9.00-10.30 Opening
Matthias Felleisen
How to design class hierarchies (invited talk)
11.00-12.30 Rudolf Berghammer and Frank Huch
From functional to object-oriented programming: a smooth transition for beginners
Eli Barzilay and John Clements
Laziness without all the hard work: combining lazy and strict languages for teaching
Sharon A. Curtis
Word puzzles in Haskell
14.30-16.00 Jerzy Karczmarczuk
Teaching of image synthesis in functional style
Eijiro Sumii
MinCaml: a simple and efficient compiler for a minimal functional language
Rex Page
Engineering software correctness
16.30-18.00 Tips and tricks session, round table discussion on links between FDPE and CUFP


Thursday, September 29
9.00-10.00 Greg Morrisett
What will the next ML look like? (invited talk)
10.00-10.30 Don Syme
Initalizing mutually referential abstract objects: the value recursion challenge
11.00-12.30 Franēois Pottier
An overview of alphaCaml
Mark R. Shinwell
Fresh O'Caml: nominal abstract syntax for the masses
Guido Tack, Leif Kornstaedt and Gert Smolka
Generic pickling and minimization
14.30-16.00 Norman Ramsey and Joao Dias
An applicative control-flow graph based on Huet´s zipper
Umut A. Acar, Guy Blelloch, Matthias Blume, Robert Harper and Kanat Tangwongsan
A library for self-adjusting computation
Franēois Pottier and Yann Régis-Gianas
Towards efficient, typed LR parsers
16.30-17.45 Norman Ramsey
ML module mania: a type-safe, separately compiled, extensible interpreter
Matthew Fluet and Riccardo Pucella
Practical datatype specializations with phantom types and recursion schemes
Kenny Zhuo Ming Lu and Martin Sulzmann
A type-safe embedding of XDuce into ML
18.00-18.30Open session
20.00-GPCE / ICFP post-workshops reception at the Kadriorg Palace


Thursday, September 29
9.30-10.30 Claudio Ochoa, Josep Silva and Germįn Vidal
Lightweight program specialization via dynamic slicing
Rafael Caballero
A declarative debugger of incorrect answers for constraint functional-logic programs
11.00-12.30 Julio Marińo and Jose Maria Rey
Adding constraints to Curry via flat guards
Sonia Estevez Martin and Rafael del Vado Virseda
Designing an efficient computation strategy in CFLP(FD) using definitional trees
Jesus M. Almendros-Jimenez
Constraint logic programming over sets of spatial objects
14.30-16.00 Michael Hanus
A generic analysis environment for declarative programs
J. Guadalupe Ramos, Josep Silva and Germįn Vidal
An offline partial evaluator for Curry programs
Sebastian Fischer
A functional logic database library
16.30-17.30 Bernd Braßel and Frank Huch
Translating Curry To Haskell
Emilio Gallego and Julio Marińo
An overview of the Sloth2005 Curry system
17.30-18.00 Individual system demonstrations, closing
20.00-GPCE / ICFP post-workshops reception at the Kadriorg Palace


Friday, September 30
9.00-9.30 David Roundy
Lessons from Darcs (invited talk)
9.30-10.30 Krasimir Angelov and Simon Marlow
Visual Haskell - a full-featured Haskell development environment
Martijn M. Schrage, Arjan van IJzendoorn and Linda C. van der Gaag
Haskell ready to Dazzle the real world
11.00-12.30 Don Stewart and Manuel M. T. Chakravarty
Dynamic applications from the ground up
Niklas Broberg
Haskell server pages through dynamic loading
Tim Harris, Simon Marlow, and Simon Peyton Jones
Haskell on a shared-memory multiprocessor
14.30-16.00 Andreas Abel, Marcin Benke, Ana Bove, John Hughes and Ulf Norell
Verifying Haskell programs using constructive type theory
Tim Sheard
Putting Curry-Howard to work
Artem Alimarine, Sjaak Smetsers, Arjen van Weelden, Marko van Eekelen and Rinus Plasmeijer
There and back again - arrows for invertible programming
16.30-17.45 Bruno C. d. S. Oliveira and Jeremy Gibbons
TypeCase: a design pattern for type-indexed functions
Richard S. Bird
Polymorphic pattern matching (functional pearl)
Isaac Jones
Halfs - the Haskell file system (demo, 15 min)
17.45-18.15Discussion on the future of Haskell


Friday, September 30
[9.00-10.00][GPCE invited talk]
10.10-10.30 Kevin Donnelly and Hongwei Xi
Combining higher-order abstract syntax with first-order abstract syntax in ATS
Christian Urban and Michael Norrish
A formal treatment of the Barendregt variable convention in rule inductions
James Cheney
Towards a general theory of names, binding and scope
Marino Miculan, Ivan Scagnetto and Furio Honsell
Translating specifications from nominal logic to CIC with the theory of contexts
14.30-15.30 Frank Pfenning
Towards a type theory of contexts (invited talk)
15.30-16.00 Aleksey Nogin, Alexei Kopylov, Xin Yu and Jason Hickey
A computational approach to reflective meta-reasoning about languages with bindings
16.30-17.30 Miki Tanaka and John Power
A unified category-theoretic formulation of typed binding signatures
Olha Shkaravska
Types with semantics
17.30-18.30 James Cheney, Robert Harper, Randy Pollack, Benjamin Pierce, Steve Zdancewic
Panel discussion: Beyond the POPLmark challenge


Thursday, September 29
8.45-9.00 Opening
9.00-10.00 Oscar Nierstrasz
Object-oriented reengineering patterns (invited talk)
10.00-10.30 Charles Consel, Fabien Latry, Laurent Réveillčre and Pierre Cointe
A generative programming approach to developing DSL compilers
11.00-12.30 Andrew Moss and Henk Muller
Efficient code generation for a domain-specific language
Christophe Alias and Denis Barthou
On domain-specific languages reengineering
Julia L. Lawall, Hervé Duchesne, Gilles Muller and Anne-Franēoise Le Meur
Bossa Nova: introducing modularity into the Bossa domain-specific language
14.30-16.00 Zhen Yao, Qi-long Zheng and Guo-liang Chen
AOP++: a generic aspect-oriented programming framework in C++
Naoyasu Ubayashi, Tetsuo Tamai, Shinji Sano, Yusaku Maeno and Satoshi Murakami
Model compiler construction based on aspect-oriented mechanisms
Sven Apel, Thomas Leich, Marko Rosenmüller and Gunter Saake
FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming
16.30-18.00 Mónica Pinto, Daniel Jiménez and Lidia Fuentes
Developing dynamic and adaptable applications with CAM/DAOP: a virtual office application (demo)
Risto Pohjonen
Metamodeling made easy - MetaEdit+ (demo)
20.00-GPCE / ICFP post-workshops reception at the Kadriorg Palace
Friday, September 30
9.00-10.00 Oege de Moor
The AspectBench compiler for Aspect (invited talk)
10.00-10.30 Pengcheng Wu and Karl Lieberherr
Shadow programming: reasoning about programs using lexical join point information
11.00-12.30 Martin Bravenboer, Rob Vermaas, Jurgen Vinju and Eelco Visser
Generalized type-based disambiguation of meta programs with concrete object syntax
Éric Tanter and Jacques Noyé
A versatile kernel for multi-language AOP
Torben Ęgidius Mogensen
Semi-inversion of guarded equations
14.30-16.00 Saverio Perugini and Naren Ramakrishnan
A generative programming approach to interactive information retrieval: insights and experiences
Baris Aktemur, Joel Jones, Samuel Kamin and Lars Clausen
Optimizing marshalling by run-time program generation
Jun Yang and Stan Jarzabek
Applying a generative technique for enhanced genericity and maintainability on the J2EE platform
16.30-17.30 Jacques Carette and Oleg Kiselyov
Multi-stage programming with functors and monads: eliminating abstraction overhead from generic code
Jason Eckhardt, Roumen Kaiabachev, Emir Pasalic, Kedar Swadi and Walid Taha
Implicitly heterogeneous multi-stage programming
17.30-18.30GPCE business meeting
20.00-GPCE dinner at Senso
Saturday, October 1
9.00-10.00 Bernd Fischer
Certifiable program generation (invited talk)
10.00-10.30 Samuel Kamin, Baris Aktemur and Philip Morton
Source-level optimization of run-time program generators
11.00-12.30 Shan Shan Huang, David Zook and Yannis Smaragdakis
Statically safe program generation with SafeGen
Dirk Draheim, Christof Lutteroth and Gerald Weber
A type system for reflective program generators
Krister Åhlander
Sorting out the relationships between pairs of iterators, values and references
14.30-16.00 Steffen Priebe
Preprocessing Eden with Template Haskell
Ryan Culpepper, Scott Owens and Matthew Flatt
Syntactic abstraction in component interfaces
Daniel Hirschkoff, Tom Hirschowitz, Damien Pous, Alan Schmitt and Jean-Bernard Stefani
Component-oriented programming with sharing: containment is not ownership
16.30-17.30 Jeremy Siek and Andrew Lumsdaine
Language requirements for large-scale generic libraries
Krzysztof Czarnecki and Michal Antkiewicz
Mapping features to models: a template approach based on superimposed variants

GPCE workshop 1: GPCE YRW

Tuesday, September 27
[9.00-10.00] [ICFP invited talk]
10.15-10.30 Opening
11.00-13.00 Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu and Masato Takeichi
IO swapping leads you there and back again
Kostadin Damevski
Generating bridges between heterogeneous component models
Vaidas Giedrimas
Component-based software generation: the structural synthesis approach
14.30-16.00 Petr Panuska
Aspect limits
Stefan Kühne, Maik Thranert and Andreas Speck
Towards a methodology for orchestration and validation of cooperative e-business components
Andrew J. McCarthy
An approach to the design, deployment and autonomic management of component applications
16.30-17.30 Jens Weiland, Ernst Richter
Modeling variability in Matlab/Simulink
Farid Mehr
Generative secure software development: an approach to unify security with software engineering

GPCE workshop 2: MetaOCaml

Wednesday, September 28
[9.00-10.00] [ICFP invited talk]
10.15-10.30 Opening
11.00-12.30 Tim Sheard
Playing with type systems
Ian Lynagh
Typing Template Haskell: soft types
Morten Rhiger
Type soundness for open and closed code fragments
12.30-13.00 Discussion session on types
14.30-15.30 Dmitry Lomov and Andrey Serebryansky
Dynamic Caml: a dynamic code generation library for Objective Caml
Antonio Cisternino and Vincenzo Gervasi
A runtime for multi-stage programming, and meta-programming without quasi-quotation
15.30-16.00 Discussion session on implementation issues
16.30-17.00 Albert Cohen and Christoph Herrmann
Towards a high-productivity and high-performance marshaling library for compound data
17.00-18.00 Open discussion session

GPCE workshop 3: GraMoT

Wednesday, September 28
8.45-9.00 Opening
9.00-10.30 Tom Mens and Pieter Van Gorp
A taxonomy of model transformation (15 min)
Tom Mens, Pieter Van Gorp, Dįniel Varró and Gabor Karsai
Applying a model transformation taxonomy to graph transformation technology (15 min)
Jean Bézivin and Frédéric Jouault
Using ATL for checking models
Hartmut Ehrig, Karsten Ehrig
Overview of formal concepts for model transformations based on typed attributed graph transformation
11.00-12.45 Berthold Hoffmann, Dirk Janssens and Niels Van Eetvelde
Cloning and expanding graph transformation rules for refactoring
Leen Lambers and Fernando Orejas
Efficient detection of conflicts in graph-based model transformation
Karsten Ehrig and Jessica Winkelmann
Model transformation from VisualOCL to OCL using graph transformation (15 min)
F. Javier Pérez Garcia, Miguel A. Laguna, Yania Crespo Gonzįlez-Carvajal and Bruno Gonzįlez-Baixauli
Requirements variability support through MDD and graph transformation (15 min)
Lįszló Lengyel, Tihamér Levendovszky, Gergely Mezei, Bertalan Forstner and Charaf Hassan
Metamodel-based model transformation with aspect-oriented constraints (15 min)
14.30-16.00 Gergely Varró, Katalin Friedl and Dįniel Varró
Adaptive graph pattern matching for model transformations using model-sensitive search plans
Attila Vizhanyo, Sandeep Neema, Feng Shi, Daniel Balasubramanian and Gabor Karsai
Improving the usability of a graph transformation language (15 min)
Audris Kalnins, Edgars Celms and Agris Sostaks
Tool support for MOLA
Karsten Ehrig, Claudia Ermel and Stefan Hänsgen
Towards model transformation in generated Eclipse editor plug-ins (15 min)
16.30-17.00 Tivadar Szemethy
Model transformations for time-triggered languages
17.00-18.00Discussion on graph and model transformations

GPCE tutorial 1

Walid Taha and Cristiano Calcagno
Multi-stage programming in MetaOCaml
Tuesday, September 27
9.00-10.30 Session 1
11.00-12.30 Session 2
14.30-16.00 Session 3
16.30-18.00 Session 4

GPCE tutorial 2

Risto Pohjonen and Juha-Pekka Tolvanen
Implementing domain-specific modelling languages and generators
Wednesday, September 28 (morning)
9.00-10.30 Session 1
11.00-12.30 Session 2


Last update April 30, 2009 12:28 EET by local organizers, icfp05(at) Valid CSS! Valid XHTML 1.0 Strict

© 2005 Institute of Cybernetics at TUT, All Rights Reserved