Journal of Functional Programming
@journal-of-fp.bsky.social
140 followers 2 following 21 posts
Design, implementation & application of functional programming languages from mathematical theory to industrial practice. Posts by @liamoc.net
Posts Media Videos Starter Packs
journal-of-fp.bsky.social
Last month we published our PhD abstracts in FP from the last year.

Congratulations to Fahad Alhabardi, Colm Baston, Daniel Britten, Joris Ceulemans, Lawrence Dunn, Yuning Feng, Kiran Gopinathan, Sebastian Graf, Jason Z. S. Hu, Joomy Korkut, Daniele Pautasso and Jui-Hsuan Wu!
PhD Abstracts | Journal of Functional Programming | Cambridge Core
PhD Abstracts - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
In Education Matters, Kenichi Asai presents OCaml Blockly -- an educational block-based programming environment for beginners, like Google Blockly -- but for OCaml!
OCaml Blockly | Journal of Functional Programming | Cambridge Core
OCaml Blockly - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
Ralf Hinze and Dan Marsden present a graphical calculational technique based on string diagrams, and use it to explain the theory of monads.
The graphical theory of monads | Journal of Functional Programming | Cambridge Core
The graphical theory of monads - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
J.P. Bernardy and P. Jansson present a new Haskell-embedded domain specific language for naturally expressing tensor computations using natural index notation.
Domain-specific tensor languages | Journal of Functional Programming | Cambridge Core
Domain-specific tensor languages - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
Litao Zhou, Yaoda Zhou, Qianyong Wan and Bruno C.D.S. Oliveira present a new core calculus that extends F_≤ (a well known polymorphic calculus with bounded quantification) with isorecursive types, tackling the tricky combination of subtyping, recursive types, and bounded quantification.
Recursive subtyping for all | Journal of Functional Programming | Cambridge Core
Recursive subtyping for all - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
José Nuno Oliveira writes this pearl exploring "magic squares" --- (semi-)commutative squares. These squares underpin much of what we do in logic, FP, database modelling, formal semantics and so on.
How much is in a square? Calculating functional programs with squares | Journal of Functional Programming | Cambridge Core
How much is in a square? Calculating functional programs with squares - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
In Education Matters, Peter Chapman reports on the use of Use-Modify-Create scaffolds to teach first-year undergraduate functional programming. This early assessment intervention showed promising improvements to student scores.
Experiences of early assessment to teach functional programming | Journal of Functional Programming | Cambridge Core
Experiences of early assessment to teach functional programming - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
Read Brent Yorgey's functional pearl calculating an efficient implementation of Fenwick trees from a straightforward, purely functional segment tree.
You could have invented Fenwick trees | Journal of Functional Programming | Cambridge Core
You could have invented Fenwick trees - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
In this paper, Reynald Affeldt, Jacques Garrigue and Takafumi Saikawa present a framework embedded inside Rocq for practical equational reasoning about programs with effects using a formalisation of a hierarchy of effects.
A practical formalization of monadic equational reasoning in dependent-type theory | Journal of Functional Programming | Cambridge Core
A practical formalization of monadic equational reasoning in dependent-type theory - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
Congratulations to Pedro Jorge Fernandes Ângelo, Leonhard Applis, Thiago Felicissimo, Matthías Páll Gissurarson, Harrison Goldstein, Brandon Hewer, Jack Hughes, Eddie Jones, Jesse Sigal, and James Wood!
journal-of-fp.bsky.social
We're delighted to publish ten PhD abstracts in this round. Topics range from types to tests, from synthesis to software engineering, from datatypes to differentiation. Have a look!
PhD Abstracts | Journal of Functional Programming | Cambridge Core
PhD Abstracts - Volume 35
www.cambridge.org
journal-of-fp.bsky.social
Read Wenhao Tang and Tom Schrijvers' paper on simulating nondeterminism and state (high level effects) in terms of low-level state, proving each step of the refinement correct by program calculation.
From high to low: Simulating nondeterminism and state with state | Journal of Functional Programming | Cambridge Core
From high to low: Simulating nondeterminism and state with state - Volume 34
www.cambridge.org
journal-of-fp.bsky.social
New paper: Lhoták and Wadler present a simpler blame calculus for gradual typing of languages where types explicitly indicate whether null values are permitted.
A simple blame calculus for explicit nulls | Journal of Functional Programming | Cambridge Core
A simple blame calculus for explicit nulls - Volume 34
www.cambridge.org
journal-of-fp.bsky.social
Speaking of pearls, we also have Backhouse, Guttmann and Winter's pearl, showing a neat example of a goal-directed, calculational proof: constructing an equivalence relation from a given relation by way of a starth root construction.
An example of goal-directed, calculational proof | Journal of Functional Programming | Cambridge Core
An example of goal-directed, calculational proof - Volume 34
www.cambridge.org
journal-of-fp.bsky.social
New Paper: Caldwell, Garnock-Jones and Felleisen allow programmers to state temporal aspects of actor conversations in dataspace actor languages. They present a design of a language of _facets_ and a system for reasoning about their temporal behaviour.
Programming and reasoning about actors that share state | Journal of Functional Programming | Cambridge Core
Programming and reasoning about actors that share state - Volume 34
www.cambridge.org
journal-of-fp.bsky.social
I've set up a bluesky account for the Journal of Functional Programming. Please follow for all our latest papers, news about special issues, and other announcements!