Seminar | |
What | Advanced Object-Oriented Dynamic Language (OODL) Design and Implementation |
Which | This course covers implementation techniques for advanced object-oriented dynamic languages (OODL). OODL's address the increasing demands for quick time to market by attempting to narrow the gap between conception and realization through a higher level of abstraction, clean semantics, automatic memory management, incremental development, and reflection. We will cover a series of compiler and runtime implementation techniques which permit the efficient delivery of these language / development environment features. This course is meant to complement a traditional compiler course (e.g., 6.035) through the presentation of cutting edge compilation techniques such as dynamic compilation, type inference, partial evaluation, feedback guided compilation, automatic inlining, class hierarchy analysis, object layout, proof-based techniques, etc. Going beyond compilers runtime system techniques such as fast multimethod dispatch, generational garbage collection, dependency tracking, virtual machines, etc will be covered. Rounding this out we will discuss techniques for supporting advanced development environments such as dependency tracking, function/class redefinition, remote debugging, browsing/compiler databases, profiling feedback, etc. Throughout the course relevant language design principles will be discussed. Furthermore, students will be able to explore a large number of these concepts with the actual implementation of Proto as well as other systems. Finally, there will be three panels of experts revealing secrets of the trade in the areas of run-time techniques, compile-time techniques, and language design principles. |
Why | To teach, learn and have fun. |
Who | INSTRUCTORS
Jonathan Bachrach, Post Doctoral Fellow, MIT AI Lab Greg Sullivan, Research Scientist, MIT AI Lab Kostas Arkoudas, Post Doctoral Fellow, MIT AI Lab and bleeding-edge guest lecturers SPONSORS Tom Knight, Senior Research Scientist, MIT AI Lab Martin Rinard, Assistant Professor, MIT LCS |
How | Students will be expected to research and present one topic in the field during the course of the semester. In addition, students will complete one final project, which will be chosen from a number of suggestions. |
When | 2001, Spring Semester, tu-th 1-2.30 |
Where | mit, 26-322 |
And | proto |