[net.lang] strong types & weak languages

mac@uvacs.UUCP (12/01/83)

Another word on the drawbacks of strong typing (I used to do stencils on a
manual Smith-Corona).

Strong typing gets in the way of generic operations.  In Pascal, array
operations can't be generic to several sizes of array.

In Ada, sorting can't be generic to several types of array.  Ada, however,
has the generic stuff to get around this.  This handles many of the
problems caused by strong typing.  It doesn't allow generic control
structures (no procedure parameters).  Ada generic stuff is pretty clumsy
anyway.

Actor languages (like Mr.  Elliott, I haven't really used one, so this is
based on what I think them to be) seem to have the right mix of strong and
weak typing.  The actors only respond to messages that make sense to them
(strong typing), but the method may vary from object to object (weak
typing).

A classic example is the sparse array.  You'd like to be able to pass it to
the matrix routines, but to implement it in some strange and wonderful way.
The array should respond to subscripting, but it's not the caller's
business what the actual representation is.

Alex Colvin
 ARPA: mac.uvacs@csnet-relay CS: mac@virginia USE: ...uvacs!mac