caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Alan Schmitt <alan.schmitt@polytechnique.org>
To: "lwn" <lwn@lwn.net>, "cwn"  <cwn@lists.idyll.org>,
	caml-list@inria.fr, comp@lists.orbitalfox.eu
Subject: [Caml-list] Attn: Development Editor, Latest OCaml Weekly News
Date: Tue, 23 Mar 2021 10:05:35 +0100	[thread overview]
Message-ID: <87k0pyutnk.fsf@m4x.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 7202 bytes --]

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@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@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/>


[-- Attachment #2: Type: text/html, Size: 21239 bytes --]

             reply	other threads:[~2021-03-23  9:05 UTC|newest]

Thread overview: 112+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-23  9:05 Alan Schmitt [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-07-26 17:54 Alan Schmitt
2022-07-19  8:58 Alan Schmitt
2022-07-12  7:59 Alan Schmitt
2022-07-05  7:42 Alan Schmitt
2022-06-28  7:37 Alan Schmitt
2022-06-21  8:06 Alan Schmitt
2022-06-14  9:29 Alan Schmitt
2022-06-07 10:15 Alan Schmitt
2022-05-31 12:29 Alan Schmitt
2022-05-24  8:04 Alan Schmitt
2022-05-17  7:12 Alan Schmitt
2022-05-10 12:30 Alan Schmitt
2022-05-03  9:11 Alan Schmitt
2022-04-26  6:44 Alan Schmitt
2022-04-19  5:34 Alan Schmitt
2022-04-12  8:10 Alan Schmitt
2022-04-05 11:50 Alan Schmitt
2022-03-29  7:42 Alan Schmitt
2022-03-22 13:01 Alan Schmitt
2022-03-15  9:59 Alan Schmitt
2022-03-01 13:54 Alan Schmitt
2022-02-22 12:43 Alan Schmitt
2022-02-08 13:16 Alan Schmitt
2022-02-01 13:00 Alan Schmitt
2022-01-25 12:44 Alan Schmitt
2022-01-11  8:20 Alan Schmitt
2022-01-04  7:56 Alan Schmitt
2021-12-28  8:59 Alan Schmitt
2021-12-21  9:11 Alan Schmitt
2021-12-14 11:02 Alan Schmitt
2021-11-30 10:51 Alan Schmitt
2021-11-16  8:41 Alan Schmitt
2021-11-09 10:08 Alan Schmitt
2021-11-02  8:50 Alan Schmitt
2021-10-19  8:23 Alan Schmitt
2021-09-28  6:37 Alan Schmitt
2021-09-21  9:09 Alan Schmitt
2021-09-07 13:23 Alan Schmitt
2021-08-24 13:44 Alan Schmitt
2021-08-17  6:24 Alan Schmitt
2021-08-10 16:47 Alan Schmitt
2021-07-27  8:54 Alan Schmitt
2021-07-20 12:58 Alan Schmitt
2021-07-06 12:33 Alan Schmitt
2021-06-29 12:24 Alan Schmitt
2021-06-22  9:04 Alan Schmitt
2021-06-01  9:23 Alan Schmitt
2021-05-25  7:30 Alan Schmitt
2021-05-11 14:47 Alan Schmitt
2021-05-04  8:57 Alan Schmitt
2021-04-27 14:26 Alan Schmitt
2021-04-20  9:07 Alan Schmitt
2021-04-06  9:42 Alan Schmitt
2021-03-30 14:55 Alan Schmitt
2021-03-16 10:31 Alan Schmitt
2021-03-09 10:58 Alan Schmitt
2021-02-23  9:51 Alan Schmitt
2021-02-16 13:53 Alan Schmitt
2021-02-02 13:56 Alan Schmitt
2021-01-26 13:25 Alan Schmitt
2021-01-19 14:28 Alan Schmitt
2021-01-12  9:47 Alan Schmitt
2021-01-05 11:22 Alan Schmitt
2020-12-29  9:59 Alan Schmitt
2020-12-22  8:48 Alan Schmitt
2020-12-15  9:51 Alan Schmitt
2020-12-01  8:54 Alan Schmitt
2020-11-03 15:15 Alan Schmitt
2020-10-27  8:43 Alan Schmitt
2020-10-20  8:15 Alan Schmitt
2020-10-06  7:22 Alan Schmitt
2020-09-29  7:02 Alan Schmitt
2020-09-22  7:27 Alan Schmitt
2020-09-08 13:11 Alan Schmitt
2020-09-01  7:55 Alan Schmitt
2020-08-18  7:25 Alan Schmitt
2020-07-28 16:57 Alan Schmitt
2020-07-21 14:42 Alan Schmitt
2020-07-14  9:54 Alan Schmitt
2020-07-07 10:04 Alan Schmitt
2020-06-30  7:00 Alan Schmitt
2020-06-16  8:36 Alan Schmitt
2020-06-09  8:28 Alan Schmitt
2020-05-19  9:52 Alan Schmitt
2020-05-12  7:45 Alan Schmitt
2020-05-05  7:45 Alan Schmitt
2020-04-28 12:44 Alan Schmitt
2020-04-21  8:58 Alan Schmitt
2020-04-14  7:28 Alan Schmitt
2020-04-07  7:51 Alan Schmitt
2020-03-31  9:54 Alan Schmitt
2020-03-24  9:31 Alan Schmitt
2020-03-17 11:04 Alan Schmitt
2020-03-10 14:28 Alan Schmitt
2020-03-03  8:00 Alan Schmitt
2020-02-25  8:51 Alan Schmitt
2020-02-18  8:18 Alan Schmitt
2020-02-04  8:47 Alan Schmitt
2020-01-28 10:53 Alan Schmitt
2020-01-21 14:08 Alan Schmitt
2020-01-14 14:16 Alan Schmitt
2020-01-07 13:43 Alan Schmitt
2019-12-31  9:18 Alan Schmitt
2019-12-17  8:52 Alan Schmitt
2019-12-10  8:21 Alan Schmitt
2019-12-03 15:42 Alan Schmitt
2019-11-26  8:33 Alan Schmitt
2019-11-12 13:21 Alan Schmitt
2019-11-05  6:55 Alan Schmitt
2019-10-15  7:28 Alan Schmitt
2019-09-03  7:35 Alan Schmitt

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=87k0pyutnk.fsf@m4x.org \
    --to=alan.schmitt@polytechnique.org \
    --cc=caml-list@inria.fr \
    --cc=comp@lists.orbitalfox.eu \
    --cc=cwn@lists.idyll.org \
    --cc=lwn@lwn.net \
    /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;
as well as URLs for NNTP newsgroup(s).