[Habit Tracker in OCaml]: Project Setup and first steps
In this livestream I'm following a project-based approach to learn application development in OCaml. I chose OCaml based on the following requirements: 1. As explicit as Zig (or at least close) 2. Provide garbage collector 3. Good support for WebAssembly 4. Hopefully save me from writing JS/TS As probably obvious, I'm intending to use OCaml for a different class of problems. So it's not going to be a replacement for Zig or Python to me. The goal of the stream is exploratory, and you might expect detours. I'm learning in public, and may change direction. ## 📖 References - https://priver.dev/post/bye-opam-hello-nix - https://sourcery.zone/articles/2026/04/portable-and-opinionated-developer-environments-with-devenv-and-nix/ ## 📓 Notes * [TBD] ## 💬 Reach out and Chat * Matrix: https://matrix.to/#/#sourcery-zone:matrix.org ## 🎬 Timestamps - 00:00:00: Introduction and project overview - 00:02:42: Why choose OCaml over other languages - 00:05:05: OCaml ecosystem and learning resources - 00:07:21: Habit tracker project tutorial setup - 00:09:52: Environment setup and package management - 00:13:06: Nix-based development environment configuration - 00:16:16: First OCaml expressions in utop - 00:18:47: Functions and partial application - 00:24:45: Type inference and error handling - 00:26:03: Creating first Dune project - 00:32:45: Writing and testing format function - 00:41:07: Common OCaml pitfalls and exercises - 00:48:09: Data modeling with algebraic types - 00:53:42: Records and variants introduction - 00:58:18: Defining habit types and patterns - 01:04:40: Smart constructors and validation - 01:25:34: Session wrap-up and next steps #ocaml #ocamllivecoding #programming #nix #codinglivestream
Download
1 formatsVideo Formats
Right-click 'Download' and select 'Save Link As' if the file opens in a new tab.