🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #3322

Re: Dynamic typing (part 3)

#3322
From: David Gudeman
Date: Mon, 01 Apr 1991 21:22
40 lines
2275 bytes
In article  <3073:Mar2820:38:5191@kramden.acf.nyu.edu> Dan Bernstein writes:
]First, static typing is a simpler, more general, and more expressive
]underlying semantic model.

Nonsense.  How can it be simpler if it requires more details from the
programmer?  Statically typed languages are always more complicated in
the sense that they impose extra restrictions on expressions to make
static typing typing possible.  These extra restrictions are
complications.  By the same argument, static typing cannot possibly be
more general or more expressive.  You can write any expression with
dynamic typing that you can write with static typing, the reverse is
not true.  I will not credit the notion that being able to have the
computer check the static types of variables adds to the power or
expressiveness of a language.  Those terms are not rigorously defined
at this point, but my intuition rebels at the very notion.  Creating
restrictions cannot add to power or expressiveness.

]Ah! A real issue!

If you don't think the other issues are "real", why do you keep
arguing them?

] In Q's any.h, an ``any'' variable comes with a number
]of constraints: if x.type == anytype(int), for example, then
]eq(typeof(x.value),int). (Here anytype and typeof are functions
]evaluated at the preprocessing level; anytype is defined by any.h and
]produces a run-time value, but typeof merely produces a token that must
]be used at compile time.)

I thought so.  Your preprocessor is not a preprocessor at all.

If you can write expressions that look just like dynamic typing, then
you have dynamic typing.  Implementation details are unimportant.  It
is of no value to the programmer to know at what stage of the compiler
the dynamic typing gets done.  Dividing compilation into transparent
stages is an unnecessary complexity.
--
					David Gudeman
gudeman@cs.arizona.edu
noao!arizona!gudeman
Technical Details
Message-ID: <1362@optima.cs.arizona.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!swrinde!cs.utexas.edu!asuvax!noao!arizona!gudeman

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!swrinde!cs.utexas.edu!asuvax!noao!arizona!gudeman
From: gudeman@cs.arizona.edu (David Gudeman)
Newsgroups: comp.lang.misc
Subject: Re: Dynamic typing (part 3)
Message-ID: <1362@optima.cs.arizona.edu>
Date: 1 Apr 91 21:22:24 GMT
Sender: news@cs.arizona.edu
Lines: 40