Recursive subtyping for all | Journal of Functional Programming | Cambridge Core
Recursive subtyping for all - Volume 35
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.
01.03.2025 10:33 β π 2 π 1 π¬ 0 π 0
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
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.
01.03.2025 10:26 β π 2 π 0 π¬ 0 π 0
Experiences of early assessment to teach functional programming | Journal of Functional Programming | Cambridge Core
Experiences of early assessment to teach functional programming - Volume 35
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.
07.02.2025 23:52 β π 0 π 0 π¬ 0 π 0
Turner, Bird, Eratosthenes: An eternal burning thread | Journal of Functional Programming | Cambridge Core
Turner, Bird, Eratosthenes: An eternal burning thread - Volume 35
Read Jeremy Gibbons' pearl exploring Richard Bird's Sieve of Eratosthenes circular algorithm through the lens of Turner's Total Functional Programming.
07.02.2025 23:50 β π 2 π 1 π¬ 0 π 0
You could have invented Fenwick trees | Journal of Functional Programming | Cambridge Core
You could have invented Fenwick trees - Volume 35
Read Brent Yorgey's functional pearl calculating an efficient implementation of Fenwick trees from a straightforward, purely functional segment tree.
24.01.2025 14:05 β π 3 π 0 π¬ 0 π 0
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
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.
13.01.2025 03:28 β π 1 π 0 π¬ 0 π 0
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!
13.01.2025 03:23 β π 2 π 0 π¬ 0 π 0
PhD Abstracts | Journal of Functional Programming | Cambridge Core
PhD Abstracts - Volume 35
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!
13.01.2025 03:23 β π 10 π 3 π¬ 1 π 1
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
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.
13.01.2025 03:15 β π 1 π 0 π¬ 0 π 0
A simple blame calculus for explicit nulls | Journal of Functional Programming | Cambridge Core
A simple blame calculus for explicit nulls - Volume 34
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.
03.01.2025 14:17 β π 0 π 0 π¬ 0 π 0
An example of goal-directed, calculational proof | Journal of Functional Programming | Cambridge Core
An example of goal-directed, calculational proof - Volume 34
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.
16.12.2024 04:27 β π 2 π 1 π¬ 0 π 0
Bottom-up computation using trees of sublists | Journal of Functional Programming | Cambridge Core
Bottom-up computation using trees of sublists - Volume 34
Have a read of Shin-Cheng Mu's beautiful functional pearl on deriving an algorithm for bottom-up computation using trees of sublists.
16.12.2024 04:21 β π 2 π 1 π¬ 0 π 0
Programming and reasoning about actors that share state | Journal of Functional Programming | Cambridge Core
Programming and reasoning about actors that share state - Volume 34
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.
06.12.2024 14:09 β π 1 π 1 π¬ 0 π 0
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!
13.11.2024 14:02 β π 7 π 2 π¬ 0 π 0