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

Alan Schmitt alan.schmitt at polytechnique.org
Tue Jul 16 06:56:28 PDT 2019


Hello

Here is the latest OCaml Weekly News, for the week of July 09 to 
16,
2019.

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

Interesting OCaml Articles
opam 2.0.5 release
Fourth edition of the OCaml MOOC
Dune 2.0.0 coming soon!
OCaml Users and Developers Workshop 2019: Call for participation
Other OCaml News
Old CWN


Interesting OCaml Articles
══════════════════════════

  Archive:
  <https://discuss.ocaml.org/t/interesting-ocaml-articles/1867/45>


Deep in this thread, Ryan Slade said
────────────────────────────────────

  AFAIK this is implemented in OCaml:

  <https://medium.com/darklang/how-dark-deploys-code-in-50ms-771c6dd60671>


opam 2.0.5 release
══════════════════

  Archive: 
  <https://discuss.ocaml.org/t/ann-opam-2-0-5-release/4081/1>


R. Boujbel announced
────────────────────

  We are pleased to announce the minor release of [opam 2.0.5].

  This new version contains mainly build updates & lint fixes. You 
  can
  find more information in this [blog post].


[opam 2.0.5] <https://github.com/ocaml/opam/releases/tag/2.0.5>

[blog post] <https://opam.ocaml.org/blog/opam-2-0-5>


Replying to questions regarding Windows support, David Allsopp 
said
───────────────────────────────────────────────────────────────────

  There is already a very good fork of opam for Windows [here]. My 
  work
  has been on changes to upstream opam to improve the native
  experience. The `2.0' branch of opam builds on Windows, but the
  resulting binaries are not terribly useful (you can't get past 
  `opam
  init'). The `master' branch of opam now contains sufficient 
  support to
  pass the testsuite (I haven't yet ported the regression testing
  framework, although I don't see why that fundamentally shouldn't 
  be
  passing too). At present I'm making a final push to complete the 
  shell
  integration parts of `opam init' and `opam env', at which point 
  we can
  upgrade the `ocaml-base-compiler' packages in opam-repository 
  with
  Windows build instructions.

  After that, there's a quartet of features which benefit opam in
  general, but are specifically useful for Windows:
  • a replacement of base packages with base constraints, which is 
  in
    progress in [#3894]. This actually provides a much more 
    elegant
    solution to system compiler upgrades; for Windows, it's 
    original was
    that it permits upgrading and pinning FlexDLL, which is a C
    dependency of the Windows ports of OCaml.
  • the introduction of a new predicate to limit automatic 
  selection of
    packages by the solver, which will mean, amongst other things, 
    that
    `opam install ocaml' will never select a variant or trunk 
    compiler
    (not started yet, although the semantics of it are more 
    complicated
    than the implementation). For Windows, it will mean that the 
    switch
    will not randomly try to change the C compiler the switch is 
    based
    on (i.e. switch Windows port).
  • build environments, which generalise the present "system" 
  build
    environment. For Unix (well, and Windows 10), this would 
    include
    having a Docker container associated with a switch and, for 
    Windows,
    would also permit using separate Cygwin/MSYS and eventually 
    WSL
    installations for package building. In general, it would also 
    permit
    switches to have different depexts installed, since you'd no 
    longer
    have to be tied to what's installed on your actual system 
    (that's
    not started yet, either)
  • package parameters. There have been various proposals on this 
  before
    (including the one referenced above, which is actually 
    superseded by
    the new predicate). I have a (new) prototype implementation 
    which
    allows specifying things like flambda (and so, for Windows, 
    some of
    the port selection information) as part of `opam install', 
    `opam
    reinstall' or `opam switch create'. There's a bit of tightrope 
    to
    walk with this one, as changes here need to remain compatible 
    with
    an opam 2.0 mainline repository.

  It's not clear exactly what's going to land in opam 2.1, which 
  is
  trying to head towards beta soon and 2.2 which should be 
  relatively
  hot on its tail later in the year. I would add that 
  reimplementing
  tools in OCaml, while a highly worthy endeavour, merely 
  transforms the
  nature of the shell problem!


[here] 
<https://fdopen.github.io/opam-repository-mingw/installation/>

