Lil' Fun Langs(taylor.town)
77 points by surprisetalk 5 hours ago | 8 comments
- ecto 1 hour agoloon is a lisp! https://github.com/ecto/loon
[type Shape [Circle Float] [Rect Float Float]] [fn area [s] [match s [Circle r] => [* 3.14 r r] [Rect w h] => [* w h]]] [area [Circle 5.0]][-]- grimgrin 54 minutes agoidk how I haven't crossed a lisp with square brackets but dang I am sorta stunned at how I've never even envisioned it? thanks
- dunham 3 hours agoMy little language Newt is 7 kloc. Dunno if it's worth including, it's mostly an exercise to learn how these things work and is not as polished as I'd like.
- Self-hosted
- Compiles to javascript
- Bidirectional typechecking with NbE (based on elaboration zoo)
- Dependent type checking
- type classes
- ADTs with dependent pattern matching
- TCO (trampoline for mutually tail recursive functions)
- Erasure of compile-time only values (0, ω quantities, but not linear)
- Web playground
- LSP (added this month)
- Syntax is similar to Agda / Idris / Haskell
- mlajtos 4 hours agoFluent – 4K lines – including parser, interpreter, standard library, IDE, UI, docs, examples. Will grow though.[-]
- surprisetalk 4 hours agoI'll add it! Thanks.
EDIT: Actually, it's not quite "ML-family" enough for this post. But it is a remarkably cool project! :)
[-]- solomonb 3 hours agoIf you're accepting additions here is a fun one some friends and I did as experiment at the Topos Institute: https://github.com/ToposInstitute/polytt
And here is a set of single file lambda calculus implementations with a variety of extensions: https://github.com/solomon-b/lambda-calculus-hs
`polytt` is kind of an ended experiment but that lambda calculus repo i plan to extend in the near future.
- lachlan_gray 2 hours agoAnother crazy one is SectorLISP, 223 lines of asm
- nimbus-hn-test 3 hours agoThe hardest part with small languages isn't the parser, it's the standard library and error messages. Getting a helpful IDE experience in that footprint is a significant engineering challenge.