[scott@chronis.pobox.com: Re: [Types-sig] namespaces]

scott scott@chronis.pobox.com
Fri, 21 Jan 2000 11:05:12 -0500


Forgot to send this on to the list again :)

----- Forwarded message from scott <scott@chronis.pobox.com> -----

Date: Fri, 21 Jan 2000 10:07:34 -0500
From: scott <scott@chronis.pobox.com>
To: Greg Stein <gstein@lyra.org>
Subject: Re: [Types-sig] namespaces
X-Mailer: Mutt 0.95.7i
In-Reply-To: <Pine.LNX.4.10.10001210554270.13911-100000@nebula.lyra.org>

Forwarded to list [edited slightly]

On Fri, Jan 21, 2000 at 06:19:05AM -0800, Greg Stein wrote:
> On Fri, 21 Jan 2000, scott wrote:
> > Stack evaluation looks good, that clears up a lot for me re: runtime
> > behavior. but there are problems with both !  (pushes type checking
> > errors from compile time to runtime)
> 
> '!' can *definitely* invoke a compile-time check:
> 
>   x = 5
>   y = x!string  # Boom!
> 

can or always will? can is easy and doesn't translate to anything
beyond what could be done with a type checker that disallows
alternate types.

You're definition of ! states that it can raise a runtime error.  In
the cases where that can happen, it doesn't serve the purpose of
static type checking.  The extent to which it does raise runtime
errors is exactly what is incomplete and incompletable about a type
checking system that uses it to disambiguate alternates.

scott



----- End forwarded message -----