Hello
Here is the latest OCaml Weekly News, for the week of June 14 to 21, 2016.
Archive: https://sympa.inria.fr/sympa/arc/caml-list/2016-06/msg00068.html
Frédéric Bour announced:Merlin is an editor-independent tool to ease the developement of programs in OCaml. It aims at providing features available in modern IDEs such as: "as you type" error reporting, auto completion, source browsing ("jump to definition"), extraction of type, ... Merlin is available on opam and can be installed with `opam install merlin`. It can also be built from sources, available at https://github.com/the-lambda-church/merlin . As always you can find a full changelog at https://github.com/the-lambda-church/merlin/blob/master/CHANGELOG , but the highlights are: - Most notable is support for 4.03 and 4.02. Older versions are dropped. - Patches on OCaml frontend were rewritten from scratch. Behavior of typechecker and ppx extensions should be closer to the compiler. - Introduction of an infrastructure for plugging custom preprocessors. This feature is currently being used for Reason[1] support. # Editor support *Emacs*, *Vim* and *NeoVim* are directly supported. This version introduces support for Vim built with python 3. *Sublime Text* plugin is contributed by [2]. *Visual Studio Code* extension is contributed by [3]. Multiple contributions are offering *Atom* support. See [4] for more information. Many thanks to all contributors, including Anton Bachin, Benjamin San Souci, Chris Konstad, Hackwaly, Jordan Walke, Mario Rodas and Rudi Grinberg. We also thank JaneStreet for their continued support. [1]: http://facebook.github.io/reason [2]: https://github.com/cynddl/sublime-text-merlin [3]: https://marketplace.visualstudio.com/items?itemName=hackwaly.ocaml [4]: https://github.com/the-lambda-church/merlin/wiki/atom-from-scratch
Archive: https://sympa.inria.fr/sympa/arc/caml-list/2016-06/msg00089.html
Damien Doligez announced:Dear Ocaml contributors and users, I would like to call to your attention the section below, which was recently added to the CONTRIBUTING.md file in the OCaml source repository. Have a nice day, -- Damien ## Contributing to the standard library Contributions to the standard library are very welcome. There is some widespread belief in the community than the stdlib is somehow "frozen" and that its evolutions are mostly driven by the need of the OCaml compiler itself. Let's be clear: this is just plain wrong. The compiler is happy with its own local utility functions, and many recent additions to the stdlib are not used by the compiler. Another common and wrong idea is that core OCaml maintainers don't really care about the standard library. This is not true, and won't be unless one of the "alternative standard" libraries really gains enough "market share" in the community. So: please contribute! Obviously, the proposals to evolve the standard library will be evaluated with very high standards, similar to those applied to the evolution of the surface langage, and much higher than those for internal compiler changes (optimizations, etc). A key property of the standard library is its stability. Backward compatibility is not an absolute technical requirement (any addition to/of a module can break existing code, formally), but breakage should be limited as much as possible (and assessed, when relevant). A corollary is that any addition creates a long-term support commitment. For instance, once a concrete type or function is made public, changing the exposed definition cannot be done easily. There is no plan to extend dramatically the functional domain covered by the standard library. For instance, proposals to include support for XML, JSON, or network protocols are very likely to be rejected. Such domains are better treated by external libraries. Small additions to existing modules are much simpler to get in, even more so (but not necessarily) when: - they cannot easily be implemented externally, or when - they facilitate communication between independent external libraries, or when - they fill obvious gaps. Of course, standard guidelines apply as well: proper documentation, proper tests, portability (yes, also Windows!), good justification for why the change is desirable and why it should go into stdlib. So: be prepared for some serious review process! But yes, yes, contributions are welcome and appreciated. Promised.
Here is a sneak peek at some potential future features of the Ocaml compiler, discussed by their implementers in these Github Pull Requests. make string/bytes distinguishable in the underlying compiler implementation https://github.com/ocaml/ocaml/pull/596 Unboxed types https://github.com/ocaml/ocaml/pull/606 Whole program dead code elimination https://github.com/ocaml/ocaml/pull/608 Array data types https://github.com/ocaml/ocaml/pull/616
Here are links from many OCaml blogs aggregated at OCaml Planet, http://ocaml.org/community/planet/. Generic mappings over pairs http://blog.shaynefletcher.org/2016/06/generic-mappings-over-pairs.html Merlin 2.5.0 released with OCaml 4.03.0 support https://ocaml.io/w/Blog:News/Merlin_2.5.0_released_with_OCaml_4.03.0_support The real numbers in homotopy type theory (CCA 2016 slides) http://math.andrej.com/2016/06/15/the-real-numbers-in-homotopy-type-theory-cca-2016-slides/ forge.ocamlcore.org and related websites unstable http://forge.ocamlcore.org/forum/forum.php?forum_id=934
If you happen to miss a CWN, you can send me a message and I'll mail it to you, or go take a look at the archive or the RSS feed of the archives.
If you also wish to receive it every week by mail, you may subscribe online.