[racket-dev] , en and enter! sometimes do nothing, and it's changing over releases?

From: Eli Barzilay (eli at barzilay.org)
Date: Sun Feb 10 13:28:05 EST 2013

Yesterday, Ray Racine wrote:
> So the goal is to have entering a module inject the proper typed or
> untyped version of do-enter! by doing a namespace-require on either
> "enter.rkt" or "typed-enter.rkt".  To do that I need to query the
> current-namespace as to whether the namespace language is racket or
> typed/racket, a "namespace-language" procedure.

That won't be a general-enough hack: what happens with other
languages?  But more generally there is no way to do that that works
everywhere, since some languages would want to stay very restricted
and not allow any new bindings.  I think that the xrepl approach for
this (and likely geiser's) works well: you use `enter!' at the meta
level, which means that there is no need for any injections.  So it
looks to me better if things stay as they are, with direct uses of
`enter!' being somewhat limited as they are now, and using a proper
meta tool when needed.

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

Posted on the dev mailing list.