CS 698 Y/Z: Topics in Object Oriented Language Implementation
Project Guidelines
Project Groups
Reserve a Slot for Project Review
Phase I: Submit Preliminary Project Proposal by Wed 12.02.14. The proposal should include:
- Prob. definition with motivating examples,
- State of art of the survey with references,
- Examples from contemporary prog. lang. systems,
- Scope and Objective of the project,
- (Proposed) Plan of the work and techniques to be used,
- Team Members and their role (with USPs),
- (Proposed) Outcome of the project
- References and web-links.
-
Phase II: Review period from 31.03.14 to 05.04.14
- Submit a revised and uptodate project report,
- Reserve a slot for discussion, and
- Discuss the project work.
-
Phase III: Final Project Presentation and Review
- TBA
- . . .
Everyone should skim through the follwing set of sample papers before starting the project work. These papers are on extending message dispatch in OOPL:
- Naik and Kumar: Efficient message dispatch in object-oriented systems, ACM SIGPLAN Notices 35 (3): 49-58, March 2000.
- Kumar, Agrawal and Mangolia: Realization of multimethods in single dispatch object-oriented languages, ACM SIGPLAN Notices 40 (5): 18-27, May 2005.
- Kumar and Agrawal: Multiple dispatch in reflective runtime environment, Computer Languages, Systems & Structures 33 (2): 60-78, July 2007.
The followings are the broad areas to be covered in this course:
- The OO concepts and OO Programming,
- OO Analysis & Design,
- Virtual Execution Environment, and
- Synergy between Prog. Lang Design & Implementation (PLDI) and Software Engineering (SE) for trusted and reusable computing.
- Understanding of the existing stuff in the above areas, and do the following:
- Analytical study,
- Carry out the implementation (with a difference)
- Study of research monograms in the above areas, including the following:
- Type system in OOPL
- Dynamically typed system
- Static and Dynamic Code Analysis
- Reflective System
- . .
- Extensions in the existing stuff in the above areas, for example,
- Additional constructs in prog. lang. as extensions to the existing PLs
- Inclusion of specific OOPL constructs in other OOPLs
- Extensions to Pattern Design Space
- Extending non-VEE with VEE
- Extensions in VEE in PLs supporting VEE
- Extensions in Meta-data for trusted computing
- Extensions in VEE for reusable and trusted computing
- . . .
- Investigatios into the above PL features
- Understanding of distinguished features in emerging OOPLs/Systems, for example,
- x10 Programming Language
- . . .
- There could be several such topics. You are free to choose your project topic beyond the above list, it should be within the areas to be covered in T-OOLI. Students should make the project proposal and discuss with the Instructor. Flexiblility in the start and finish; early to start and early to finish.