Machine Lines

Inferring Recursive Types

This month’s issue is a little late (sorry!) because I’ve been slogging through edge cases with Raven’s types. I’m still not quite done – it’s taken longer than I expected, and in the end is surely one of the hardest things I’ve worked on – but it’s all tantalisingly close. If Raven has any major novelty, it’s in the type system. The goal is ambitious: typical code should require no annotations, yet we’ll always infer precise types (no Anys allowed).
This post is for my sponsors. If you're already signed up, log in for access.