Metalanguages or languages with extensible syntax

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

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • rakudo

    🦋 Rakudo – Raku on MoarVM, JVM, and JS

  • The reference implementation is Rakudo. MoarVM, which is portable across many OS and hardware platforms, is the only production quality backend. There's a second tier backend for JVM and a "toy" JS backend. A successful toy proof-of-concept .NET backend for some functionality was produced about a decade ago and then retired.

  • oil

    Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!

  • There are 2 survey papers at the top of this wiki page that may have some useful references: https://github.com/oilshell/oil/wiki/Metaprogramming

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • ts-sql

    A SQL database implemented purely in TypeScript type annotations.

  • JavaScript has tagged template literals, which is basically just syntax sugar for a function call with some string literals, but you can use this to define DSLs. TypeScript's template literal types are even powerful enough that you can type-check them (for example this ts-sql project).

  • lean4

    Lean 4 programming language and theorem prover

  • Lean 4 - example of embedding IMP

  • mbase

    Metaprogramming framework for .net

  • Mbase

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS 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