Typed Functional Programming
OpenFP uses typed functional programming and applied mathematics to solve hard problems in software.
About
“I translate mathematics directly into working software.”
OpenFP is the consultancy of Daniel Firth (Inspector GADT). For over fifteen years I have been shipping production Haskell — applying programming-language theory, formal methods and applied mathematics to build software that is correct by construction.
Services
Haskell Engineering
Production Haskell, built for correctness from architecture through to delivery — including safety-critical systems shipped in finance, media, automotive and machine learning.
Applied Mathematics
Mathematical models turned into software that mirrors the problem domain, so research and engineering speak the same language and the computer does the bookkeeping.
Domain Modelling
Algebraic, type-driven domain models that make illegal states unrepresentable — whole classes of defects eliminated before a line of business logic is written.
Training & Enablement
Teams trained in Haskell, functional architecture and formal methods — from fundamentals to advanced — with onboarding material tailored to your codebase.
Approach
Denotational design: we write software the way we wish it could be written, then use the type system to make that representation real. The result is code you can reason about and guarantees you can keep.
Correct by construction
We make illegal states unrepresentable, so entire categories of bug cannot occur at runtime.
Modelled on the problem
Domain models read like the domain itself, so experts and engineers collaborate without translation loss.
Built to last
Principled functional programming reduces maintenance and overheads over the long run.
Open Source
Horizon Haskell
Curated Haskell package sets, built with Nix.
Haskell Vortex
A multiplexing effect runtime for Haskell. Put a Haskell console in anything.
NixLab
A code forge that only cares about Nix.
SmartyPants
The Haskell expert.
We develop these projects in the open on NixLab, our own forge, under permissive licences.
Browse the codeQuality Control
OpenFP uses strict quality control standards to ensure consistency across hundreds of hosted projects. These are divided into several documents.
Read the handbookContact
Working on something hard? Let's talk. Reach out through any of the channels below.
