Let's Write a Qi Compiler (Weekly on Fridays)

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

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

  • Briefly, Qi is a general-purpose embeddable language that is oriented around functional and immutable programming, and it offers sequential ("threading") and other forms of composition, conditionals, predicate composition, various conveniences for (e.g. partial) function application, among other things. Writing a compiler for a DSL has been an obscure art, but with recent research and ecosystem improvements, it's becoming more accessible to Racket DSL authors. We recently completed retrofitting Qi with an expander that expands Qi macros to core Qi forms (much like Racket's expander expands Racket macros (including built-in macros like cond and let) to core Racket forms).

  • syntax-spec

  • Briefly, Qi is a general-purpose embeddable language that is oriented around functional and immutable programming, and it offers sequential ("threading") and other forms of composition, conditionals, predicate composition, various conveniences for (e.g. partial) function application, among other things. Writing a compiler for a DSL has been an obscure art, but with recent research and ecosystem improvements, it's becoming more accessible to Racket DSL authors. We recently completed retrofitting Qi with an expander that expands Qi macros to core Qi forms (much like Racket's expander expands Racket macros (including built-in macros like cond and let) to core Racket forms).

  • 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
  • qi

    A general-purpose functional DSL. (by countvajhula)

  • For the record, I've never written a compiler before and I'm also learning. All are welcome to attend, and we will do our best to keep the discussion accessible. There are notes from previous meetings if you are interested in learning more. See you there!

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