OCaml
What I wish I knew when learning OCaml & OCaml FP Programming Course are great reads.
Notes
Links
- Getting Started with OCaml in 2021
- Learn OCaml - Web Application for Learning OCaml. (Code)
- OCaml Programming: Correct + Efficient + Beautiful Book (2021) - Textbook on functional programming and data structures in OCaml. (Lectures) (Tweet) (HN)
- Introduction to OCaml (2018)
- Functional Programming in OCaml (HN) (HN) (Code)
- Dune - Composable build system for OCaml.
- Unix system programming in OCaml
- Esy - Package.json workflow for native development with Reason/OCaml.
- mlsub - Prototype type inference engine.
- OCaml for Haskellers
- WebAssembly backend for OCaml (2018)
- Jane and the Compiler (2018)
- Jane Street OCaml Workshop - Exercises and projects for Jane Street's OCaml Workshop. Updated to 2019.
- HN: OCaml for the masses (2011)
- Solutions to Functional Programming in OCaml MOOC course
- The OCaml Platform 1.0 - Reason ML (2018)
- OCamlFormat - Auto-formatter for OCaml code.
- utop - Universal toplevel for OCaml.
- How come Ocaml isn't more popular? (2019)
- Multicore OCaml - Goal of Multicore OCaml is to add shared memory parallelism to OCaml. (GitHub)
- Dune starter kit - Provides templates to help you start an OCaml project. It can be used to create multiple libraries, multiple executables, and test suites.
- OCaPIC - Programming PIC microcontrollers in OCaml.
- MetaOCaml -- an OCaml dialect for multi-stage programming
- OCaml RFCs
- GoCaml - Subset of OCaml in Go based on MinCaml using LLVM.
- Haskell vs OCaml (2019) (Reddit)
- OCaml Runtime for AWS Lambda (Talk)
- Lightweight OCaml Webapp Tutorial
- oskel - Skeleton generator for OCaml projects.
- OCaml-CI - CI for OCaml projects.
- OCurrent - Allows you to specify a workflow / pipeline for keeping things up-to-date.
- Real World OCaml Book (2021) - Functional programming for the masses. (Code) (HN)
- Domical - In-browser OCaml notebooks.
- Bisect_ppx - Code coverage for OCaml and Reason.
- An in-depth Look at OCaml’s new “Best-fit” Garbage Collector Strategy (2020) (HN)
- Jane Street and the OCaml Compiler (2018) (HN)
- HN: OCaml 4.10 (2020)
- Code using GADT in OCaml
- Freestanding OCaml runtime
- Retrofitting Parallelism onto OCaml (2020) (Article)
- Notes and findings from our OCaml benchmarking adventures
- MinCaml compiler implemented in Rust
- wowcaml - Extending mincaml with "fun" PL ideas.
- modern-ocaml - Template for an ocaml project with modern tooling.
- Unreal world OCaml - Introductory book on OCaml. (Code)
- OCaml Forum
- Multicore OCaml: May 2020 update (HN)
- Misc algorithms in OCaml (HyperLogLog, jump consistent hashing)
- Composable Error Handling in OCaml (2018)
- opam - OCaml Package Manager. (Code)
- OCaml Scientific Computing Book - Functional programming meets data science. (HN) (Draft discussion)
- OCaml for Scientists
- OCaml 2020 All Videos
- OCaml-Java - Run OCaml code on a JVM, and manipulate Java entities from OCaml.
- OCaml Labs
- Multicore OCaml: September 2020 (HN)
- duniverse - Experimental vendoring system for Dune.
- Toy compiler for subset of OCaml written in Go
- OCaml website code
- Darklang: Leaving OCaml (2020) (HN) (Lobsters)
- OCamlPro - Harnessing Cutting-Edge Technologies. (GitHub)
- OCaml Cheat Sheets - OCaml Documentations as one-pagers, easy to keep useful commands in mind. (Code)
- Overview of the main OCaml CI services
- A Taste of OCaml's Predictable Performance (2020)
- ocamlearlybird - Debug adapter purely written in OCaml.
- OCaml-LSP - OCaml Language Server Protocol implementation.
- drom - Wrapper over opam/dune in an attempt to provide a cargo-like user experience.
- On Effectiveness of Exceptions in OCaml (Reddit)
- Memthol - Visualizer for memory profiling data generated from OCaml programs.
- Modular implicits in OCaml (Code)
- The _intf trick (2020) - Trick for avoiding duplication of types between .ml and .mli files.
- OCaml Operator Lookup - Enter an OCaml operator to learn more about it.
- Friendship ended with Monads: Testing out Algebraic effects in OCaml for Animations (2021)
- Solving the Jane Street puzzle of Dec 2020 - Backtracking with OCaml (2021)
- Retrofitting Effect Handlers onto OCaml (2020)
- OCaml JIT compiler - Just In Time compiler for OCaml native toplevel.
- On OCaml and the JS platform (2021)
- Generalised signatures (2021) - Technique for defining more reusable OCaml signatures.
- Mkocaml - Tool to generate OCaml projects.
- Js_of_ocaml - Compiler from OCaml to JavaScript. (Docs)
- ocaml-tree-sitter - Generate OCaml parsers based on tree-sitter grammars, for semgrep.
- Parallel programming in Multicore OCaml
- denu - Toy OCaml builder.
- OCaml By Example
- Writing a REST API with Dream (2021) (Code)
- BetterOCaml - Efficient, intuitive and cross-platform web IDE for the OCaml language. (Code)
- OCaml is getting multicore support in the next major version (v5) (2021) (Tweet) (HN)
- Using, Understanding, and Unraveling The OCaml Language From Practice to Theory and vice versa
- Effective Concurrency with Algebraic Effects in Multicore OCaml (2015) (HN)
- MetaML and MetaOCaml bibliography
- Plans to choose an official package/project manager? (2021) - Current state of tooling and where it falls short.
- How to use MetaOCaml with Dune
- Fromager - Format your OCaml code.
- GADTs - Real World OCaml (Tweet)
- Exercism exercises in OCaml (Code)
- Robur - Software development cooperative specializing in robust and secure digital infrastructure written in OCaml. (GitHub)
- OCaml plus Jane Street extensions
- PicoML - Toy programming language which is a subset of OCaml.
- How OCaml type checker works -- or what polymorphism and garbage collection have in common
- Minimal implementation of Hindley-Milner's Algorithm J in OCaml
- PR to Merge Multicore OCaml (2021) (HN)
- Unpragmatic static blog generator in OCaml
- OCaml flake example project - Overly elaborate example of building a ‘Hello World’ package with Nix flakes, OCaml, and Dune.
- HN: OCaml Multicore merged upstream
- Hotcaml - OCaml interpreter with watching and reloading. (Lobsters)
- Awesome Multicore OCaml - Collection of libraries, experiments and ideas relating to OCaml 5 (multicore + effects).
- Memory model for OCaml (herd formalization)
- Dromedary - Experimental subset of OCaml, using constraint-based type inference.
- ocaml for Unikraft - OCaml 5 runtime (libasmrun.a) built for unikraft.
- unikraft-ocaml-hello - Bare-unikraft OCaml 5 application.
- OCaml website (Code)
- OCaml from the Very Beginning (Web) (Code) (Lobsters)
- 2021 at OCamlPro
- OCaml 4.14.0 (2022)
- camlboot - OCaml bootstrap experiment.
- Everything in OCaml, a blog generated and served in OCaml using MirageOS
- HN: New OCaml Website (2022)
- What I wish I knew when learning OCaml (2018) (HN)
- MiniML - Compiler for a subset of the ML (really OCaml) language. LLVM is used as a backend.
- Muhokama - Simple forum built on top of Dream, Caqti, Omd, Preface, Cmdliner and other useful OCaml libraries.
- OCaml 5 Tutorial - Hands-on tutorial on the new parallelism features in OCaml 5.
- Concurrent Programming with Effect Handlers
- OCaml programs are much nicer to write
- eio-console - Eventring-based exploration of Eio programs.
- OCaml Platform - Represents the best way for developers, both new and old, to write software in OCaml.
- Unboxed Types for OCaml :: Jane Street (2019)
- OCaml 5.0 Alpha Release (2022) (HN)
- OCaml 5.0 (prerelease) Manual: Effect handlers (Lobsters)
- ThreadSanitizer support for OCaml 5 - Effective approach to locate data races in concurrent code bases.
- Reflections on my first completed application in OCaml (2020)
- Easy Dune (OCaml): Running a Script