Newsgroups: comp.lang.dylan
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!udel!gatech!howland.reston.ans.net!xlink.net!news.ppp.de!news.Hanse.DE!wavehh.hanse.de!cracauer
From: cracauer@wavehh.hanse.de (Martin Cracauer)
Subject: Re: The new paper and static binding in dylan.
Message-ID: <1995Mar2.094738.4443@wavehh.hanse.de>
Organization: The Internet
References: <3iqht0$aa6@narnia.ccs.neu.edu> <1995Feb27.162850.10467@wavehh.hanse.de> <3j0vfm$506@cantaloupe.srv.cs.cmu.edu>
Date: Thu, 2 Mar 95 09:47:38 GMT
Lines: 36

ram@cs.cmu.edu (Rob MacLachlan) writes:

>In article <1995Feb27.162850.10467@wavehh.hanse.de>,
>Martin Cracauer <cracauer@wavehh.hanse.de> wrote:
>>
>>it doesn't say whether Dylan will offer static
>>binding. To reach C++'s speed, Dylan has to be able to do static binding and
>>inlining and carry that out so far that the necessary information is
>>taken into containers to operate on elements.

[...]

>I'm not completely sure what you mean about "taking into a container", but
>there is technology for inlining dynamically dispatched methods.  The best
>implemented example is in the various Self compilers.  In general
>this does involve duplicating code.

Sorry for beeing unclear. In fact my question was if one given
container implementation can be defined in a way that it's code is
duplicated and that each of the 'instances' is optimized to operate on
one given fixed element type.

'Inlining taken into the container' was my loosy expression for: Code
that retrieves an element from a container and calls a (sealed)
generic function on it can be compiled to code without runtime
typecheck or method lookup. Neither for the container access nor for
the call on an object that comes out of the container.

Are Dylan implementations expected to recognise when a used container
has elements of a sealed class and handle method calls on elements
retrieved from this container in the same way as method calls on
locally declared variables of a sealed type would be handled?

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Private email Martin.Cracauer@wavehh.hanse.de Fax +4940 522 8536. No NeXTMail!
