[racket] [plt-scheme] apply syntactically bound (was RE: [plt-bug]

From: Jos Koot (jos.koot at telefonica.net)
Date: Fri Jun 4 23:47:22 EDT 2010

Thanks for your extended explanation.
Correct, 'apply' only behaves different with namespace-variable-value.
For example: (procedure? apply) -> #t
The macro stepper showed me what happens (apply / new-apply)
Thanks again, it is perfectly clear now.

> -----Original Message-----
> From: Matthew Flatt [mailto:mflatt at cs.utah.edu]
> Sent: 04 June 2010 19:41
> To: Jos Koot
> Cc: 'Sam Tobin-Hochstadt'; 'Carl Eastlund'; plt-scheme at list.cs.brown.edu
> Subject: RE: [plt-scheme] apply syntactically bound (was RE: [plt-bug]
> At Fri, 4 Jun 2010 19:33:57 +0200, "Jos Koot" wrote:
> > It seems to me that inclusion of identifier syntaxes introduces
> > a little inconsistency between symbols having a syntactic binding or a
> > simple variable binding.
> I think that `namespace-variable-binding' is likely the problem, in
> that it exposes too much information.
> In contrast, if you use `dynamic-require' like
>   (dynamic-require 'racket/base 'apply)
> then you don't have to know whether `apply' is bound as a variable or
> as syntax. The `dynamic-require' function correctly hides the
> difference.

  For list-related administrative tasks:

Posted on the users mailing list.