return in loop for ?

Mike Meyer mwm at mired.org
Mon Nov 28 20:12:48 EST 2005


Paul Rubin <http://phr.cx@NOSPAM.invalid> writes:
> I don't know about the BCPL type verifier but every statically typed
> language verifies certain assertions about the types of expressions
> and this is useful.

BCPL is untyped. You can perform any operation on any variable. You
can use the floating point add op on a pair of ints, or a pair of
function pointers. It doesn't care - it doesn't know what types the
variables are.

The type verifier extracted type information from context, and
propogated that through the system to look for places where the
programmer applied an operation to a type for which it was
inappropriate. It found bugs in itself.

> I don't really know enough about this type stuff to discuss it
> sensibly at the moment.  There's a book I want to read, "Types and
> Programming Languages" by Benjamin Pierce, which is supposed to
> explain it pretty well.  It's supposed to be excellent.  But I haven't
> had a chance to sit down with a copy yet.

I've been looking through it. It deals with type correctness, and by
association, evalulation completion. There are some fairly complex
systems in it. He does promise to reveal the features of programming
languages that cause the programs (or their type validation) to fail
to terminate.
   
   <mike
-- 
Mike Meyer <mwm at mired.org>			http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.



More information about the Python-list mailing list