[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Self and Scheme



On Mar 27,  2:18pm, Patrick Logan wrote:
}    >From uiucuxc!eng.sun.com!ungar  Wed Mar 27 14:04:42 1991
}    I love the idea of putting lookup within the language.
}    Perhaps the VM shouldnt implement any kind of inheritance at all?
} 
} Can you say Scheme? This is not an entirely facetious suggestion. It

  I can.

} sounds like this discussion is leading to a small, regular easily
} optimized language that can be used to build higher-level language
} features like inheritance and polymorphic procedures.

  This is one thing I was discussing with a Smalltalk hacker a couple
of days ago. One of the really beautifull things about Lisp and
Lisp-like things (assembly language is the only non-Lisp derived
language that also has this property) is that program is data and data
is program. 
  If it weren't for the fact that the core of Self was implemented in
C I probably would have tried to make Self do breadth-first searches
rather than depth first searches weeks ago (I keep meaning to post
regarding this. I will do that in a seperate message).
  My friend countered that there is always the Parser object in
Smalltalk from which one could build another Compiler. This is sort of
like saying that 'there is always getchar() for C' [okay. maybe that
isn't fair. There is always 'yacc']

  I personally can't see any good ways to integrate a lot of the
concepts of classless-OOP and meta-circular Lisp that would provide
the strengths of both.
  Also, even in Alpaca Lisp (a very slow lisp derivative [more like T
and LeLisp than anything else I've read about]), I would up building a
VM. Mind you, the VM was simulated by a Vicuna Lisp program. (Vicuna
Lisp was a simple and not very intelligent Lisp written in C). The
VM 'assembly' code that implemented the Alpaca Lisp interpreter was
hand crafted and could not have been described in Lisp. It handled
tail-recursion, and crossed-tail recursion in the interpreter. 
  My point being that to really get into the guts of a language and
make it do precisely the stuff you want, one often has to resort to a
lower level. 



-- 
   :!mcr!:            |  The postmaster never | So much mail, 
   Michael Richardson |    resolves twice.    |  so little time.
HOME: mcr@sandelman.ocunix.on.ca 	Bell: (613) 237-5629
    Small Ottawa nodes contact me about joining ocunix.on.ca!