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)
If someone was interested in trying it, the thinkythoughts folder contains an ASP.NET server side blazor project with monaco and basic (but broken ;)) syntax highlighting and debug output from inference. I don't expect anyone to be interested but if they are and want samples please don't hesitate to ask :)