| Table of Contents |
|---|
| To copy and use these tools |
| LL(1) parser generator |
| Educational Compilers |
| LL(k) parser generator |
| CS540 provided tools |
| Assorted tools and papers |
| Resources |
| I'm on a leave of absence from IIT this year. You can find me via my company's home page: | Prof. Thomas W. Christopher Tools of Computing LLC |
TCLL1, TCLLk, EULER, and FP are public domain programs. The documents describing them are copyrighted. You may reproduce the document in its entirety for personal use software. For educational use at a nonprofit institution, you may reproduce the documents for the students, instructors and teaching assistants provided you inform the author of the course name and number, the institution name and address, and provide electronic links (instructor's e-mail and course home page URL) to be posted on the web. Send the listing to the author at tc@charlie.cns.iit.edu .
| Document (Postscript) | Software (zip file) | Remarks |
|---|---|---|
| TCLL1: An LL(1) Parser Generator (Zipped Postscript) | tcll1.zip | The TCLL1 parser generator. The parser generator and parsers are written in Icon. To use this, you need The Icon Programming Language. |
language: BNF (Extended) package: TCLL1 version: 1 parts: parser generator (LL(1)), parser, manual, example implementations of EULER and FP author: Thomas W. Christopher <tc@charlie.cns.iit.edu> <http://www.iit.edu/~tc> location: http://www.iit.edu/~tc/toolsfor.htm description: TCLL1 takes an extended CFG with action symbols, alternation, repetition, and conditional groupings and translates into a file of tables to be read in by the parser. The parser will call the semantics routines named by the action symbols at the appropriate times. The parsers performs panic mode error repair. A 60 page manual is available for TCLL1. Example implementations of EULER and FP using TCLL1 are available. The EULER implementation is accompanied by a 60 page manual including exercises for use in a compiler writing course. conformance: N/A reference: TCLL1 Parser Generator--manual features: The parser generator and parsers are written in the Icon programming language. bugs: none restriction: requires writing in the Icon programming language. requires: the Icon programming language; more than 8MB of main memory. ports: UNIX, Windows NT, MS-DOS portability: very high: as portable as Icon. status: under active development. An LL(k) parser generator is in beta testing. Retargeting the tables to other languages is in progress. discussion: N/A help: author (as time permits) support: author (as time permits) contributions: Tax deductable by check to Department of Computer Science and Applied Mathematics Illinois Institute of Technology IIT Center Chicago IL 60616 USA (Contributions will be matched one-for-one.) announcements: http://www.iit.edu/~tc/toolsfor.htm contact: author updated: 20 Jan. 1997
| Back to | TC's projects | Icon Programs | CS540 |
|---|
| Document (Postscript) | Software (zip file) | Remarks |
|---|---|---|
| EULER: An Experiment in Language Definition (in Postscript) | euler.zip | A document on the language EULER and its compiler, which is written in Icon using TCLL1. |
| Lambda calculus description (in Postscript) Lambda calculus description (PDF) |
lambda.zip | Two versions of lambda calculus-based functional programming languages. |
| IIT FP Language Description (fp.ps) IIT FP Language Implementation (fp-impl.ps) |
fp.zip | FP implementation. FP is a functional programming language designed by John Backus. |
To use these, you need The Icon Programming Language. To change the grammars, you will need TCLL1, listed in the previous section.
| Back to | TC's projects | Icon Programs | CS540 |
|---|
Out LL(k) parser generator is the subject of ongoing research. In Spring 1997, the CS540 class is testing it out and implementing plug-ins to translate the parsing tables for use in compilers written in other languages than Icon.
| Tool or document | Description |
|---|---|
| tcllk.zip |
LL(k) parser generator, alpha version. |
| A paper describing the algorithm used by TCLLk | |
| TCLLk Notes | Changes from TCLL1 manual. |
| Back to | TC's projects | Icon Programs | CS540 |
|---|
| Tool or document | Status |
|---|---|
| Parse table translator for C Parse routines for C Test scanners & parsers in C Manuals |
TC is porting TCLLk output to C. |
(Available sometime....)
| Free compilers | Free compilers |
| Free compiler writing systems | Compiler writing systems |
| Catalog of Compiler Construction Tools | http://www.first.gmd.de/cogent/catalog/ |
| Research projects | http://www.cs.cmu.edu/~mleone/language-research.html http://www.cs.cmu.edu/~mleone/language-people.html http://www.cs.indiana.edu/inds/proglang.html Programming language research projects at Indiana University. |
| Garbage collection | http://www.centerline.com/people/chase/GC/GC-faq.html To join the gclist, send "subscribe gclist" to majordomo@iecc.com http://www.ukc.ac.uk/computer_science/Html/Jones/gc.html Richard Jones's (R.E.Jones@ukc.ac.uk) web page on garbage collection. He also has a book out:
http://www.cs.utexas.edu/users/oops/papers.html Garbage collector for C and C++: ftp://parcftp.xerox.com/pub/gc/gc.html Harlequin's Memory Management Group has released the "Memory Management Reference," a set of web pages containing a glossary, bibliography, FAQ, and other resources: http://www.harlequin.com/mm/reference/ |
| Usenet groups | comp.compilers comp.lang.icon comp.lang.ml comp.lang.lisp comp.lang.scheme etc. |
| Jack Crenshaw's "Let's Build a Compiler" | http://iecc.com/compilers/crenshaw |
| Darkstar home page | http://www.gre.ac.uk/~hs574/index.html "This site is dedicated to hot links for Shareware, Programming, Computer Science, Computer Hardware, Computer Software and Search Engines." |
| Object-Oriented Links | http://www.objenv.com/cetus/software.html |
| Back to: | CS540 home page | Thomas Christopher's home page | Computer Science Department's home page | IIT's home page |
This page last updated 11/10/98