Re: First-class environments

Scott Parish <[email protected]>
Newsgroups gmane.comp.lang.lightweight
Message-ID <[email protected]>
The second url should have been:

http://citeseer.ist.psu.edu/jagannathan89programming.html

sRp

On Wed, Apr 05, 2006 at 07:45:03PM +0000, Scott Parish wrote:

> I've been interested in this for some time now (but haven't spent enough
> time on it).
> 
> There's two papers on symmetrical lisp that you might find interesting,
> although i think they take it a little too far.
> 
> http://citeseer.ist.psu.edu/gelernter87environments.html
> http://citeseer.ist.psu.edu/gelernter87environments.html
> 
> sRp
> 
> On Wed, Apr 05, 2006 at 11:28:31AM -0700, Michael Vanier wrote:
> 
> > This list has been pretty moribund for a while, so I'd like to introduce a new topic.  I've been getting 
> > interested in the notion of languages that support first-class environments i.e. environments as a data structure 
> > that can be grabbed and manipulated by a programmer.  The impetus for this was reading about metaprogramming in 
> > Ruby, which in that language amounts to being able to extend object environments at runtime.  This makes certain 
> > useful coding idioms possible e.g. reading from a database and creating objects that contain the database columns 
> > as fields.  This is used to good effect in web frameworks like Ruby on Rails, purportedly drastically reducing 
> > the amount of boilerplate code relative to similar frameworks in e.g. Java.
> > 
> > More generally, some authors have pointed out that many language constructs e.g. modules, classes, objects are to 
> > a large extent just variations on the environment concept, and functions are largely just code + environment.  So 
> > the appeal of first-class environments conceptually is that they might allow you to have a more minimal core 
> > language in which you could define whatever module/class/object/function semantics you wanted.
> > 
> > What I'd like to know are: 1) What are the best/most important/most famous papers on this subject?  2) What are 
> > peoples' opinions on this?  I'd especially like to hear about elegant coding idioms using first-class 
> > environments and also horror stories (if any).  For instance, are there certain important language features or 
> > optimizations that first-class environments make impossible?
> > 
> > Mike
> > 
> >
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.