[#3894] <https://github.com/ocaml/opam/pull/3894>


Perry E. Metzger announced
──────────────────────────

  MacPorts has been updated to the new version of opam as of a few
  moments ago; it may take a couple of hours for mirrors to 
  synchronize.


Marek Kubica then said
──────────────────────

  Same with homebrew, it was merged 20h ago and binaries should be 
  built
  sometime.


Fourth edition of the OCaml MOOC
════════════════════════════════

  Archive:
  <https://sympa.inria.fr/sympa/arc/caml-list/2019-07/msg00022.html>


Yann Régis-Gianas announced
───────────────────────────

  Dear OCaml hackers and enthusiasts,

  the fourth edition of the OCaml MOOC will start in September. 
  Please,
  take a minute to spread the word around you!

  Three possible actions:

  1. Convince everyone you know to register at
     <https://tinyurl.com/ocamooc4>

  2. Print, post and share our flyer <https://bit.ly/2YrSVLF>

  3. Post the announcement message which is pasted at the end of 
  this
     email.

  By the way, we would like to thank the sponsors of the OCaml 
  Software
  Foundation for their support. Without it, the OCaml MOOC would 
  not
  exist.

  Thank you all for your help!

  Roberto Di Cosmo, Yann Régis-Gianas and Ralf Treinen.


Learn functional programming with the OCaml programming language
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌


Registrations are open!
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  Functional programming is attracting interest from a broad range 
  of
  developers because it allows to write expressive, concise and 
  elegant
  programs.

  The course "Introduction to Functional programming using the 
  OCaml
  language" introduces gradually the central notions of functional
  programming, via a set of video courses that are complemented by 
  a
  rich set of interesting exercises that you can perform fully in 
  your
  browser… Yes, this means you can start learning functional 
  programming
  without any hassle: nothing to install, nothing to tune up! The
  programming environment is just one click away!

  During the course, you will discover powerful mechanisms that 
  allow to
  build and manipulate complex data structures in a clean and 
  efficient
  way. And you will see how functions play a central role, as
  first-class values that can be freely used in any place where an
  _expression_ can appear.

  Registrations are already open at

  <https://www.fun-mooc.fr/courses/course-v1:parisdiderot+56002+session04/about>

  The course will start on September 22th 2019, and will run for 
  six
  weeks.

  Your expected effort is between 2 and 6 hours per week, 
  depending on
  your background, including the time spent watching the short 
  video
  sequences of the course, that total approximately an hour per 
  week.

  This may seem a significant effort, but at the end of the course 
  you
  will have actually learned a lot: the final programming project 
  will
  confirm that you acquired a good mastery of functional 
  programming and
  the ability to develop medium sized programs with ease.

  Thousands of learners attended the first two runs of this course 
  in
  2015, 2016 and 2018, and the many that completed it were 
  extremely
  satisfied.

  To introduce you to functional programming, we have chosen to 
  use the
  OCaml programming language. OCaml is a rich, elegant, efficient
  programming language that reconciles the conciseness and 
  flexibility
  of untyped programming languages (like Python, for example) with 
  the
  safety of strongly typed programming languages (like Java, for
  example), and that has a vibrant user community.

  Docker, Facebook, Microsoft, JaneStreet, Bloomberg are some big 
  names
  in industry that adopted OCaml to develop cutting edge 
  applications.
  The research community uses OCaml for writing tools like the 
  proof
  assistant Coq, the Coccinelle program transformer, the Frama-C 
  code
  analyser, or the Astree static analyser.  Several start ups use 
  OCaml
  to obtain tenfold gains in productivity and stability of their 
  code
  base. Recently, Tezos, one of the most innovative blockchains, 
  has
  developed its entire software stack using OCaml to get high 
  insurance
  about the execution of smart contracts.

  Once you have started mastering functional programming using 
  OCaml, we
  are sure that other programming languages will never look the 
  same to
  you again.

  This course will be held in English, but subtitles are already
  available in English, in Portuguese and in French.


Prerequisites
╌╌╌╌╌╌╌╌╌╌╌╌╌

  To take full advantage of this course you should have already 
  some
  basic knowledge of computer programming, in particular you 
  should
  already know how to write simple computer programs in some 
  programming
  language. For instance, you should know concepts like variables 
  (or
  identifiers), functions (or procedures, methods), conditionals, 
  and
  loops.


Dune 2.0.0 coming soon!
═══════════════════════

  Archive: 
  <https://discuss.ocaml.org/t/dune-2-0-0-coming-soon/4102/1>


Jérémie Dimino announced
────────────────────────

  As we are preparing the Dune 2.0.0 release, we wanted to share a 
  few
  words about it. Most of it is straightforward. One notable 
  change is
  that Dune 2 will require a recent version of OCaml to build 
  itself,
  however it will still be able to build projects using older 
  compilers
  and will still be installable in older opam switches. We will 
  also
  provide one additional year of support for Dune 1.

  <https://dune.build/blog/dune-2-coming-soon/>


OCaml Users and Developers Workshop 2019: Call for participation
════════════════════════════════════════════════════════════════

  Archive:
  <https://sympa.inria.fr/sympa/arc/caml-list/2019-07/msg00024.html>


David Allsopp announced
───────────────────────

  It is my pleasure to invite participation in the OCaml Users and
  Developers Workshop 2019, which is again co-located with ICFP 
  and will
  be held on Friday 23rd August, 2019 in Berlin, Germany.

  <http://ocaml.org/meetings/ocaml/2019/>

  Early bird registration deadline: July 18th, 2019

  The OCaml Users and Developers Workshop brings together the 
  OCaml
  community, including users of OCaml in industry, academia, 
  hobbyists
  and the free software community. Previous editions have been
  co-located with ICFP since 2012 in Copenhagen, Boston, 
  Gothenburg,
  Nara, Oxford and last year in St Louis, following OCaml Meetings 
  in
  Paris in 2010 and 2011.

  <https://icfp19.sigplan.org/home/ocaml-2019>

  Registration for the workshop day is required, but *not for the 
  entire
  conference*. There are several talks with an OCaml flavour in 
  the ML
  Workshop, which is the previous day (August 22nd). Note that 
  although
  the precise talk schedule is not yet finalised (it should be by 
  the
  end of this week), once registered for the day, it is possible 
  to move
  between workshops.


Programme
╌╌╌╌╌╌╌╌╌

  We have accepted 10 talks (full details of which are both on the
  SIGPLAN website and also shortly on ocaml.org) and there is an
  additional talk on recent developments and plans for the 
  compiler from
  Xavier Leroy. The programme covers recent developments and plans 
  in
  tooling, several interesting experience reports and other 
  applications
  of OCaml.


Program Committee
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  David Allsopp, University of Cambridge, UK
  Raja Boujbel, OCamlPro, France
  Timothy Bourke, INRIA, France
  Simon Cruanes, Aesthetic Integration, USA
  Emilio Jésus Gallego Arias, MINES ParisTech, France
  Thomas Gazagnaire, Tarides, France
  Ivan Gotovchits, CMU, USA
  Hannes Mehnert, robur.io, Germany
  Igor Pikovets, Ahrefs, Singapore
  Thomas Refis, Jane Street Europe, UK
  KC Sivaramakrishan, IIT Madras, India


Questions and contact
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌

  Please send any questions to the chair: David Allsopp
    <David.Allsopp at cl.cam.ac.uk>


Other OCaml News
════════════════

From the ocamlcore planet blog
──────────────────────────────

  Here are links from many OCaml blogs aggregated at [OCaml 
  Planet].

  • [OCaml Developer at Ahrefs Pte Ltd (Full-time)]
  • [opam 2.0.5 release]
  • [opam 2.0.5 release]
  • [The Alt-Ergo SMT Solver’s results in the SMT-COMP 2019]
  • [Of Pythons and Camels]


[OCaml Planet] <http://ocaml.org/community/planet/>

[OCaml Developer at Ahrefs Pte Ltd (Full-time)]
<https://functionaljobs.com/jobs/9173-ocaml-developer-at-ahrefs-pte-ltd>

[opam 2.0.5 release]
<http://www.ocamlpro.com/2019/07/11/opam-2-0-5-release/>

[opam 2.0.5 release] <https://opam.ocaml.org/blog/opam-2-0-5/>

[The Alt-Ergo SMT Solver’s results in the SMT-COMP 2019]
<http://www.ocamlpro.com/2019/07/09/alt-ergo-participation-to-the-smt-comp-2019/>

[Of Pythons and Camels]
<https://blog.janestreet.com/of-pythons-and-camels/>


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] <http://alan.petitepomme.net/cwn/>

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

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

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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.idyll.org/pipermail/caml-news-weekly/attachments/20190716/e50fa9b7/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://lists.idyll.org/pipermail/caml-news-weekly/attachments/20190716/e50fa9b7/attachment-0001.pgp>


More information about the caml-news-weekly mailing list