From: Simon Cruanes <simon.cruanes.2007@m4x.org>
To: Christophe Troestler <Christophe.Troestler@umons.ac.be>,OCaml
Mailing List <caml-list@inria.fr>
Subject: Re: [Caml-list] We need a rich standard library distributed with OCaml, really
Date: Fri, 28 Aug 2015 17:02:42 +0200 [thread overview]
Message-ID: <99BCDBE7-CB9C-416B-AFB6-EAA3E6F71BB1@m4x.org> (raw)
In-Reply-To: <20150828.140826.2157566405742612169.Christophe.Troestler@umons.ac.be>
[-- Attachment #1: Type: text/plain, Size: 3762 bytes --]
I strongly support the view that interoperability is important. Defining common, compatible types is necessary for a peaceful cohabitation of multiple stdlibs (types for json, xml, result, unicode, iterators, etc.) Some types should be provided by OCaml (result and Uchar imho); some other we should agree on. I tried to propose the structural type 'a sequence = ('a -> unit) -> unit as a glue between data structures (efficient, easy to provide, plays well with flambda) but so far Core and batteries do not use it.
About the licensing, we have a diverse set of licenses, afaict.
Cheers,
Le 28 août 2015 14:08:26 UTC+02:00, Christophe Troestler <Christophe.Troestler@umons.ac.be> a écrit :
>Hi,
>
>The topic of a richer standard library was discussed extensively in the
>past (before the advent of opam). I believe Yaron's opinion is the one
>generally agreed upon: the small core team should focus on the compiler
>and it is up to the community to take care of libraries.
>
>In the last 10 years, the community has not agreed on what the
>“improved” standard library should be, there always have been competing
>proposals and I do not see that stopping in the near future. I believe
>this is not a bad thing, after all some applications have special
>requirements — such as being able to be compiled to javascript — and it
>is hard for a single library to satisfy everybody without being
>bloated.
>
>However, as this discussion shows, there are a few places where we
>could do a better job.
>
>1. INTEROPERABILITY: While many, possibly overlapping, libraries may be
>seen as sign of liveliness of the community, they become a problem if a
>user has to write boiler plate code to use them together. Thus I would
>propose that we sit down together and define a minimal set of modules
>for interoperability purposes. Since these modules would in general
>only define some types, I propose to reserve the names type_* for that,
>possibly with a version number at the end — so newer versions can
>coexist with older ones and provide functions for backward
>compatibility. Examples of such modules are:
> - type_time: define date, time, and calendar types;
>- type_html: define a common representation for HTML documents (a
>library can of course provide its own but should also have a function
>to export to type_html);
> - type_xml
>- type_linear: a common, linear, exchange format between various
>containers (e.g. a lazy list);
> - etc.
>
>2. LICENSES: Every opam package comes with a license which should help
>companies to choose which ones to use. For the problem Hongbo
>mentioned, maybe one could develop a tool that does the following:
>given a white-list of licenses that the company has agreed are OK (e.g.
>ISC) and a list of opam packages, the tool would warn if any of the
>(recursive) dependencies does not have a “good” license.
>
>3. APPLICATION DOMAINS: A newcomer has to use resources like
>https://github.com/rizo/awesome-ocaml/blob/master/sotu.md to understand
>what packages are interesting for which domain. These resources are
>maintained by hand. We should agree on a list of tags for important
>application domains and add them to the appropriate opam packages. An
>up-to-date list (linked to each package, homepage,...) can then be
>generated automatically — and posted, say, to opam.ocaml.org
>
>One could also provide meta-packages to install sets of libraries with
>a certain tag — for example all of batteries packages (once split).
>
>My 0.02€,
>C.
>
>--
>Caml-list mailing list. Subscription management and archives:
>https://sympa.inria.fr/sympa/arc/caml-list
>Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>Bug reports: http://caml.inria.fr/bin/caml-bugs
--
Simon
[-- Attachment #2: Type: text/html, Size: 4000 bytes --]
next prev parent reply other threads:[~2015-08-28 15:10 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-27 2:52 Hongbo Zhang
2015-08-27 6:59 ` Christoph Höger
2015-08-27 7:18 ` Anthony Tavener
2015-08-27 8:17 ` Gabriel Scherer
2015-08-27 10:35 ` Romain Bardou
2015-08-27 19:55 ` Martin DeMello
2015-08-27 20:10 ` Yotam Barnoy
2015-08-27 23:24 ` Drup
2015-08-28 13:23 ` Philippe Veber
2015-08-27 20:17 ` Raoul Duke
2015-08-27 23:10 ` Martin Jambon
[not found] ` <20150827174554.14858.6618@localhost>
2015-08-27 18:42 ` [Caml-list] Fwd: " Emmanuel Surleau
2015-08-27 21:17 ` [Caml-list] " Paolo Donadeo
2015-08-27 21:51 ` Oliver Bandel
2015-08-27 21:56 ` Oliver Bandel
2015-08-27 22:04 ` Oliver Bandel
2015-08-28 0:50 ` Hongbo Zhang
2015-08-31 16:06 ` Stéphane Glondu
2015-08-31 16:14 ` Francois Berenger
2015-08-31 16:44 ` Hendrik Boom
2015-08-31 18:04 ` Ian Zimmerman
2015-08-31 17:26 ` Stéphane Glondu
2015-09-01 15:06 ` Anil Madhavapeddy
2015-08-31 17:34 ` Oliver Bandel
2015-09-01 13:46 ` Gabriel Scherer
2015-08-27 8:07 ` Sébastien Hinderer
2015-08-27 8:20 ` Daniil Baturin
2015-08-27 9:34 ` Edouard Evangelisti
2015-08-28 9:07 ` r.3
2015-08-27 8:12 ` Francois Berenger
2015-08-27 11:57 ` Drup
2015-08-27 14:17 ` Yaron Minsky
2015-08-27 16:00 ` Jesse Haber-Kucharsky
2015-08-28 0:33 ` Hongbo Zhang
2015-08-28 1:53 ` Daniel Bünzli
[not found] ` <20150828.140826.2157566405742612169.Christophe.Troestler@umons.ac.be>
2015-08-28 12:38 ` Thomas Braibant
2015-08-28 13:00 ` [Caml-list] opam license field (was Re: We need a rich standard library distributed with OCaml, really) Daniel Bünzli
2015-08-28 13:06 ` David Sheets
2015-08-28 14:01 ` [Caml-list] We need a rich standard library distributed with OCaml, really Oliver Bandel
2015-08-31 15:26 ` Hendrik Boom
2015-08-28 14:35 ` Alain Frisch
2015-08-29 19:02 ` David MENTRÉ
2015-08-31 12:37 ` Jon Harrop
2015-08-31 15:05 ` Emmanuel Surleau
2015-08-31 17:31 ` Oliver Bandel
2015-08-28 15:02 ` Simon Cruanes [this message]
2015-08-28 15:27 ` Gabriel Scherer
2015-08-28 15:51 ` Oliver Bandel
2015-08-31 18:40 ` Ashish Agarwal
2016-03-27 20:54 ` Jon Harrop
2016-03-27 21:21 ` Simon Cruanes
2016-03-27 23:48 ` Yaron Minsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=99BCDBE7-CB9C-416B-AFB6-EAA3E6F71BB1@m4x.org \
--to=simon.cruanes.2007@m4x.org \
--cc=Christophe.Troestler@umons.ac.be \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox