[plt-scheme] v4 top-level based languages in DrScheme
I still do use mzscheme for files with examples/tests in which equivalent
examples/tests may define (and redefine) the same top level variable. But
with #lang scheme/load and wrapping the examples/tests in modules there is
no problem, on the contrary, the modules will assure that the examples/tests
are not interdependent! Hence, as far as I am concerned, #lang mzscheme
language can be removed.
Jos
----- Original Message -----
From: "Matthew Flatt" <mflatt at cs.utah.edu>
To: "PLT-Scheme" <plt-scheme at list.cs.brown.edu>
Sent: Monday, April 14, 2008 5:26 PM
Subject: Re: [plt-scheme] v4 top-level based languages in DrScheme
> At Mon, 14 Apr 2008 08:05:50 -0500, "Robby Findler" wrote:
>> On Mon, Apr 14, 2008 at 7:05 AM, Grant Rettke <grettke at acm.org> wrote:
>> > > Is there anyone out there that still uses mzscheme and/or mred in v4
>> > > or imagines that they would?
>> >
>> > For what do folks usually use the mzscheme language?
>>
>> The main justification for it before was that it matched what you get
>> when you start up the mzscheme binary. But now that things are much
>> more module-oriented, this seems much less important (specifically, if
>> your program begins with "#lang ..." then calling mzscheme on it is
>> more like using the "Module" language in the v4 DrScheme).
>
> Nevertheless, one reasonable use of the "MzScheme" language was for
> interactive exploration. For example, you might want to try something
> like
>
> (module m mzscheme
> (provide x)
> (define x 5))
>
> (module n mzscheme
> (require 'm)
> (display x))
>
> (require 'n)
>
> and then poke at the definitions of `m' and `n' without having to copy
> them to the REPL for every experiment.
>
> To support this kind of interaction, we've added a `scheme/load'
> language (just now committed to SVN). Using `scheme/load', you can
> perform these kinds of experiments in the Module language:
>
> #lang scheme/load
>
> (module m mzscheme
> (provide x)
> (define x 5))
>
> (module n mzscheme
> (require 'm)
> (display x))
>
> (require 'n)
>
>
>
> Matthew
>
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-scheme