Is GO a good option to write a compiler/interpreter?

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

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • salsa

    A generic framework for on-demand, incrementalized computation. Inspired by adapton, glimmer, and rustc's query system.

    Some optimizations are not easy with Go. For example caching like in Rust Analyser Salsa Framework

  • SaaSHub

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

    SaaSHub logo
  • Benthos

    Discontinued Fancy stream processing made operationally mundane [Moved to: https://github.com/redpanda-data/connect]

    While I never wrote one, there are some good examples out there beyond the Go compiler itself. Have a look at the Benthos bloblang one (which is quite simple): https://github.com/Jeffail/benthos/tree/master/internal/bloblang and the go-jsonnet VM one (which is more complex): https://github.com/google/go-jsonnet

  • go-jsonnet

    While I never wrote one, there are some good examples out there beyond the Go compiler itself. Have a look at the Benthos bloblang one (which is quite simple): https://github.com/Jeffail/benthos/tree/master/internal/bloblang and the go-jsonnet VM one (which is more complex): https://github.com/google/go-jsonnet

  • participle

    A parser library for Go

    I made a domain specific language using https://github.com/alecthomas/participle what I found interesting is the grammar defined in structure annotations. After the parser runs, you get a fully instantiated structure based upon the input. I then invoke structure methods to do the work described in the DSL.

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

Did you konow that Go is
the 4th most popular programming language
based on number of metions?