|
RAP and PLT Seminars Course #: COMP 617 (Monday and Wednesday) and 610 (Friday) |
|
While high-level programming languages can be very helpful for general-purpose programming, they can be unsuitable for programming systems that interact directly with the physical world. Such systems include real-time and embedded systems. This seminar explores the design space for high-level languages that can support the more specialized task of resource-aware programming (RAP) in the context of a physical environment, and embedded system, or in a hostile environment.
|
# |
Date |
Day |
Paper |
Presentor |
Reading group Paper | |
| 1 | 8/23 | M | organizational meeting | |||
| 2 | 8/25 | W | organizational meeting | |||
| 3 | 8/27 | F | Types for safe locking | |||
| 4 | 8/30 | M | RAP Languages Intro | Walid | ||
| 5 | 9/1 | W | RAP Languages Intro | Walid | ||
| 6 | 9/3 | F | Types for safe locking | |||
| 9/6 | M | labor day - no classes | ||||
| 7 | 9/8 | W | Advanced Language Techniques for Device Drivers (NI Work) | Roumen | ||
| 8 | 9/10 | F | Types for safe locking | |||
| 9 | 9/13 | M | Advanced Languages Techniques for Device Drivers | Kedar | ||
| 10 | 9/15 | W | Advanced Language Techniques for Device Driver | Kedar | ||
| 11 | 9/17 | F | Types for safe locking | |||
| 12 | 9/20 | M | Advanced Language Techniques for Device Drivers | Kedar | ||
| 13 | 9/22 | W | The Essence of Functional Programming | |||
| 14 | 9/24 | F | Generating Verified Combinatorial Circuits | Walid | ||
| 15 | 9/27 | M | ||||
| 16 | 9/29 | W | ||||
| 17 | 10/1 | F | ||||
| 18 | 10/4 | M | Advanced Language Techniques for Device Drivers (NI work) | Roumen | ||
| 19 | 10/6 | W | Scrape Your Boilerplate: A Practical Design Pattern for Generic Programming | Anthony | ||
| 20 | 10/8 | F | Walid | Static Type Inference for Specialization in a Telescoping Compiler | ||
| 21 | 10/11 | M | midterm recess - no classes | |||
| 22 | 10/13 | W | Walid | Static Type Inference for Specialization in a Telescoping Compiler | ||
| 23 | 10/15 | F | Types for safe locking | |||
| 24 | 10/18 | M | Resource Usage Analysis | Seth | ||
| 25 | 10/20 | W | Dynamic Code Generation with Type-Safe Parameter Passing in C++ | Dr. Olev Beckmann | ||
| 26 | 10/22 | F | Types for safe locking | |||
| 27 | 10/25 | M | ||||
| 28 | 10/27 | W | ||||
| 29 | 10/29 | F | ||||
| 30 | 11/1 | M |
|
Moez | Types for safe locking | |
| 31 | 11/3 | W |
Reading group @ 11AM | Michael @ 10 |
||
| 32 | 11/5 | F | Resource Bound Certification |
Reading Group @ 10AM Seth @ 11AM |
||
| 33 | 11/8 | M | Types for Atomicity | Anthony | ||
| 34 | 11/10 | W | Types for Atomicity @ 10AM Hume: a domain-specific language for real-time embedded systems |
Anthony @ 10 AM Kevin Hammond @ 11 AM |
||
| 35 | 11/12 | F | Scala Hume: a domain-specific language for real-time embedded systems |
Moez @ 10AM Kevin Hammond @ 11AM |
||
| 36 | 11/15 | M | Types for Atomicity | Anthony | ||
| 37 | 11/17 | W | Time Regions and Effects for Resource Usage Analysis | Seth | ||
| 38 | 11/19 | F | Type Assignment Program Transformations for Re-Engineering C++ Components |
Moez @ 10AM Dr. Ira Baxter @ 11AM |
||
| 39 | 11/22 | M | Real-Time Specification for Java @ 10AM Type-Safe Multithreading in Cyclone @ 11AM |
Michael @ 10 Anthony @ 11AM |
||
| 40 | 11/24 | W | Staged Notational Definitions @ 10AM Real-Time Specification for Java @ 11AM |
Moez @ 10A Michael @ 11AM |
||
| 41 | 11/26 | F | Thanksgiving recess - no classes | |||
| 42 | 11/29 | M | ||||
| 43 | 12/1 | W | ||||
| 44 | 12/3 | F | ||||
Real-Time Systems and Programming Languages
The Logical Approach to Stack Typing
Functional In-place Update with Layered Datatype Sharing
Type structure for low-level languages
From system F to typed assembly langauge
Real-time garbage collection (Appel)
An Effective Theory of Type Refinements
Type Assignment for Intersections and Unions in Call-by-Value Language
Functional Programming for Real Applications (Invited Paper). ES'01.
A Gentle Introduction to Multi-stage Programming. DSPG'04.
DSL Implementation in MetaOCaml, Template Haskell, and C++. DSPG'04.
A Methodology for Generating Verified Combinatorial Circuits. EMSOFT'04.
Generating Heap-Bounded Programs in a Functional Setting. EMSOFT'03.
Implementing Multi-stage Languages using ASTs, gensym, and reflection. GPCE'03.
Environment Classifiers. POPL'03.
ML-like Inference for Classifiers. ESOP'04.
Tagless Staged Interpreters for Typed Languages. ICFP'02.
Macros as Multi-Stage Computations. ICFP'01.
Staged Notational Definitions. GPCE'2003.
Sound Reductions for Untyped CBN MetaML. PEPM'00
LLVA: A low-level virtual instruction set architecture
A Statically allocated parallel functional language
Eliminating stack overflow by abstract interpretation Software Performance
Optimization Reading Group - Imperial College Programming
Languages Reading Group - Macquarie University Programming
Languages Seminar - Johns Hopkins University Literature on
Programming Languages - Aaron Keen, CS Dept, California Polytechnic State
University Programming
Languages Reading Group - University of Colorado at Boulder Students with disabilities are encouraged to contact
me during the first two weeks of class regarding any special needs. Students
with disabilities should also contact Disabled Student Services in the Ley Student Center and the Rice Disability Support Services.
Related Seminars
PROLANGS Reading Group -
Rutgers - State U. of New Jersey
The Programming Languages
Reading Group - University of Wisconsin, Madison
Programming
Languages Reading Group - National University of Singapore
Program Analisys Reading Group
- MIT
SPL
Reading Group - University of British Columbia Accomodations for Students with Special
Needs