|
Overview |
|
|
|
The focus of 4115 will be the design and implementation of a little
language. You will divide into teams and design the goals, syntax,
and semantics of your language, and implement a compiler for your
language.
|
|
Resources |
|
|
|
A Two-page Introduction to ANTLR
|
|
|
The ANTLR homepage
|
|
|
A two-page introduction to the CVS version control system. I strongly suggest you keep your project under some version control system.
|
|
White Paper |
|
|
|
The Java white paper from Sun Microsystems
|
|
|
C# Introduction and Overview
|
|
Language Reference Manual |
|
|
|
Dennis M. Ritchie, C Reference Manual
|
|
|
Kernighan & Ritchie, The C Programming Language
|
|
|
The C Language Reference Manual (DEC)
|
|
|
The C Language Reference Manual (SGI)
|
|
|
The C Language Reference Manual (Microsoft)
|
|
|
Stroustrup, The C++ Programming Language
|
|
|
The C++ Language Reference (Microsoft)
|
|
|
The Java Language Specification
|
|
|
The C# Language Specification
|
|
|
Aho, Kernighan, and Weinberger,
The AWK Programming Language
|
|
Final Report |
|
|
|
A sample final report by Chris Conway,
Cheng-Hong Li, and Megan Pengelly from 4115 last term. It includes
the white paper, tutorial, language reference manual, project plan,
architectural design, and testing plan. It does not include the
lessons learned and code listings sections, although it should.
|
|
|
Source for the very successful MX language project
|
|
|
- Introduction
- Include your language white paper.
- Language Tutorial
- A short explanation telling a
novice how to use your language.
- Language Manual
- Include your language reference manual.
- Project Plan
- Identify process used for planning, specification, development
and testing
- Include a one-page programming style guide used by the team
- Show your project timeline
- Identify roles and responsibilities of each team member
- Describe the software development environment used (tools and
languages)
- Include your project log
- Architectural Design
- Give block diagram showing the major components of your translator
- Describe the interfaces between the components
- State who implemented each component
- Test Plan
- Show two or three representative source language programs along
with the target language program generated for each
Show the test suites used to test your translator
Explain why and how these test cases were chosen
What kind of automation was used in testing
- Lessons Learned
- Each team member should explain his or her most important
learning
- Include any advice the team has for future teams
- Appendix
- Attach a complete code listing of your
translator with each module signed by its author
|
|
Groups |
|
AJYN |
Report |
Presentation |
|
Flash Animation Language |
Neel Goyal |
Yaniv Schiller |
Jared Kennedy |
Ananya Das |
BROOM |
Report |
Presentation |
|
A Matrix Language |
Christopher Tobin |
Gabriel Glaser |
Brian Pellegrini |
Michael Weiss |
BSL |
Report |
Presentation |
|
Biological Scripting Language |
Amna Qaiser |
Jayavardhan Kota |
Jared Eng |
Igor Marfin |
CILY |
Report |
Presentation |
|
Exactly What The World Needed |
Edward Ishak |
Makiko Yasui |
Jiwan Choi |
Jonathan Liu |
CLAW |
Report |
|
|
Columbia Language for Altering Waveforms |
Shloke Mittal |
Jeffrey Polanco |
Vivek Ramdev |
Bill Wang |
CRASH |
Report |
Presentation |
|
A Practical Graphical Animation Tool |
Mikhail Litvin |
Michael Anikin |
Vadim Belobrovka |
Daniel Burdeinick |
Creme |
Report |
Presentation |
|
Card Game Language (Cards Really Excite Me) |
Joshua Mackler |
James Leslie |
Anthony Chan |
Cheryl Lau |
eMDL |
Report |
Presentation |
|
Extended Motion Description Language |
Jerin Kurian |
Rajesh Banik |
Andrew Han |
Russell Klopfer |
eMuse |
Report |
Presentation |
|
Rapid Screenplay Prototyping Language |
Mark Ayzenshtat |
Elena Filatova |
Kristina Holst |
Vladislav Shchogolev |
F2 |
Report |
|
|
A Macromedia Flash Specification Coding Language |
JenYu Wang |
Jonathan So |
Shawn Tay |
Benjamin Chan |
GG |
Report |
Presentation |
|
We give it to you |
Elizabeth Mutter |
Jacob Porway |
Jonah Tower |
Kierstan Bell |
ISICL |
Report |
Presentation |
|
Intuitive Strategic Intelligence Control Language |
Michael Marcus |
Mark Berman |
Matthew Keitz |
Michele Cozart |
jGTL |
Report |
Presentation |
|
A Graphic Transformations Language |
Zhenyu Zhu |
Corey Kasten |
Ramiro Ordonez |
Gianfranco Bonanome |
Mx |
Report |
Presentation |
|
A Programming Language for Scientific Computation |
Yong-Man Ra |
Chang-Woo Lee |
Tiantian Zhou |
Hanhua Feng |
OGEL |
Report |
Presentation |
|
A LEGO Mindstorm Robot Controller Language |
Gerardo Flores |
Michael Ching |
Charles O'Donnell |
Matthew Kalish |
PSL |
Report |
Presentation |
|
Physical Simulation Language |
Taino Ortiz |
John Rodriguez |
John Hamer |
Danian Martinez |
SCL |
Report |
Presentation |
|
Site Construction Language |
Clark Landis |
Sudip Das |
Mohamed Nasser |
|
SPCL |
Report |
Presentation |
|
Structured Policy Command Language |
Aron Wahl |
Michael Locasto |
Matthew Burnside |
Chun Li |
SSL |
Report |
Presentation |
|
String Searching Langauge |
Sandra Macdonald |
Meera Ganesan |
Satheesha Rangegowda |
Dennis Kim |
TATA |
Report |
Presentation |
|
A Functional Language |
Artem Litvinovich |
Azubuko Obele |
Raphael Pelossof |
Isaac Krieger |
WPSM |
Report |
Presentation |
|
A simple language that transform simple data structure into complex XML |
Miqdad Mohammed |
Seema Gupta |
Wai Wong |
Peter Chen |
YOLT |
Report |
Presentation |
|
|
Yuan Zheng |
Omar Ahmed |
Lukas Dudkowski |
Takahiro Kuba |
|