From: Aemon on 14 Oct 2009 21:01 I'm doing a bit of research on the history of generic functions / multimethods / multiple dispatch systems. I was wondering if anyone could give me pointers on good places to look. I've already traced the idea back to OOPLSA 1986. Flavors http://portal.acm.org/citation.cfm?id=28697.28698 and CommonLoops http://portal.acm.org/citation.cfm?id=28697.28700&jmp=cit&coll=GUIDE&dl=GUIDE&CFID=57779486&CFTOKEN=37115212#CIT Did the idea originate with object systems in Lisp? And by 'the idea' I mean, families of methods that are dispatched according to some runtime characteristic of all the arguments. Many thanks, Aemon
From: Vassil Nikolov on 15 Oct 2009 00:14 On Wed, 14 Oct 2009 18:01:22 -0700 (PDT), Aemon <aemoncannon(a)gmail.com> said: > ... > I've already traced the idea back to OOPLSA 1986. > Flavors > http://portal.acm.org/citation.cfm?id=28697.28698 <http://www.softwarepreservation.org/projects/LISP/> has some more references about Flavors (including one to the A.I. Memo No. 602 of 1980). ---Vassil. -- "Even when the muse is posting on Usenet, Alexander Sergeevich?"
From: Aemon on 15 Oct 2009 01:00 On Oct 14, 9:14 pm, Vassil Nikolov <vniko...(a)pobox.com> wrote: > On Wed, 14 Oct 2009 18:01:22 -0700 (PDT), Aemon <aemoncan...(a)gmail.com> said: > > > ... > > I've already traced the idea back to OOPLSA 1986. > > Flavors > >http://portal.acm.org/citation.cfm?id=28697.28698 > > <http://www.softwarepreservation.org/projects/LISP/> > > has some more references about Flavors (including one to the > A.I. Memo No. 602 of 1980). > > ---Vassil. > > -- > "Even when the muse is posting on Usenet, Alexander Sergeevich?" Thanks for the link, Vassil. The memo was very interesting. In particular, there is no mention of multimethods. Methods are defined over a single 'flavor' (analogous to a class). One line down on the same page: David Moon and Daniel Weinreb. Introduction to Flavors. 1985 This seems to be largely the same text as the memo from 1980. Also makes no mention of multimethods, sticking to the message passing metaphor: "When a message is sent to an object, a function therefore must be found to handle the message. The two data used to figure out which function to call are the type of the object, and the name of the message."
From: Rainer Joswig on 15 Oct 2009 02:57 In article <7fb3bef7-b734-456c-b038-bb5a19243f65(a)s21g2000prm.googlegroups.com>, Aemon <aemoncannon(a)gmail.com> wrote: > I'm doing a bit of research on the history of generic functions / > multimethods / multiple dispatch systems. I was wondering if anyone > could give me pointers on good places to look. > > I've already traced the idea back to OOPLSA 1986. > Flavors > http://portal.acm.org/citation.cfm?id=28697.28698 > > and CommonLoops > http://portal.acm.org/citation.cfm?id=28697.28700&jmp=cit&coll=GUIDE&dl=GUIDE&CFID=57779486&CFTOKEN=37115212#CIT > > Did the idea originate with object systems in Lisp? And by 'the idea' > I mean, families of methods that are dispatched according to some > runtime characteristic of all the arguments. > > Many thanks, > Aemon Flavors was very early with things like multiple-inheritance and mixins. It was a message passing OO system. Loops at Xerox was also very early on the scene. (see the Loops Manual for its extensive capabilities). CommonLoops was later influenced by Loops and Flavors. Common Lisp added Multimethods and Generic Functions. New Flavors added 'generic functions' with single dispatch to Flavors. CLOS combines various features of CommonLoops and New Flavors. The first CLOS implementation was based on Xerox' 'Portable CommonLoops' (PCL) code. -- http://lispm.dyndns.org/
From: Pascal Costanza on 15 Oct 2009 03:02 Aemon wrote: > I'm doing a bit of research on the history of generic functions / > multimethods / multiple dispatch systems. I was wondering if anyone > could give me pointers on good places to look. > > I've already traced the idea back to OOPLSA 1986. > Flavors > http://portal.acm.org/citation.cfm?id=28697.28698 > > and CommonLoops > http://portal.acm.org/citation.cfm?id=28697.28700&jmp=cit&coll=GUIDE&dl=GUIDE&CFID=57779486&CFTOKEN=37115212#CIT > > Did the idea originate with object systems in Lisp? And by 'the idea' > I mean, families of methods that are dispatched according to some > runtime characteristic of all the arguments. This idea doesn't originate with Lisp, but with EL1 (which looks somewhat like a variant of Pascal, or so). See http://doi.acm.org/10.1145/360980.360992 Pascal -- My website: http://p-cos.net Common Lisp Document Repository: http://cdr.eurolisp.org Closer to MOP & ContextL: http://common-lisp.net/project/closer/
|
Next
|
Last
Pages: 1 2 Prev: case sensitiveness for reader/printer Next: URL to image illustrating parenthesisfobia? |