6 comments

  • taolson25 minutes ago
    Don&#x27;t know if my language is considered Lil&#x27; enough for this, but it&#x27;s a pure, lazy functional language based upon Miranda (progenitor language to Haskell) that compiles to x86-64 asm. ~6700 SLOC for the (self-hosted!) compiler, and ~3300 SLOC additional for the extensive library of functional data structures and functions.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;taolson&#x2F;Admiran" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;taolson&#x2F;Admiran</a>
  • dunham3 hours ago
    My little language Newt is 7 kloc. Dunno if it&#x27;s worth including, it&#x27;s mostly an exercise to learn how these things work and is not as polished as I&#x27;d like.<p>- Self-hosted<p>- Compiles to javascript<p>- Bidirectional typechecking with NbE (based on elaboration zoo)<p>- Dependent type checking<p>- type classes<p>- ADTs with dependent pattern matching<p>- TCO (trampoline for mutually tail recursive functions)<p>- Erasure of compile-time only values (0, ω quantities, but not linear)<p>- Web playground<p>- LSP (added this month)<p>- Syntax is similar to Agda &#x2F; Idris &#x2F; Haskell<p><a href="https:&#x2F;&#x2F;github.com&#x2F;dunhamsteve&#x2F;newt" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;dunhamsteve&#x2F;newt</a>
    • taolson34 minutes ago
      Either newt was already in the list, or it got added. We talked a bit about using our languages for AoC 2024 -- looks like you&#x27;ve been keeping busy working on it!
  • ecto1 hour ago
    loon is a lisp! <a href="https:&#x2F;&#x2F;github.com&#x2F;ecto&#x2F;loon" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ecto&#x2F;loon</a><p><pre><code> [type Shape [Circle Float] [Rect Float Float]] [fn area [s] [match s [Circle r] =&gt; [* 3.14 r r] [Rect w h] =&gt; [* w h]]] [area [Circle 5.0]]</code></pre>
    • grimgrin1 hour ago
      idk how I haven&#x27;t crossed a lisp with square brackets but dang I am sorta stunned at how I&#x27;ve never even envisioned it? thanks
  • mlajtos4 hours ago
    Fluent – 4K lines – including parser, interpreter, standard library, IDE, UI, docs, examples. Will grow though.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;mlajtos&#x2F;fluent&#x2F;blob&#x2F;main&#x2F;client.tsx" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mlajtos&#x2F;fluent&#x2F;blob&#x2F;main&#x2F;client.tsx</a>
    • surprisetalk4 hours ago
      I&#x27;ll add it! Thanks.<p>EDIT: Actually, it&#x27;s not quite &quot;ML-family&quot; enough for this post. But it is a remarkably cool project! :)
      • solomonb3 hours ago
        If you&#x27;re accepting additions here is a fun one some friends and I did as experiment at the Topos Institute: <a href="https:&#x2F;&#x2F;github.com&#x2F;ToposInstitute&#x2F;polytt" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ToposInstitute&#x2F;polytt</a><p>And here is a set of single file lambda calculus implementations with a variety of extensions: <a href="https:&#x2F;&#x2F;github.com&#x2F;solomon-b&#x2F;lambda-calculus-hs" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;solomon-b&#x2F;lambda-calculus-hs</a><p>`polytt` is kind of an ended experiment but that lambda calculus repo i plan to extend in the near future.
  • lachlan_gray2 hours ago
    Another crazy one is SectorLISP, 223 lines of asm<p><a href="https:&#x2F;&#x2F;justine.lol&#x2F;sectorlisp2&#x2F;" rel="nofollow">https:&#x2F;&#x2F;justine.lol&#x2F;sectorlisp2&#x2F;</a>
  • nimbus-hn-test3 hours ago
    The hardest part with small languages isn&#x27;t the parser, it&#x27;s the standard library and error messages. Getting a helpful IDE experience in that footprint is a significant engineering challenge.