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
status of some big "important" features?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Chris Hecker <checker@d...>
Subject: status of some big "important" features?

Hi, what's the status of adding these important (to me :) features:

1.  Overloading?  Now that I'm writing some real ocaml code, not only is the + vs. +. thing ugly and killing me in mixed int/float code (((float i)/.8.*.4.*.pi-.2.*.pi <- yuck!, I'm half way to writing an emacs syntax table that hides the damn . after the arithmetic ops :)), it would really make life easier to have things like fst be definable for ('a,'b) and ('a,'b,'c), etc., or have functions with different numbers of arguments (the label default args only go so far and aren't really dynamic enough).  I know this is hard with type inference, but is it possible?

2.  Module recursion or Tom Hirschowitz's mixin modules?  Forward declarations?  Anything?

3.  Pierre Weis's generics stuff ($a, etc.) from a post in April?  Hopefully as compile-time optimizable as possible where possible to match C++ templates for speed when you don't do something like put generics in a data structure.

Any status updates, dates, addresses to send money to speed things up? :)


PS.  Minor question I thought of the other there any way to write "nth" for tuples (as opposed to "fst", which is hard-coded to 2-tuples)?  This is related to the overloading and generic questions above, but it also touches on some introspection issues, since nth would need to know the "length" of the tuple to either recurse or loop.  I guess I could use camlp4 for this if I really wanted to...couldn't I?