|
|
|
|
|
by lilbigdoot
44 days ago
|
|
I've been working on a inference engine for a System F Omega inspired language and getting to a point where it is starting to feel good in small programs. I'm not sure why I started this, but I'm hoping to make something like an experience reminiscent of Lisp/Smalltalk by working in an interactive environment. My goal with this language was to pick a set of primitives to compose and express as much as possible. I don't have a demo up yet but if anyone was curious
https://codeberg.org/lilbigdoot/gloo/src/branch/thinkythough... The two main features I am missing right now are recursive types (I want to do proper mutual recursion and have been procrastinating) and some form of type classes or implicit modules. Structural typing has been useful and I'm finding a lot of features are falling out for free from that. Long term goal is to create something with performance within a reasonable range of C# / Java etc generally, with tools for opting out of GC. I don't plan on chasing zero cost memory safety, since I want to spend my "budget" on tooling and expressiveness. Until the language semantics stabilize I plan on generating some pretty naive JS/TS to play around with real programs, and eventually target .NET and native (likely via C++ transpilation) |
|