Latest Tech News

Stay updated with the latest in technology, AI, cybersecurity, and more

Filtered by: ocaml Clear Filter

X Design Notes: Unifying OCaml Modules and Values

In 2020, I released Cubiml, showing how to combine full type inference with structural subtyping in an ML-like language, and earlier this year, I followed it up with PolySubML, extending it with higher rank types and existential types among other features. For my next language (which I’ll call X here, since I haven’t chosen a name yet), I set the ambitious goal of supporting all of OCaml’s most notable functionality on top of everything PolySubML already supports. In this post, I will talk about

Topics: foo let module ocaml type

Improvements to OCaml code editing: the basics of a refactor engine

Refactoring features have contributed to the popularity of editors like IntelliJ, as well as certain programming languages whose editor support offers interactive mechanisms to manage code — Gleam being an excellent example. Even though OCaml has some features related to refactoring (such as renaming occurrences, substituting typed holes with expressions, and case analysis for pattern matching), the goal of my internship was to kickstart work on a robust set of features to enable the smooth inte

OCaml as my primary language

I started using the OCaml language regularly around 2012, and since then, my interest and enthusiasm for this language have only grown. It has become my preferred choice for almost all my personal projects, and it has also influenced my professional choices. Since 2014, I have been actively participating in public conferences dedicated to programming and software development, where I often express my enthusiasm for OCaml in ways that may be a bit over the top (but always passionate). This has ea

I chose OCaml as my primary language

I started using the OCaml language regularly around 2012, and since then, my interest and enthusiasm for this language have only grown. It has become my preferred choice for almost all my personal projects, and it has also influenced my professional choices. Since 2014, I have been actively participating in public conferences dedicated to programming and software development, where I often express my enthusiasm for OCaml in ways that may be a bit over the top (but always passionate). This has ea

OCaml Programming: Correct and Efficient and Beautiful

OCaml Programming: Correct + Efficient + Beautiful# A textbook on functional programming and data structures in OCaml, with an emphasis on semantics and software engineering. This book is the textbook for CS 3110 Data Structures and Functional Programming at Cornell University. A past title of this book was “Functional Programming in OCaml”. Spring 2025 Edition. Videos. There are over 200 YouTube videos embedded in this book. They can be watched independently of reading the book. Start with t

Hazel: A live functional programming environment with typed holes

Hazel Hazel is a live functional-programming environment rooted in the principles of type theory. You can find the relevant papers and more motivation at the Hazel website. You can try Hazel online: the dev branch is the main branch at the moment. Every other branch that has been pushed to GitHub and successfully builds can also be accessed at: https://hazel.org/build/<branch_name> Building and Running Hazel Short version If you already have ocaml version 5.2.0, at least version 2.0 of opa

OxCaml - a set of extensions to the OCaml programming language.

Let’s talk about what this means! OxCaml’s extensions are meant to make OCaml a great language for performance engineering. Performance engineering requires control, and we want that control to be: Safe. Safety is a critical feature for making programmers more productive, and for shipping correct code. Languages that are pervasively unsafe are too hard to use correctly. Convenient. We want to provide control without bewildering programmers, or drowning them in endless annotations. To achieve