[racket-dev] enter! verbosity

From: Eli Barzilay (eli at barzilay.org)
Date: Sat Dec 11 17:47:57 EST 2010

About a minute ago, Carl Eastlund wrote:
> On Sat, Dec 11, 2010 at 5:17 PM, Eli Barzilay <eli at barzilay.org> wrote:
> >
> > I'm not sure what your intended use is (= what is that "language in
> > question"), but IIUC, it sounds like you really want
> >
> >  racket -I typed/racket
> 
> Almost, apparently I need to throw a "-i" in there to get the REPL
> back.

(You need an `-i' only there are other non configuration options on
the command line.)


> But yes, that comes as close as enter! to what I wanted, so probably
> I should just stop using enter! for the most part.
> 
> I had thought that enter! did more -- that it was like #lang, and
> would pick up reader extensions along with namespace bindings like
> the DrRacket REPL does.  Apparently it does not, so I don't lose
> that by going to racket -i -l.  In that case, it would be nice if we
> did have a way to integrate the racket REPL with languages as
> closely as the drracket REPL.  (And if we do have that, I'd like to
> know how!)

No, `enter!' is doing very little -- it just requires the specified
module (in that noisy way, which is related to tracking the modules on
the way so they can be reloaded later if needed, as well as loading
them with inlining disabled to make it possible to reload), and
switches your namespace to the one that corresponds to the module.
It's a (very) poor man's sandbox-like thing.

For what you need, it sounds like -I is the right thing, and it should
eventually use the reader for the specified language.  (The sandbox
will too.)  Making `enter!' switch the reader sounds more potentially
problematic.


> Sorry for my relative cluelessness about enter! and the racket
> command line.

Ugh, given that Noel seconded this, I had most of the
default-to-silent-loading thing done already.  Any other votes for or
against?  (I'll probably commit the option anyway, and just keep the
default as it is unless more people want it to be quiet by default.)

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


Posted on the dev mailing list.