Hello Here is the latest OCaml Weekly News, for the week of May 10 to 17, 2022. Table of Contents ───────────────── Browsing OCaml source tree with VSCode/merlin? release of prbnmcn-gnuplot 0.0.3 Call for Presentations for "Teaching Functional Programming in OCaml" as part of the OCaml Workshop 2022 Old CWN Browsing OCaml source tree with VSCode/merlin? ══════════════════════════════════════════════ Archive: Keigo Imai explained ──────────────────── I managed to browse the OCaml source tree with VSCode with the following steps: 1. Prepare `.merlin' file (attached below) referring to the all source directories in the tree 2. Pin your ocaml-lsp-server at 1.8.3 by `opam pin ocaml-lsp-server 1.8.3' (as it is the last version that support `.merlin') 3. Clone OCaml repository and check out the same OCaml version as yours (e.g. `opam switch create 4.12.1; git checkout 4.12.1') 4. Build OCaml (./configure && make world) 5. Open the top folder of the source tree using VSCode (or restart the language server) 6. Browse the code Cheers! content of `.merlin': ┌──── │ S ./asmcomp/ │ S ./boot/menhir/ │ S ./bytecomp/ │ S ./debugger/ │ S ./driver/ │ S ./file_formats/ │ S ./lambda/ │ S ./lex/ │ S ./middle_end/ │ S ./middle_end/closure/ │ S ./middle_end/flambda/ │ S ./middle_end/flambda/base_types/ │ S ./ocamldoc/ │ S ./ocamltest/ │ S ./otherlibs/dynlink/ │ S ./otherlibs/dynlink/byte/ │ S ./otherlibs/dynlink/dynlink_compilerlibs/ │ S ./otherlibs/dynlink/native/ │ S ./otherlibs/str/ │ S ./otherlibs/systhreads/ │ S ./otherlibs/unix/ │ S ./parsing/ │ S ./stdlib/ │ S ./tools/ │ S ./tools/unlabel-patches/ │ S ./toplevel/ │ S ./toplevel/byte/ │ S ./toplevel/native/ │ S ./typing/ │ S ./utils/ │ B ./asmcomp/ │ B ./asmcomp/debug/ │ B ./boot/ │ B ./bytecomp/ │ B ./debugger/ │ B ./driver/ │ B ./file_formats/ │ B ./lambda/ │ B ./lex/ │ B ./middle_end/ │ B ./middle_end/closure/ │ B ./middle_end/flambda/ │ B ./middle_end/flambda/base_types/ │ B ./ocamldoc/ │ B ./ocamldoc/generators/ │ B ./ocamltest/ │ B ./otherlibs/bigarray/ │ B ./otherlibs/dynlink/ │ B ./otherlibs/dynlink/byte/ │ B ./otherlibs/dynlink/dynlink_compilerlibs/ │ B ./otherlibs/dynlink/native/ │ B ./otherlibs/str/ │ B ./otherlibs/systhreads/ │ B ./otherlibs/unix/ │ B ./parsing/ │ B ./stdlib/ │ B ./testsuite/tests/no-alias-deps/ │ B ./tools/ │ B ./toplevel/ │ B ./toplevel/byte/ │ B ./toplevel/native/ │ B ./typing/ │ B ./utils/ └──── release of prbnmcn-gnuplot 0.0.3 ════════════════════════════════ Archive: Igarnier announced ────────────────── [prbnmcn-gnuplot] is a declarative wrapper on top of [gnuplot]. Version 0.0.3 was just released. The API is not entirely set in stone but it's reasonably usable, at least for up to moderately sized plots. It proceeds by constructing self-contained gnuplot scripts from declarative specifications and deferring to gnuplot for execution. Here's the [documentation]. Happy hacking! [prbnmcn-gnuplot] [gnuplot] [documentation] Call for Presentations for "Teaching Functional Programming in OCaml" as part of the OCaml Workshop 2022 ════════════════════════════════════════════════════════════════════════════════════════════════════════ Archive: Yurug announced ─────────────── Special Session / Call for Presentations for "Teaching Functional Programming in OCaml" as part of the OCaml ╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌ Workshop 2022 • Abstract Submission: 6 June 2022 • Author Notification: 7 July 2022 • OCaml Workshop: 9 Sept 2022 The OCaml Workshop 2022, co-located with ICFP 2022, will take place the 2022-09-16 and will be held at Ljubljana, Slovenia. This year, we would like to organize a special session on "Teaching Functional Programming in OCaml". Hence, we would like to encourage and invite submissions for presentations that highlight teaching practices and innovation that highlight how OCaml is taught around the globe and the wide range of tools and strategies that have been developed to teach effectively functional programming using OCaml. In particular, we are interested in automated program evaluation / grading tools / error analysis (both type and syntax errors) for OCaml programs, tools that provide assistance in practical lessons (such as pair programming for example), Jupiter notebooks like solutions to interactively introduce programming concepts, or full-featured web platforms. We are particularly seeking contributions and experience reports of the Learn-OCaml online programming environment which has been used by the OCaml teaching community for online but also for regular in-person classes. The goal is to share experiences, exchange ideas and tools, and promote best practices. Interested researchers are invited to submit and register a description of the talk (about 2 pages long) at a clear statement of what will be provided by the presentation: the problems that are addressed, the solutions or methods that are proposed. LaTeX-produced PDFs are a common and welcome submission format. For accessibility purposes, we ask PDF submitters to also provide the sources of their submission in a textual format, such as ..tex sources. Reviewers may read either the submitted PDF or the text version. The OCaml workshop and this special session are informal meetings with no formal proceedings. The presentation material will be available online from the workshop homepage. The presentations may be recorded and made available at a later date. The main presentation format is a workshop talk, traditionally around 20 minutes in length, plus question time, but we also have a poster session during the workshop - this allows us to present more diverse work and gives time for discussion. The program committee for the OCaml Workshop will decide which presentations should be delivered as posters or talks. • Simão Melo de Sousa (University of Beira Interior) • Brigitte Pientka (McGill University) • Yann Regis-Gianas (Nomadic Labs) • Xujie Si (McGill University) 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] [the archive] [RSS feed of the archives] [online] [Alan Schmitt]