Before going any further, read the disclaimer!

Features and Misfeatures of Programming Language Implementations

These are properties of implementations, not of languages; a language scores points for these properties if such an implementation exists.

Read the disclaimer before you flame.

Freely distributable.
This is an absolute requirement due to my lack of money coupled with my desire to give my code away effectively.
Interpreted implementation for quick development.
This is very desirable but I could live without it if I got enough in return.
Compiled implementation for fast execution.
This is very desirable, but I've seen some interpreters that are basically fast enough by themselves.
Dynamic loading for foreign functions.
Practically speaking it's just far too much trouble to have to link a custom interpreter in order to have access to foreign functions. (Every real OS supports dynamic loading anyway.) The lack of dynamic loading really makes it hard to give away your tools ("Sure, you can have my 20 line script, but you'll need to install this custom interpreter, runtime system, and library first...").
An interactive source language debugger.
Tracing is not enough. Lisp and Forth debuggers have spoiled me forever. Fewer points off for not having this if you do have static typing.

Backlinks:

My Programming Language Crisis.


Keith Waclena <k-waclena@uchicago.edu>
The University of Chicago Library

This page last updated: Tue Jun 24 01:26:33 CDT 1997
This page was generated from Extended HTML by xhtml.