tags 16363 notabug
thanks

Zefram <zef...@fysh.org> writes:

> guile-2.0.9's compiler has some inconvenient restrictions, relative to
> its interpreter.  Where the compiler is automatically applied to scripts,
> the restrictions aren't a serious problem, because if compilation fails
> then guile falls back to interpreting the script.  But in an interactive
> REPL session, by default each form entered by the user is passed through
> the compiler, and if compilation fails then the error is signalled,
> with no fallback to interpretation.
>
> As a test case, consider a form in which a procedure object appears.
> The compiler can't handle forms that directly reference a wide variety of
> object types, including procedures (both primitive and user-defined) and
> GOOPS objects.  In the interpreter these objects simply self-evaluate,
> and it can be useful to reference them without the usual indirection
> through a named variable.

Scheme does not allow arbitrary user objects to be embedded directly
into the source code.  It worked by accident in Guile 1.8, but in a
system with ahead-of-time compilation to object files, which requires
that all code and literals be serialized, there's no sane way to support
the semantics you seem to want.

     Regards,
       Mark



Reply via email to