Newsgroups: comp.lang.prolog
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!europa.eng.gtefsd.com!library.ucla.edu!galaxy.ucr.edu!ihnp4.ucsd.edu!munnari.oz.au!cs.mu.OZ.AU!munta.cs.mu.OZ.AU!conway
From: conway@munta.cs.mu.OZ.AU (Thomas Charles CONWAY)
Subject: Re: meta-programming, strong typing, and monads
Message-ID: <9434110.9719@mulga.cs.mu.OZ.AU>
Sender: news@cs.mu.OZ.AU
Organization: Computer Science, University of Melbourne, Australia
References: <CztzuC.H1w@info.bris.ac.uk> <3bck5l$ph9@hitchcock.dfki.uni-sb.de> 	<BEVAN.94Nov29134503@panther.cs.man.ac.uk> <D019tD.M91@info.bris.ac.uk> <THOMASL.94Dec1134811@arnold.csd.uu.se>
Date: Tue, 6 Dec 1994 23:06:47 GMT
Lines: 27

thomasl@arnold.csd.uu.se (Thomas Lindgren) writes:

>In article <D019tD.M91@info.bris.ac.uk> jwl@miki.cs.bris.ac.uk (John Lloyd) writes:
>   OK, in this case, maybe some kind soul would be willing to clarify the 
>   terminology for us by giving careful definitions of the major concepts 
>   (static/dynamic, strong/weak, etc) for type systems with some illustrative 
>   examples? Anyway, I do agree that the Goedel type system is static, by any
>   reasonable definition of that term.
>
>Strongly typed: A strongly typed program cannot 'go wrong' (in
>	Milner's words) -- that is, dump core, produce a wrong
>	answer or similar stuff. Note that runtime errors are 
>	still possible, but are clearly marked as such. (Such
>	as accessing arrays out of the declared bounds, which is
>	seldom statically checked.)
>	(Examples: Lisp, SML, Goedel, Prolog.)
>

I have always considered Prolog to be weakly typed, because programs
can go wrong: they can unexpectedly fail, which while not has dramatic
as dumping core, is not what I would consider a successful completion.

pax
Thomas
-- 
Thomas Conway                                           conway@cs.mu.oz.au
AD DEUM ET VINUM
