Newsgroups: comp.lang.dylan
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!swrinde!elroy.jpl.nasa.gov!llyene!wlbr!voder!apple.com!gallant.apple.com!news
From: Walter Smith <wrs@apple.com>
Subject: Re: Dylan Runtime Environment
Sender: news@gallant.apple.com
Message-ID: <1995Jan31.043228.3659@gallant.apple.com>
Date: Tue, 31 Jan 1995 04:32:28 GMT
X-Xxdate: Mon, 30 Jan 1995 12:29:51 GMT
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=ISO-8859-1
References: <MARCOXA.95Jan20101109@mosaic.nyu.edu> <3fn7p6$d73@news.u.washington.edu> <3g9mum$iqr@darkstar.UCSC.EDU> <3gb3f0$oht@eccdb1.pms.ford.com>
Mime-Version: 1.0
Organization: Apple Computer, Inc.
X-Newsreader: Nuntius Version 1.3b19_68K
Lines: 23

Wow, I had no idea this would cause such a fuss.

Ken Fox, fox@pt0204.pto.ford.com writes:
> If you want the *compiler* to do this for you automatically, it is going
> to be *much* more than a simple change.

Especially so in languages with exceptions (like NewtonScript and Dylan),
since one possible result of

        x := Array(100, nil);

is that Array will generate an exception.  Naturally, you would expect the
previous value of x to be retained in that case, wouldn't you?  So without
some fancy liveness analysis, the compiler can't nil out x for you before
calling the Array function.

- W

---------------------------------------------------------------------------
Walter Smith                                        Internet: wrs@apple.com
Newton Software                                     AppleLink: WALTER.SMITH
Apple Computer, Inc.     PGP key at ftp://ftp.apple.com/pub/wrs/PGP-key.asc
+1 408 974 5892            E1 20 C3 0A DE 27 89 06  0B 35 08 65 0C FB A7 41
