next up previous contents index
Next: Top-level expressions and commands Up: Using NESL Previous: Starting NESL

How NESL evaluates expressions


The NESL system is interactive: the current implementation is built on top of Common Lisp  and implements a similar read-eval-print loop. Expressions are typed at the NESL prompt and terminated with a semicolon and a carriage return. For example:

<Nesl> 2 + 3;

it = 5 : int
Expressions are compiled dynamically into an intermediate language called VCODE , which is then interpreted by a subprocess. The phases of executing an expression are: This setup makes it relatively easy to run code on remote machines, since the VCODE interpreter can be run remotely, communicating with the NESL system through a shared file system or through calls to rsh and rcp. This is how the CM-2, CM-5, Cray, Maspar, and MPI implementations work.

Guy Blelloch
Tue Nov 28 18:37:09 EST 1995