Re: to have labels or not

From: Brian Rogoff (bpr@best.com)
Date: Wed Mar 29 2000 - 22:32:18 MET DST

  • Next message: John Max Skaller: "Re: variables in 'let rec'"

    On Sat, 25 Mar 2000, John Max Skaller wrote:
    > Jacques Garrigue wrote:
    > > > So here's a suggestion. Get rid of classic mode.
    > > > But have TWO complete standard libraries:
    > > >
    > > > module Classic = .. put classic modules here ..
    > > > module Olabl = put labelled versions here
    > >
    > > We thought about that. And even tried it before releasing 2.99.
    > > I am the one who pushed against this solution, because I felt this
    > > would really cause a community split.
    >
    > The community started out split, and has been brought closer together
    > by the ocaml/olabl merger. But the community is _still_ split because
    > the usage of the modes is incompatible: we have two languages and one
    > library.
    > The way I see it, two libraries and one language reduces the split
    > again.
    > I do _not_ see this as idea -- OR permanent. But having two libraries
    > is a temporary hack to allow a full merger of the languages, and to
    > focus on an acceptable compromise to get one library.

    I agree with John Skaller on this. Two libraries seems like a better
    compromise than two modes. There is also some precedent here in that
    the standard libraries were never "OO-ized" after an object system was
    added to Caml.

    There just doesn't seem to be a good solution to this problem, i.e., one
    which will leave everyone happy. This is the human engineering part of
    programming language design, and since it appears a lot of Caml programmers
    find labels too heavy for their programming style I think we should go
    with the rule "When in doubt, leave it out". Out of the standard library
    that is. I'm not happy with this, as I prefer the labeled style, but it
    appears that the community is already somewhat split.

    Of course, some people may complain (as Jacques suggested) about the
    labels in certain libraries infecting their code if modern/labeled mode
    became the only mode but I think that's a minor problem that can be solved
    by those people by writing wrappers.

    > BTW: I'm not claiming two libraries is the right solution
    > either. I really don't know.

    Yes, it's certainly not a solution that makes you slap your head and go
    "Why didn't I think of that?" but it seems to be an improvement.

    -- Brian



    This archive was generated by hypermail 2b29 : Sun Apr 02 2000 - 23:30:26 MET DST