[plt-scheme] eval when reading?

From: Eli Barzilay (eli at barzilay.org)
Date: Fri Sep 8 09:52:52 EDT 2006

On Sep  7, Noel Welsh wrote:
> There isn't, and MzScheme allows fine grained control over
> what you allow evaled code to do.  There are two main
> mechanisms:
>   - you can eval code in a custom namespace containing only
> those functions you allow
>   - you can use various security managers to disable file
> and network access.
> In addition to the MzScheme docs, see:
> http://schemecookbook.org/Cookbook/DynamicEvalCustomNamespace
> http://schemecookbook.org/Cookbook/DynamicUntrustedEval

Also, there is the handin-server code that does safe evaluation of
student submissions -- `safe-eval' and `make-evaluator' in
collects/handin-server/util.ss (in the repository and the full nightly

On Sep  8, Ryan Culpepper wrote:
> [...]
> Section of the mzscheme manual lists the parameters that
> affect the reader. Section 11.2.4 describes the behavior of the
> default reader, and Section 11.2.8 talks about readtables.

I addition to extending the readtable there is `begin-lifted' which I
mentioned a short while ago -- it can solve many of the problems that
are solved with #. in CL.

(But all of this is irrelevant to the original post, which asked about
the safety of `read'...)

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!

Posted on the users mailing list.