| home | help | back | first | fref | pref | prev | next | nref | lref | last | post |
To: java-interest@java.sun.com cc: ramsdell@linus.mitre.org Date: Sat, 02 Sep 1995 21:51:40 -0400 From: "John D. Ramsdell" <ramsdell@linus.mitre.org> I propose the creation of a new dialect of Java, called Iced Java, intended for systems programming. Iced Java should be carefully designed so that it syntactically looks like Java and has similar semantics. With a little care, programmers should be able to write Iced Java programs that can be run and debugged as if they are ordinary Java programs. Iced Java would be suitable for systems programming because Iced Java programs should require nothing more than a C-like runtime system. In particular, Iced Java programs should be runnable without the use of automatic storage reclamation, and they may explicitly free objects. Unlike Java, Iced Java would not be a safe language, as it may provide primitives that perform actions such as pointer arithmetic. Iced Java could be used to implement a Java bytecode interpreter. With a little foresight, one could write and debug most of the interpreter as a Java program. A few classes would need new definitions before the interpreter is presented to an Iced Java compiler. Maybe the Iced Java compiler will generate C, C++, or Objective C, which will then be translated into machine code. Constructing systems programs via advanced languages leads to clear, more easily maintained programs. Richard Kelsey and Jonathan Rees, used a language called PreScheme to implement a bytecode interpreter for Scheme. The clarity of the implementation is striking. Their implementation is described in an articled titled "A Tractable Scheme Implementation" in Lisp and Symbolic Computation, 7(4)315-335, 1994. John - Note to Sun employees: this is an EXTERNAL mailing list! Info: send 'help' to java-interest-request@java.sun.com
| home | help | back | first | fref | pref | prev | next | nref | lref | last | post |