Here is the latest OCaml Weekly News, for the week of November 21 to 28, 2017.
Archive: https://discuss.ocaml.org/t/obuild-v0-1-9-is-4-06-0-compilant/1165/1UnixJunkie announced:
Thanks to the obuild maintainer Jerome Maloberti and contributions from Jacques Pascal Deplaix and Andy Li. This is already in the opam repository.
Archive: https://discuss.ocaml.org/t/ann-minivpt-2-0-0-in-opam/1166/1UnixJunkie announced:
The vantage point tree implementation in OCaml has a new functorial interface. Thanks to Ilias Garnier for contributing. Toplevel usage example: #require "minivpt";; module Point_2D = struct type t = float * float let dist (x0, y0) (x1, y1) = let square x = x *. x in sqrt (square (x0 -. x1) +. square (y0 -. y1)) end module Vpt = Vp_tree.Make(Point_2D) --> module Vpt : sig type t = Vp_tree.Make(Point_2D).t val create : Point_2D.t list -> t val nearest_neighbor : Point_2D.t -> t -> float * Point_2D.t val to_list : t -> Point_2D.t list val is_empty : t -> bool end
Archive: https://discuss.ocaml.org/t/ann-ocaml-mariadb-0-9-0/1170/1Andre Nathan announced:
I've released a new version of OCaml-MariaDB. The main change is that now library users are expected to call `Mariadb.library_end` explicitly when they are done using the library. Previously this function was called automatically after `Mariadb.close`. While this is fine when linking to libmysqlclient, it breaks the Connector/C (libmariadbclient) when multiple database connections are instantiated. This problem was reported by Donovan Mueller. This release also includes contributions by Petter Urkedal and Jan Pöschko.
Archive: https://sympa.inria.fr/sympa/arc/caml-list/2017-11/msg00059.htmlBob announced:
Archive: https://discuss.ocaml.org/t/ocaml-hack-event-4-06-opam-fixes-compiler-projects/1181/1gemmag announced:
The recent OCaml 4.06 release has made the long-awaited switch to immutable strings by default. However, this has resulted in a significant number of opam packages requiring modifications to build - we are hosting an OCaml Hack Evening on **Thursday 7th December from 19:00-22:30 at Pembroke College, Cambridge** to fix as many as possible. Please indicate your interest via the [Doodle](https://doodle.com/poll/khqk6i49r4828apu) by Thursday 30th November. If you cannot physically attend, but would like to help fix up packages in the meantime / during the event in your local timezone, check [Obi for the failures](http://obi.ocamllabs.io/triage.html). Fix all the red things :P ---- **When**: Thursday 7 December 2017, 19:00 - 22:30 **Where**: The Thomas Gray Room, Pembroke College, Cambridge CB2 1RF **Who**: anyone interested in improving OCaml. Knowledge of OCaml programming will obviously be helpful, but prior experience of working on OCaml internals isn't necessary **Refreshments**: Finger buffet in hack room **What**: Fixing opam packages, fixing bugs, implementing new features, learning about OCaml internals **Wiki**: https://github.com/ocamllabs/compiler-hacking/wiki The OCaml 4.06 release featured safe-string as the default rather than optional as per previous releases. The focus of this event will be to work on the opam repository to [fix up as many packages as possible](http://obi.ocamllabs.io/triage.html), and also to publish a guide on ocamllabs.io detailing how to migrate your packages for wider use. As well as fixing up opam packages, you can find information on [mini projects and other compiler projects](https://github.com/ocamllabs/compiler-hacking/wiki/Things-to-work-on) on the wiki. The evening will also feature a short (5-10 min) presentation about the recent MirageOS Marrakech Hack Retreat.Anil Madhavapeddy then added:
Anyone who can't make it to Cambridge -- we could congregate in #ocaml as well :-)
Archive: https://discuss.ocaml.org/t/ann-secp256k1-ml-0-3-2/1190/1Davide Gessa announced:
Hi, this is my first post here, and I would like to announce the new release of the ocaml library secp256k1-ml. This library wrap the secp256k1 EC(DSA) library into an OCaml library. At the moment only a subset of functionalities are available: * Context: create, clone, destroy, randomize * Elliptic curve: public key creation * ECDSA: verify, sign, recover This library was first released by me, but Vincent Bernardoff and Yoichi Hirai helped to improve the library. Repository: https://github.com/dakk/secp256k1-ml Opam page: https://opam.ocaml.org/packages/secp256k1/cfcs asked and Davide Gessa replied:
> Do you have plans to include an OCaml implementation as well? Not in the short term and not in this packages (which is a wrapper of libsecp). Atm there is a pure ocaml ECC implementation here: https://github.com/nickgian/ECC-OCaml
Archive: https://discuss.ocaml.org/t/ann-bitcoinml-0-3-1/1191/1Davide Gessa announced:
Bitcoinml is a Bitcoin data-structures library for OCaml. This project is directly related to **letchain** (https://github.com/dakk/letchain), an OCaml Bitcoin full-node implementation still work-in-progress. Bitcoinml provides support for the following data-structures: * Address (with also bech32 addresses) * Block * Block_lazy (lazy block evaluation) * Hash * Merkleroot * Script (script execution, common pattern recognizer) * Tx (In, Out, Witness) * Varint (CompactSize) * Params (network parameters for BTC, XTN and BCH) Repository + odoc: https://github.com/dakk/bitcoinml
Archive: https://sympa.inria.fr/sympa/arc/caml-list/2017-11/msg00071.htmlRichard W. M. Jones announced:
Here is a sneak peek at some potential future features of the Ocaml compiler, discussed by their implementers in these Github Pull Requests. - Add Filename.quote_command function https://github.com/ocaml/ocaml/pull/1492
Here are links from many OCaml blogs aggregated at OCaml Planet, http://ocaml.org/community/planet/. Software Engineer (Haskell, Full Stack) at Capital Match (Full-time) https://functionaljobs.com/jobs/9053-software-engineer-haskell-full-stack-at-capital-match Eighteenth OCaml compiler hacking evening at Pembroke, Cambridge http://ocamllabs.github.com/compiler-hacking/2017/11/21/eighteenth-compiler-hacking-december Migration to GitHub is complete https://coq.inria.fr/news/140.html
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.