[cwn] Attn: Development Editor, Latest OCaml Weekly News

Alan Schmitt alan.schmitt at polytechnique.org
Tue Mar 23 02:05:35 PDT 2021


Hello

Here is the latest OCaml Weekly News, for the week of March 16 to 23,
2021.

Table of Contents
─────────────────

findlib-1.9.1
Conformist 0.2.1
Compiler Explorer now supports OCaml 4.12.0
Annoucement of OFLAT, a web-based platform to support courses on Formal Languages and Automata Theory
Old CWN


findlib-1.9.1
═════════════

  Archive:
  <https://sympa.inria.fr/sympa/arc/caml-list/2021-03/msg00014.html>


Gerd Stolpmann announced
────────────────────────

  a couple of installation problems slipped into findlib-1.9, mostly
  missing files in the release tarball, but also a FreeBSD
  incompatibility. For that reason, there is now findlib-1.9.1 fixing
  the problems (so far known, and I hope we caught them all).

  Same link as before:

  <http://projects.camlcity.org/projects/findlib.html>


Conformist 0.2.1
════════════════

  Archive: <https://discuss.ocaml.org/t/ann-conformist-0-2-1/7482/1>


jerben announced
────────────────

  I am happy to announce the release of conformist 0.2.1.

  [Conformist] deals with schema definition and validation. It supports
  decoding to bridge the gap between runtime types and static types
  without ppx.

  ┌────
  │ type occupation =
  │   | Mathematician
  │   | Engineer
  │ 
  │ type user =
  │   { occupation : occupation
  │   ; email : string
  │   ; birthday : int * int * int
  │   ; nr_of_siblings : int
  │   ; comment : string option
  │   ; wants_premium : bool
  │   }
  │ 
  │ let user occupation email birthday nr_of_siblings comment wants_premium =
  │   { occupation; email; birthday; nr_of_siblings; comment; wants_premium }
  │ ;;
  │ 
  │ let occupation_decoder = function
  │   | "mathematician" -> Ok Mathematician
  │   | "engineer" -> Ok Engineer
  │   | _ -> Error "Unknown occupation provided"
  │ ;;
  │ 
  │ let occupation_encoder = function
  │   | Mathematician -> "mathematician"
  │   | Engineer -> "engineer"
  │ ;;
  │ 
  │ let user_schema =
  │   Conformist.(
  │     make
  │       Field.
  │ 	[ custom
  │ 	    occupation_decoder
  │ 	    occupation_encoder
  │ 	    "occupation"
  │ 	    ~meta:()
  │ 	; string "email"
  │ 	; date "birthday"
  │ 	; int ~default:0 "nr_of_siblings"
  │ 	; optional (string "comment")
  │ 	; bool "wants_premium"
  │ 	]
  │       user)
  │ ;;
  │ 
  │   let input =
  │     [ "occupation", [ "engineer" ]
  │     ; "email", [ "test at example.com" ]
  │     ; "birthday", [ "2020-12-01" ]
  │     ; "nr_of_siblings", [ "3" ]
  │     ; "comment", [ "hello" ]
  │     ; "wants_premium", [ "true" ]
  │     ]
  │ 
  │ let user =
  │   Conformist.decode Schema.user_schema input
  │ 
  │ let validation_errors =
  │   Conformist.validate Schema.user_schema input
  └────

  The `user_schema' and the `user' create function are guaranteed to be
  in sync at compile time.


[Conformist] <https://github.com/oxidizing/conformist>


Compiler Explorer now supports OCaml 4.12.0
═══════════════════════════════════════════

  Archive:
  <https://discuss.ocaml.org/t/ann-compiler-explorer-now-supports-ocaml-4-12-0/7479/3>


Continuing this thread, Sora Morimoto announced
───────────────────────────────────────────────

  Today we deployed 4.12.0 flambda. It must already be available!


Annoucement of OFLAT, a web-based platform to support courses on Formal Languages and Automata Theory
═════════════════════════════════════════════════════════════════════════════════════════════════════

  Archive:
  <https://sympa.inria.fr/sympa/arc/caml-list/2021-03/msg00026.html>


Antonio Ravara announced
────────────────────────

  <http://ctp.di.fct.unl.pt/FACTOR/OFLAT/>

  To support students’ autonomous work on topics related with Formal
  Languages and Automata Theory (FLAT), interactive tools that allow
  them to experiment with examples and solve exercises are very
  important - several studies demonstrate this.

  There are applications with this aim. While some are impressively
  complete, but are mainly Desktop applications (like JFLAP), others
  that can be used via a web browser are under-developed. Moreover,
  these applications are often not fully interactive - illustrations or
  even step-by-step execution is key to understand the algorithms - and,
  due to the programming languages used, implement the concepts in a way
  quite distant from the textbook Mathematical definitions. Code that
  implements closely the definitions is also a relevant pedagogical
  tool.

  With three concerns in mind - availability in mobile devices,
  interactive run of the algorithms (or at least presenting clear
  explanations), and code following closely the definitions - we
  developed OFLAT, a web-based tool to represent and illustrate
  graphically classical mechanisms and algorithms of Formal Languages
  and Automata Theory. It includes not only exercises evaluated
  automatically and providing feedback, but also allows students to
  create their own exercises. An integration with a grading platform
  like Learn-OCaml is underway.

  The tool is implemented in OCaml and is organised in two parts: a
  library - OCamlFLAT - which concentrates the logic of FLAT concepts,
  and the interactive applicational part - OFLAT. To run on browsers,
  the application uses the OCaml to Javascript translator
  Js_of_OCaml. To implement the interactive graphics, it uses Cytoscape,
  a Javascript library for graphs. All code is available in the Git of
  the project: <https://gitlab.com/releaselab/leaf/OCamlFlat>,
  <https://gitlab.com/releaselab/leaf/OFLAT>.

  The development of new functionalities is ongoing (we're now working
  more animations and on Context-Free Grammar and Pushdown Automata).
  Comments most welcome.


Old CWN
═══════

  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].

  [Alan Schmitt]


[send me a message] <mailto:alan.schmitt at polytechnique.org>

[the archive] <https://alan.petitepomme.net/cwn/>

[RSS feed of the archives] <https://alan.petitepomme.net/cwn/cwn.rss>

[online] <http://lists.idyll.org/listinfo/caml-news-weekly/>

[Alan Schmitt] <https://alan.petitepomme.net/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.idyll.org/pipermail/caml-news-weekly/attachments/20210323/c7c6830c/attachment-0001.html>


More information about the caml-news-weekly mailing list