[racket] Language Toolkit Questions

From: Sam Tobin-Hochstadt (samth at ccs.neu.edu)
Date: Wed Jul 20 08:05:28 EDT 2011

As an example of this, you can see my `lambda/prop' example here:
The documentation for `prop:procedure' is here:

On Wed, Jul 20, 2011 at 7:50 AM, Robby Findler
<robby at eecs.northwestern.edu> wrote:
> Do you perhaps want prop:procedure?
> Robby
> On Tue, Jul 19, 2011 at 6:08 PM, Pavel Panchekha <pavpanchekha at gmail.com> wrote:
>> I'm trying to port some code from MIT Scheme to Racket.  A large part of
>> the MIT Scheme was a metacircular interpreter, and I'm hoping that I can
>> use Racket's language definition capabilities to avoid that annoyance.
>> But I've hit a snag.  One of the important parts of the MIT Scheme
>> wrapped all objects in another structure.  It then distinguished between
>> primitive functions, for which we would have to unwrap that structure
>> and use a fallback, and functions defined in the guest Scheme, which
>> expected wrapped objects and so we could use a smarter apply function.
>> In Racket, I can override =%datum=, =lambda=, and similar, to produce
>> these wrapped objects.  But I can't figure out what to do with =%app=.
>> If there was some primitive for "defined outside this language", I could
>> use that.  Or if there was a way of explicitly "tagging" objects (some
>> sort of transparent metadata, as has e.g. Clojure), I could tag all of
>> my non-primitive functions and use that.
>> Do you know if anything like either of these options exist?  Or is there
>> some clearer way in Racket to express what I want to do?
>> --
>>  Pavel Panchekha
>> _________________________________________________
>>  For list-related administrative tasks:
>>  http://lists.racket-lang.org/listinfo/users
> _________________________________________________
>  For list-related administrative tasks:
>  http://lists.racket-lang.org/listinfo/users

sam th
samth at ccs.neu.edu

Posted on the users mailing list.