[racket] Writing a toy interpreter. Need help solving this bootstrapping problem.

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Wed Feb 16 23:22:25 EST 2011

Patrick Li wrote at 02/16/2011 11:07 PM:
> Hello everyone,
> I'm writing a toy Scheme-ish interpreter for fun, and am trying to add 
> some Smalltalk flavor to my Scheme system. I'm running into a 
> bootstrapping problem though, and would like to ask someone for a 
> nudge in the right direction.

Would you call this problem "infinite regress"?

I'm not sure why you're trying to do it this way -- there are easier 
ways to add interesting influences of Smalltalk to Racket, but perhaps 
you have more sophisticated intent than that.

One suggestion: if you have not already, look at the metaobject protocol 
of CLOS.  He has tackled an extensibility problem that I think might be 
related to what you're doing with the overriding of SYMBOL.

I assume you're already familiar with the Smalltalk-80 object model and 
its metaclasses.

One nice things about Racket is that you can prototype new languages 
like this in a couple days or even a couple hours, so you can rapidly 
try and refine approaches, or even try a few different ones.


Posted on the users mailing list.