This experimental course will showcase new programming language
features and analyses. The goal is to bring you up-to-date on
advanced tools that are available, as well as helping you learn how
to read and present research papers in this area.
This class will be structured as follows: each week we'll hear
presentations on a paper from a student, before the
class every student will turn in a review of the paper,
after the class every student will turn in a review
of presenter. If a paper is particularly confusing, I'll
take the next day to go over some of the necessary theory. The best
presentations will demo the language feature or tool.
These should contain a summary of the paper (5 sentences-ish), a
summary of the primary contributions (3 sentences-ish), a discussion
of strengths (3) and weaknesses (3), and a description of unaddressed
challenges (3 sentences.)
Review the presenter's (1) coverage, (2) clarity, (3) style, (4)
insight, and (5) grasp.
Look for papers at the following locations:
Here are some suggestions:
- Scheme 2002 Wick, Flatt, and Hsieh.
Reachability-based Memory Accounting
- ICFP 2002 Flatt.
Composable and Compilable Macros: You Want it When?
- ECOOP 2004 Findler, Flatt, and Felleisen.
Semantic Casts: Contracts and Structural Subtyping in a Nominal World
- RTA 2004 Matthews, Findler, Flatt, and Felleisen.
A Visual Environment for Developing Context-Sensitive Term Rewriting Systems
- PLDI 2004 Flatt and Findler.
Kill-Safe Synchronization Abstractions
- ICFP 2004 Findler and Flatt.
Slideshow: Functional Presentations
- Scheme 2004 Owens, Flatt, Shivers, and McMullan.
Lexer and Parser Generators in Scheme
- Scheme 2004 Gray and Flatt.
Compiling Java to PLT Scheme
- OOPSLA 2004 Goldberg, Findler, and Flatt.
Super and Inner — Together at Last!
- ISMM 2004 Wick and Flatt.
Memory Accounting without Partitions
- GPCE 2005 Culpepper, Owens, and Flatt.
Syntactic Abstraction in Component Interfaces
- ICFP 2007 Flatt, Yu, Finlder and Felleisen.
Adding Delimited and Composable Control to a Production Programming Environment
(Science of Computer Programming 1991)
On the Expressive Power of Programming Language
- PLDI 93 : Flanagan, Sabry, Duba and Felleisen
The Essence of Compiling with Continuations
- Wright and Felleisen
(Information and Computation 1994)
A Syntactic Approach to Type Soundness
- FPCA 95 : Morrisett, Felleisen and Harper
Abstract Models of Memory Management
- PLDI 97 : Flanagan and Felleisen
Componential Set-Based Analysis
- POPL 98 : Flatt, Krishnamurthi, and Felleisen
Classes and Mixins
- ICFP 98 : Findler and Flatt
Modular Object-Oriented Programming with Units and Mixins
- ICFP 99 : Flatt, Findler, Krishnamurthi and Felleisen
Programming Languages as Operating Systems (or, Revenge of the Son of the Lisp Machine)
- Flanagan and Felleisen
(Journal of Functional Programming)
The Semantics of Future and an Application
- ESOP 2001 : Clements, Flatt, Felleisen
Modeling an Algebraic Stepper
- ICFP 2002 : Findler, Felleisen
Contracts for Higher-order Functions
- FDPE 2002 : Felleisen, Findler, Flatt, Krishnamurthi
The Structure and Interpretation of the Computer Science Curriculum
- ESOP 2003 : Clements, Felleisen
A Tail-Recursive Semantics for Stack Inspections
- Scheme and Functional Programming 2004 : Meunier and Silva
From Python to PLT Scheme
- Matthews, Findler, Graunke, Krishnamurthi, Felleisen
(Journal of Automated Software Engineering)
Automatically Restructuring Software for the Web
- ICSE 2004 : Antoniu, Steckler, Krishnamurthi, Neuwirth, Felleisen
Validating the Unit Correctness of Spreadsheet Programs
- Scheme 2004 and Functional Programming : Barzilay, Orlovsky
Foreign Interface for PLT Scheme
- FDPE 2005 : Barzilay and Clements
Laziness Without All the Hard Work
- ICFP 2005 : Pettyjohn, Clements, Marshall, Krishnamurthi, Felleisen
Continuations from Generalized Stack Inspection
- POPL 2006 : Meunier, Findler, Felleisen
Modular Set-Based Analysis from Contracts
- Scheme 2006 and Functional Programming : Culpepper, Felleisen
A Stepper for Scheme Macros
- Krishnamurthi, Hopkins, McCarthy, Graunke, Pettyjohn , Felleisen
(Journal of Higher-Order and Symbolic Computing)
Implementation and Use of the PLT Scheme Web Server
- POPL 2008 : Tobin-Hochstadt, Felleisen
The Design and Implementation of Typed Scheme
- Relationally-Parametric Polymorphic Contracts
Guha, Matthews, Findler, Krishnamurthi
Dynamic Languages Symposium (DLS) 29-40 2007
- Lazy Contract Checking for Immutable Data Structures
Findler, Guo, and Rogers
International Symposium on Implementation and Application of Functional Languages (IFL) 2007
- A Rewriting Semantics for Type Inference
Kuan, MacQueen, Findler
European Symposium on Programming (ESOP) 426-440 2007