Hello, Here is the latest OCaml Weekly News, for the week of February 06 to 13, 2018.
1) Catching type error in toplevel 2) first release of bst: a bisector tree implementation 3) Which XML libraries do you recommend? 4) containers 2.0 5) Exceptions vs Option 6) Other OCaml News ======================================================================== 1) Catching type error in toplevel Archive: <https://discuss.ocaml.org/t/catching-type-error-in-toplevel/1538/1> ------------------------------------------------------------------------ ** Weng Shiwei asked: I am working on a grading script to grade students' submission. The general idea currently is loading a submission file in toplevel and running testcases on many functions in that submission file. I choose toplevel is due to some functions in submission may have type error. Saying one function in submission accepts only one argument but in fact it needs two arguments. If I try compiling the submission together with grading code, type error will stop the whole compiling. However, if I run it in toplevel, only this testcases fail, and the following testcases can still run, which may give them partial credits. This is the background. My questions is: - 1. Is it possible to catch type error in toplevel? If I could this, I can give better feedback - 2. Could some test framework like OUnit help? I admit using toplevel is somewhat hacking. The tricky part is I have to be enough tolerable to submission files. ** Gabriel Radanne replied: You might want to look at the work done for the OCaml MOOC: - ICFP [paper](<https://dl.acm.org/ft_gateway.cfm?id=3110248&ftid=1902061&dwn=1&CFID=5521532&CFTOKEN=75e77e9352adafe6-3CA9280E-FBD1-3243-FB03B2D0A9C845A7>) and [video](<https://www.youtube.com/watch?v=eVGvDqA_3u8>) - Hosted version and sources: <https://try.ocamlpro.com/fun-demo/> They do precisely what you describe (and quite a bit more, in fact). ======================================================================== 2) first release of bst: a bisector tree implementation Archive: <https://sympa.inria.fr/sympa/arc/caml-list/2018-02/msg00013.html> ------------------------------------------------------------------------ ** Francois BERENGER announced: A bisector tree allows to do fast but exact nearest neighbor searches in any space provided that you have a metric (function) to measure the distance between any two points in that space. It also allows proximity queries, as in "all points within distance d from my query point". Cf. this article for details: "A Data Structure and an Algorithm for the Nearest Point Problem"; Iraj Kalaranti and Gerard McDonald. ieeexplore.ieee.org/iel5/32/35936/01703102.pdf The code is here: <https://github.com/UnixJunkie/bisec-tree> It might interest users of vantage point trees (minivpt, and vpt in opam), kd-trees and such. I think bst should be faster than vpt in most use cases. It should appear in opam shortly. ======================================================================== 3) Which XML libraries do you recommend? Archive: <https://discuss.ocaml.org/t/which-xml-libraries-do-you-recommend/1535/4> ------------------------------------------------------------------------ ** Anton Bachin continued this thread: For completeness, there is also [Markup.ml](<https://github.com/aantron/markup.ml>). It is focused on HTML5, but it also includes an XML parser with the same interface. I would recommend xmlm for most use cases. ======================================================================== 4) containers 2.0 Archive: <https://discuss.ocaml.org/t/ann-containers-2-0/1552/1> ------------------------------------------------------------------------ ** Simon Cruanes announced: I'm happy to announce that Containers 2.0 is released and should land on opam shortly. There were some improvements since the last [announce](<https://discuss.ocaml.org/t/ann-containers-2-0-alpha1/1454>). The new changelog is [there](<https://github.com/c-cube/ocaml-containers/blob/6b9f39d2240b22a82a2167dee7d27c169ba530a6/CHANGELOG.adoc>). However, the core of the changes is that dangerous polymorphic operators are hidden after `open Containers`, and are not relied upon anymore. There is a [migration guide](<https://github.com/c-cube/ocaml-containers/blob/f78ee1bf92e9de4ae71ea2e506d7c576229654ff/README.adoc#migration-guide>) for updating your code to 2.0. In short, `open Pervasives` following `open Containers` might ease the transition; printing functions are all named `pp`; and some optional arguments are now mandatory. ======================================================================== 5) Exceptions vs Option Archive: <https://discuss.ocaml.org/t/exceptions-vs-option/1559/3> ------------------------------------------------------------------------ ** Didier Wenzek said: This recent post on [`r/ocaml`](<https://www.reddit.com/r/ocaml/comments/7x4m0e/composable_error_handling_in_ocaml/>) explores 4 ways to handle errors in OCaml. An interesting reading. ======================================================================== 6) Other OCaml News ------------------------------------------------------------------------ ** From the ocamlcore planet blog: Here are links from many OCaml blogs aggregated at OCaml Planet, <http://ocaml.org/community/planet/>. OCamlPro?s Liquidity-lang demo at JFLA2018 ? a smart-contract design language <http://www.ocamlpro.com/2018/02/08/liquidity-smart-contract-deploy-live-demo-on-tezos-alphanet-jfla2018/> ======================================================================== Old cwn ------------------------------------------------------------------------ If you happen to miss a CWN, you can send me a message (alan.schm...@polytechnique.org) and I'll mail it to you, or go take a look at the archive (<http://alan.petitepomme.net/cwn/>) or the RSS feed of the archives (<http://alan.petitepomme.net/cwn/cwn.rss>). If you also wish to receive it every week by mail, you may subscribe online at <http://lists.idyll.org/listinfo/caml-news-weekly/> . ======================================================================== -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Monthly Athmospheric CO₂, Mauna Loa Obs. 2018-01: 407.98, 2017-01: 406.13
signature.asc
Description: PGP signature
_______________________________________________ caml-news-weekly mailing list caml-news-weekly@lists.idyll.org http://lists.idyll.org/listinfo/caml-news-weekly