[Mono-list] Making a ruby.net compiler
Mon, 12 May 2003 12:50:04 +0100
I'm not on the Mono list, but Fergus cc'd me on this. =20
ILX discriminated unions should certainly allow the subsequent elements
to be named: it's one of the things I haven't got around to doing
properly yet. F# will one day also allow them to be optionally named -
you need this if only to get a truly decent quality set of accessors to
the datatype from other .NET languages.
BTW if you're interested in using F# on Mono and/or SSCLI then please
drop me an email. I'll put together a binary release of the compiler at
some point suitable for use on these platforms, and a source release
will make its way out at some point too.
Cheers & thanks,
From: Fergus Henderson [mailto:firstname.lastname@example.org.OZ.AU] On Behalf Of
Sent: 12 May 2003 10:29
To: Mono List
Cc: Don Syme
Subject: Re: [Mono-list] Making a ruby.net compiler
On 11-May-2003, Michal Moskal <email@example.com> wrote:
> 3. if you are familiar with ILX, you should remember .classunion type
> there, that just did discriminating unions.
> But I believe it isn't very good idea to put it in Mono, since it's
> very limited (namely it seems to fit OCaml variants, but not SML
> variants (things after of can have names)
I agree that fields of discriminated union alternatives should be
many languages which support discriminated unions, including Mercury,
Haskell, and Ada, allow or even require them to be named.
> or OCaml polymorphic=20
> variants (one polymorphic variant can be in several types)).
That's true, but how many other languages have OCaml-style polymorphic
Ordinary discriminated unions are present in a very large number of
languages, so the benefits for language interoperability of including
them in the underlying runtime are much higher. Also, I suspect that
there is more scope for optimizing the representation of ordinary
Fergus Henderson <firstname.lastname@example.org> | "I have always known that the
The University of Melbourne | of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S.