[plt-scheme] language level problem

From: Gregory Cooper (greg at cs.brown.edu)
Date: Wed Aug 27 17:23:32 EDT 2003

In past years, we've had special language levels for the undergraduate
programming languages course at Brown.  Last year, we got things working
under version 203, but now we'd like to use version 205, and our code no
longer works, although we have recompiled and can load the modules without
any problem.

Strangely, if we set the language level to (module ...) and load one of
the language modules, everything works perfectly.  But if we set the level
directly to one of the modules, then attempting to evaluate even
simple expressions leads to errors like the following:

> 3
compile: bad syntax; literal data is not allowed, because no #%datum
syntax transformer is bound in: 3
> empty
compile: bad syntax; reference to top-level identifiers is not allowed,
because no #%top syntax transformer is bound in: empty
> (+ 2 3)
compile: bad syntax; function application is not allowed, because no #%app
syntax transformer is bound in: (+ 2 3)

One of the language levels is defined as follows:

(module cs173-advanced (lib "plt-pretty-big-text.ss" "lang")
  (require (lib "datatype.ss" "eopl")
           (lib "trace.ss")
           (lib "pretty.ss"))

  (provide define-datatype
           cases)

  (require (lib "mred.ss" "mred"))

  (provide (all-from (lib "plt-pretty-big-text.ss" "lang"))
           (all-from (lib "mred.ss" "mred"))))

Does anyone have any idea what might be going wrong?

Thanks,

Greg



Posted on the users mailing list.