🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #3733

Re: A Hard Problem for Static Type Systems

#3733
From: Stephen P Spackman
Date: Fri, 03 May 1991 11:12
44 lines
2980 bytes
In article <51984@nigel.ee.udel.edu> new@ee.udel.edu (Darren New) writes:

|Machine language is weakly and dynamically typed. C++ is (mostly) strongly

I have to disagree. A good machine language (one with no Catch Fire &
Burn instructions) for a machine without programmer-visible caching is
both strongly and statically typed, simply by virtue of the fact that
all consequences of a given machine state are defined. You are making
the mistake of imagining that addresses and ints and so forth exist in
object code; but they don't. Those are abstractions in your mind.
Ultimately they are NOT represented in the machine model. Bits go
here, bits go there, the memory holds bits and nothing else. The
(only) data type is the bit....

It's kind of trivial and uninteresting, but if Smalltalk is strongly
typed then so is machine language (and by the same argument: all zero
possible mis-assignments are successfully trapped); and if C is
statically typed then so is machine language (because bits are stored
in bits and that's the whole story).

|[...] Isn't "segmentation violation" a "message not understood" message?

Nope, it's a perfectly sensible part of instruction execution that is
used heavily in the implementation of operating systems, memory
managers and so forth.

|It all depends on how you look at it. [...]

Therefore the phenomenon's not really there in the langauage....

I'm really not trying to be silly here. The fact that machines are
strongly typed underlyingly is the thing that makes secure
implementations possible. If something could happen to be in memory
that wasn't a bit, no language layered above could ever have
guaranteed behaviour... (which is why it's bad when the hardware fails
- untrapped type violations then CAN occur.... :-).

It's sensible to ask, then, how we can implement UNTYPED langauges on
top of this typed substrate. My guess is it's because memory is
finite.... Which is to say, it's done with smoke & mirrors.
----------------------------------------------------------------------
stephen p spackman         Center for Information and Language Studies
systems analyst                                  University of Chicago
----------------------------------------------------------------------
Technical Details
Message-ID: <STEPHEN.91May3051250@estragon.uchicago.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!caen!uwm.edu!ux1.cso.uiuc.edu!midway!midway!stephen
References: <2392@optima.cs.arizona.edu> <3156@opal.cs.tu-berlin.de> <ROCKWELL.91Apr25193638@socrates.socrates.umd.edu> <51984@nigel.ee.udel.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!caen!uwm.edu!ux1.cso.uiuc.edu!midway!midway!stephen
From: stephen@estragon.uchicago.edu (Stephen P Spackman)
Newsgroups: comp.lang.misc
Subject: Re: A Hard Problem for Static Type Systems
Message-ID: <STEPHEN.91May3051250@estragon.uchicago.edu>
Date: 3 May 91 11:12:50 GMT
References: <2392@optima.cs.arizona.edu> <3156@opal.cs.tu-berlin.de>
 <ROCKWELL.91Apr25193638@socrates.socrates.umd.edu>
 <51984@nigel.ee.udel.edu>
Sender: news@midway.uchicago.edu (NewsMistress)
Organization: University of Chicago CILS
Lines: 44
In-Reply-To: new@ee.udel.edu's message of 26 Apr 91 22: 13:16 GMT