🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #110

Re: Modula-3, Fortran, Numbers & Aliens

#110
From: Raul Deluth Miller-Rockwell
Date: Wed, 08 Apr 1992 20:16
48 lines
3032 bytes
Jim Giles:
   Whatever you call it, an identified may refer to something of
   different type in different parts of the program - something which
   I consider to be undesirable.

In a sense, this is true, but I think it misses a big issue:  there is
a major distinction between 'type' and 'storage class'.

'type' is a concept used when talking about, for instance, the domain
of a function.  For example, 'prime number' might be considered a
type.  Or, less arbitrarily, 'symetric matrix' might be a type.

'storage class' is a concept used when talking about the machine
representation of data.  This might be considered a 'type', but only
when discussing low-level function, or partial functions, on that
machine.

J will support the type 'symmetric matrix' in the same fashion it will
support the type 'integers in the range 32767 down to -32768'.

Forcing the programmer to concentrate on machine specific types is not
a good way to encourage robust or portable code.  Nor does it "force
the programmer to not change the type of an identifier" -- at least,
this is the case for problems where the machine type is only an
approximation of the desired type.

This is a complex issue.  I don't think it's a good idea to remove
responsibility for this complexity from the language implementor (who
concentrates on porting the language to a specific machine) just to
dump it on the programmer (who concentrates on whatever arbitrary
problem domain she's interested in).  Not if it means the language is
less expressive...

Anyways, in a sufficiently expressive language there is little need to
re-declare identifiers.  Re-declaring identifiers is only necessary
when you're explicitly dealing with time, and even there it's not
always necessary.  But to prevent such activity altogether requires
unwarranted assumptions about the problem domain of the programmer.
[And, since similar facilities are available in the operating system,
forces the programmer to system specific implementations when it might
not be necessary.]

On the other hand, if your goal is verbosity for its own sake, forcing
special case solutions is, in general, a good way to achieve it.

-- 
Raul Deluth Miller-Rockwell                   <rockwell@socrates.umd.edu>
The U.S. government went another thousand million dollars into debt today.
Technical Details
Message-ID: <ROCKWELL.92Apr8151628@socrates.umd.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!haven.umd.edu!socrates!socrates!rockwell
References: <ROCKWELL.92Apr5115242@socrates.umd.edu> <1992Apr6.193950.5862@newshost.lanl.gov> <STEPHEN.92Apr6203432@estragon.uchicago.edu> <id.KXOO.61F@ferranti.com> <1992Apr8.170023.1191@newshost.lanl.gov>

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.misc
Path: arc1-ca.pugleaf.net!sparky!uunet!haven.umd.edu!socrates!socrates!rockwell
From: rockwell@socrates.umd.edu (Raul Deluth Miller-Rockwell)
Subject: Re: Modula-3, Fortran, Numbers & Aliens
In-Reply-To: jlg@cochiti.lanl.gov's message of 8 Apr 92 17:00:23 GMT
Message-ID: <ROCKWELL.92Apr8151628@socrates.umd.edu>
Sender: rockwell@socrates.umd.edu (Raul Deluth Miller-Rockwell)
Organization: Traveller
References: <ROCKWELL.92Apr5115242@socrates.umd.edu>
 <1992Apr6.193950.5862@newshost.lanl.gov>
 <STEPHEN.92Apr6203432@estragon.uchicago.edu> <id.KXOO.61F@ferranti.com>
 <1992Apr8.170023.1191@newshost.lanl.gov>
Date: Wed, 8 Apr 1992 20:16:28 GMT