Sweden
a person who likes compilers, type theory, computer graphics, and software that keep things simple, like Gemini and QBE.
The Kapreolo Programming Language
My keymap for the Kyria split keyboard
DIY RGB room lighting solution, using ESP32-C3, WS2812/13, & MQTT
Minimal Lisp for scripting in embedded contexts
A Scheme-looking, purely functional programming language
f0b5398 Collapse chain of decision tree tests to switch
~jojo pushed to ~jojo/kapreolo git
ff31d0c subst all tvars in expr tree when done checking def
~jojo pushed to ~jojo/kapreolo git
b845ed8 tuples & more complete pattern matching
~jojo pushed to ~jojo/kapreolo git
9fec9c8 Replace pattern match loop w/ Peter Sestofts alg
~jojo pushed to ~jojo/kapreolo git
8a70e04 seems we've got higher-rank polymorphism working now as well :)
~jojo pushed to ~jojo/kapreolo git
bbebf9f rank 1 polymorphism seems to be working ok
~jojo pushed to ~jojo/kapreolo git
778bbd7 use (limited) unification in checker
~jojo pushed to ~jojo/kapreolo git
adefce5 flatten resolve & use Expr from kapo
~jojo pushed to ~jojo/kapreolo git
b0d8020 rename file ext from .fm to .reolo & lib.fm to kap.reolo
~jojo pushed to ~jojo/kapreolo git
aeddf43 proper type Arena for arenas instead of just Vec
~jojo pushed to ~jojo/kapreolo git
2e09fb0 get rid of PubIdent on fun params in Kapo
~jojo pushed to ~jojo/kapreolo git
b4dae5b rename name::{ParsedName, PrivIdent} to parse::{Name, IdentSpan}
~jojo pushed to ~jojo/kapreolo git
5be6a47 rename name::{ParsedName, PrivIdent} to parse::{Name, IdentRef}
~jojo pushed to ~jojo/kapreolo git