Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] Polymorphism and the "for" loop
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2004-10-22 (01:20)
From: skaller <skaller@u...>
Subject: Re: [Caml-list] Polymorphism and the "for" loop
On Fri, 2004-10-22 at 05:11, David Brown wrote:
> On Thu, Oct 21, 2004 at 07:50:43PM +0100, Jon Harrop wrote:

> Because its only a warning, not an error.  g is allowed to return any type.
> It could be argued that the loop expression must be of type unit, then this
> could also be inferred by type inference.

It can also be argued chosing unit for non-returning function
is the wrong choice and that correct choice is void.

In particular given

f: unit -> unit

you can write

f ( f () )

which is silly. Given

f: unit -> void

that expression won't type check. The result is to force
'commands' with side effects and no return values 
be 'top level' (or at least arguments of for, ';', etc).

This seems to work well in Felix.

John Skaller,
voice: 061-2-9660-0850, 
snail: PO BOX 401 Glebe NSW 2037 Australia
Checkout the Felix programming language

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: