pollack@dendrite.cis.ohio-state.edu (Jordan B Pollack) (07/19/90)
This reminds me of an old idea from my days as a programming language hacker: The minimal language kernel. The idea is to find the smallest set of primitives from which all the elements of the interpreter could be built. Then you build the interpreter itself out of just those primitives. In Forth, for example, one could code about 200 bytes of code, and bootstrap in the rest of the language. For front-panel s-100 systems, this was a dream come true, even though most of the boot code just read and stored addresses. I even recall some discussion about the definition of a minimal common lisp kernel and verified add-on packages, before common lisp turned into Ada. Pseudo-code is based on a similar idea, where a high-level langauge compiler would generate interpreted code. UCSD Pascal compiler used p-code, Apple used Sweet-16, etc. I may be wrong, but it seems that for a summer project, one could define postscript in a semantically cleaner, smaller, and lower-level language with direct control of memory, which could then be implemented for different platforms or in other languages like C or lisp. The code for postscript would just be slurped in. It would certainly be less efficient than a hand-coded postscript, but it might be publically extensible. Comments? Volunteers? -- Jordan Pollack Assistant Professor CIS Dept/OSU Laboratory for AI Research 2036 Neil Ave Email: pollack@cis.ohio-state.edu Columbus, OH 43210 Fax/Phone: (614) 292-4890