another wish: checking for unbound identifiers

From: Rob DeLine <rdeline_at_cs.cmu.edu>
Date: Sun, 28 Apr 1996 15:14:48 -0400

Since several people have suggested improvements for STk, I thought I'd
throw in my own.

Since Scheme is a statically scoped language, it's possible to check,
before executing a piece of code, whether all the identifiers are bound or
not. For example, the code

  (define (f n)
     (let ((mistake 0))
        (set! mistak (+ mistake n))))

has a typo ("mistak" rather than "mistake") that won't be discovered until
f is called. (I realize that because of eval and eval-string, it's possible
that "mistak" could get bound before f is called, but this isn't in the
spirit of Scheme.)

The software I work on consists of 8000 lines of STklos code and takes a
minute or so to load. There's nothing more frustrating than waiting for it
to load, playing with it for a minute, and then having it crash because of
a small typo in the code.

Rob DeLine
Received on Sun Apr 28 1996 - 21:17:36 CEST

This archive was generated by hypermail 2.3.0 : Mon Jul 21 2014 - 19:38:59 CEST