OCaml Workshop 2021

PODCAST

OCaml Workshop 2021

The OCaml Users and Developers Workshop brings together industrial users of OCaml with academics and hackers who are working on extending the language, type system, and tools. Previous editions have been co-located with ICFP 2012 in Copenhagen, ICFP 2013 in Boston, ICFP 2014 in Gothenburg, ICFP 2015 in Vancouver, ICFP 2016 in Nara, ICFP 2017 in Oxford, ICFP 2018 in St Louis, ICFP 2019 in Berlin, and was virtual for ICFP 2020, following the OCaml Meetings in Paris in 2010 and 2011. OCaml 2021 will be a virtual workshop, co-located with ICFP 2021. Please contact the PC Chair (Frédéric Bour) for any questions and see the homepage at https://icfp21.sigplan.org/home/ocaml-2021

  1. 20

    Semgrep : a fast, lightweight, polyglot static analysis tool to find bugs

    Semgrep, which stands for “semantic grep,” is a fast, lightweight, polyglot, open source static analysis tool to find bugs and enforce code standards. It is used internally by many companies including Dropbox and Snowflake. Semgrep is also now use...

  2. 19

    Binary Analysis Platform

    We present Binary Analysis Platform (BAP), a representation-agnostic program analysis framework for binaries that can leverage existing tools, libraries, and frameworks, no matter which intermediate representation (IR) they use. In BAP, a new IR c...

  3. 18

    Property-Based Testing for OCaml through Coq

    We will present a property-based testing framework for OCaml that leverages the power of QuickChick, a popular and mature testing plugin for the Coq proof assistant, by automatically constructing a extraction-based shim between OCaml and Coq. That...

  4. 17

    Safe Protocol Updates via Propositional Logic

    If values of a given type are stored on disk, or are sent between different executables, then changing that type or its serialization can result in versioning issues. Often such issues are resolved by either making the deserializer more permissiv...

  5. 16

    From 2n+1 to n

    OCaml relies on a type-agnostic object representation centred around values which unify odd integers and aligned pointers. The last bit of a value distinguishes the two variants: zero indicates a pointer on the OCaml heap, while one encodes a ta...

  6. 15

    Love: a readable language interpreted by a blockchain

    We present Love, a smart contract language embedded in the Dune Network blockchain. It benefits from an OCaml-like syntax and a system-F inspired type system. Love has been used for deploying complex services such as games, ERC20s, atomic swaps, e...

  7. 14

    Opam-bin: Binary Packages with Opam

    In this talk, we will present opam-bin, an Opam plugin that builds Binary Opam packages on the fly, to speed-up reinstallation of pack- ages. opam-bin also creates Opam Repositories for these binary pack- ages, to make them easy to share with othe...

  8. 13

    Experiences with Effects in OCaml

    The multicore branch of OCaml adds support for effect handlers. In this talk, we report our experiences with effects, both from converting existing code, and from writing new code. Converting the Angstrom parser from a callback style to effects gr...

  9. 12

    25 Years of OCaml: Xavier Leroy

    Professor Xavier Leroy -- the primary original author and leader of the OCaml project -- reflects on 25 years of the OCaml language at his OCaml Workshop 2021 keynote speech.

  10. 11

    Digodoc and Docs

    In this talk, we will introduce a new tool called digodoc, that builds a graph of an opam switch, associating files, libraries and opam packages into a cyclic graph of inclusions and dependencies. We will then explain how we used that tool to buil...

  11. 10

    A Multiverse of Glorious Documentation

    This talk describes the process of generating documentation for every version of every package that can be built from the opam repository, and how it is presented as a single coherent website that is continuously updated as new packages are releas...

  12. 9

    Continuous Benchmarking for OCaml Projects

    Regular CI systems are optimised for workloads that do not require stable performance over time. This makes them unsuitable for running performance benchmarks. current-bench provides a predictable environment for performance benchmarks and a UI...

  13. 8

    Probabilistic resource limits using StatMemprof

    The goal of this talk is two-fold. First, we present memprof-limits, a probabilistic implementation of per-thread global memory limits, and per-thread allocation limits, for OCaml 4.12. Then, we will discuss the reasoning about programs in the pre...

  14. 7

    Leveraging Formal Specifications to Generate Fuzzing Suites

    When testing a library, developers typically first have to capture the semantics they want to check. They then write the code implementing these tests and find relevant test cases that expose possible misbehaviours. In this work, we present a t...

  15. 6

    Wibbily Wobbly Timey Camly

    Time handling is commonly considered a difficult problem by programmers due to myriad standards and complexity of time zone definitions. This also complicates scheduling across multiple time zones especially when one takes Daylight Saving Time int...

  16. 5

    Parafuzz: Coverage-guided Property Fuzzing for Multicore OCaml programs

    We develop ParaFuzz, an input and concurrency fuzzing tool for Multicore OCaml programs. ParaFuzz builds on top of Crowbar which combines AFL-based grey box fuzzing with QuickCheck and extends it to handle parallelism. Sumit Padhiyar Indian In...

  17. 4

    Deductive Verification of Realistic OCaml Code

    We present the formal verification of a subset of the Set module from the OCaml standard library. The proof is conducted using Cameleer, a new tool for the deductive verification of OCaml code. Cameleer takes as input an OCaml program, annotated u...

  18. 3

    Adapting the OCaml ecosystem for Multicore OCaml

    OCaml 5.0 with support for shared-memory parallelism being around the corner, there’s increasing interest in the community to port existing libraries to Multicore. This talk will take the attendees through what the arrival of Multicore means to th...

  19. 2

    OCaml and Python: Getting the Best of Both Worlds

    In this talk we present how we expose a wide variety of OCaml libraries and services so that they can be accessed from Python. Our initial use case on the Python side consisted in Jupyter notebooks used to analyse various datasets, these datasets ...

  20. 1

    GopCaml: A Structural Editor for OCaml

    This talk presents GopCaml-mode, the first structural editing plugin for OCaml. We will give a tour of the main plugin features, discussing the plugin’s internal design and its integration with existing OCaml and GNU Emacs toolchains. Kiran Gop...

Type above to search every episode's transcript for a word or phrase. Matches are scoped to this podcast.

Searching…

We're indexing this podcast's transcripts for the first time — this can take a minute or two. We'll show results as soon as they're ready.

No matches for "" in this podcast's transcripts.

Showing of matches

No topics indexed yet for this podcast.

Loading reviews...

ABOUT THIS SHOW

The OCaml Users and Developers Workshop brings together industrial users of OCaml with academics and hackers who are working on extending the language, type system, and tools. Previous editions have been co-located with ICFP 2012 in Copenhagen, ICFP 2013 in Boston, ICFP 2014 in Gothenburg, ICFP 2015 in Vancouver, ICFP 2016 in Nara, ICFP 2017 in Oxford, ICFP 2018 in St Louis, ICFP 2019 in Berlin, and was virtual for ICFP 2020, following the OCaml Meetings in Paris in 2010 and 2011. OCaml 2021 will be a virtual workshop, co-located with ICFP 2021. Please contact the PC Chair (Frédéric Bour) for any questions and see the homepage at https://icfp21.sigplan.org/home/ocaml-2021

URL copied to clipboard!