What would be your programming language of choice to implement a JIT compiler ?

This page summarizes the projects mentioned and recommended in the original post on /r/ProgrammingLanguages

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. kaleidoscope

    Haskell LLVM JIT Compiler Tutorial

    I think for writing compilers Haskell deserves to make the list. It is really excellent at creating DSLs. https://www.stephendiehl.com/llvm/

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. miri

    An interpreter for Rust's mid-level intermediate representation

    Depends on what you mean by "better experience". What the article doesn't mention is the fact that you can still run into undefined behavior (including pointer aliasing) in C/C++/Zig and have your programs exhibit unexplainable weirdness, but you won't get any help from the language/compiler to figure out where it's coming from. In Rust you just run MIRI which tells you exactly where you have undefined behavior as long as you have at least one test which exercises the affected code path.

  4. rust-gc

    Simple tracing (mark and sweep) garbage collector for Rust

    There's nothing stopping you from doing that in Rust. See rust-gc for an example of a GC implemented in Rust. Another example is mozjs, which is Rust bindings to SpiderMonkey. The GC there is implemented in C++, but it shows how you'd structure wrapper types for GC'd pointers in Rust so that you can use them safely, even with all the "ugliness" of a browser-grade GC.

  5. mozjs

    Servo's SpiderMonkey fork

    There's nothing stopping you from doing that in Rust. See rust-gc for an example of a GC implemented in Rust. Another example is mozjs, which is Rust bindings to SpiderMonkey. The GC there is implemented in C++, but it shows how you'd structure wrapper types for GC'd pointers in Rust so that you can use them safely, even with all the "ugliness" of a browser-grade GC.

  6. Flux.jl

    Relax! Flux is the ML library that doesn't make you tensor

    I’m no compiler expert but check out flux and zygote https://fluxml.ai/ https://fluxml.ai/

  7. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Implementing a JIT Compiled Language with Haskell and LLVM (2017)

    1 project | news.ycombinator.com | 24 Feb 2024
  • Proposal to Merge Pyston with Cpython

    2 projects | news.ycombinator.com | 28 Feb 2023
  • Implementing a LLVM Micro C compiler in Haskell

    2 projects | news.ycombinator.com | 4 Jun 2021
  • Resources for Amateur Compiler Writers

    3 projects | news.ycombinator.com | 24 Apr 2021
  • Need some help with monad transformers

    2 projects | /r/haskell | 14 Apr 2021

Did you know that Rust is
the 5th most popular programming language
based on number of references?