Misty Beach Forth
What is Misty Beach Forth?
Misty Beach Forth is an implementation of the Forth programming language written in
Java. Because it is written in Java, the Misty Beach Forth interpreter can be
embedded in a WWW HTML page and launched as an applet. A link
to a page containing this applet appears below.
Why was Misty Beach Forth created?
Misty Beach Forth was created to demonstrate that just about any programming
language can be implemented in Java without suffering an unacceptable performance
penalty. Java implementations already exist for languages without
explicit pointers (Java implementations of Ada, Lisp, Scheme, BASIC, and Rexx already exist.
An Eiffel implementation is on-the-way).
These languages all fit the Java Virtual Machine (JVM) fairly well because of their
lack of pointers.
Forth does not fit the JVM well because Forth is built on pointers, much like C.
I hope that the combination
of these other languages, plus Misty Beach Forth, provides a compelling argument that
any programming language can be implemented either in Java or on top of the JVM.
I think the ability to implement other languages in Java is important for several reasons:
- Java as a programming language is not the final step in programming language evolution.
As good as it is, we will eventually have better languages. It would be nice if those
other languages could be implemented on top of the JVM, too.
- Java is not always the right tool for the job. It will be nice to have access to
Lisp and Prolog and OPS5 and lots of other languages and still benefit from the
portability of Java.
- Programming languages fascinate me. I hope that it can be demonstrated that
developing new languages for the JVM instead of for a specific hardware/OS
platform is reasonable. I get frustrated when I discover that the only implementation
of a programming language I am interested in won't run on the hardware/OS to which I have
- It would be nice to have many good (not necessarily professional quality) applet
implementations of various programming languages. This spares me the effort of
downloading and configuring the language implementation I wish to investigate.
What is the current state of Misty Beach Forth?
Misty Beach Forth is still under development. The current version is 0.21, which
implies that I think it's about 20% of the way to a full release, with one patch.
The current version should demonstrate most of the features of the language.
Math operators, logic operators, control operators, new word definition,
function call, and stack manipulation operators are all implemented. There
are bugs, but the implementation seems to be stable enough to demonstrate
proof-of-concept. Don't try to develop any medical device software with it :-) .
Misty Beach Home Page
Last Updated: 27-May-1997
Questions? Comments? Email: Mark
Copyright © 1996-7 by Misty Beach Software Organization