Interpreters built in Go

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

Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
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
  1. prolog

    The only reasonable scripting engine for Go.

    There have been several Prolog interpreters written in Golang. This one appears to be most active: https://github.com/ichiban/prolog .

  2. Stream

    Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.

    Stream logo
  3. milisp

    Multiple implementations (Golang and Python) of LISP-like language to share the same ML pipeline over many systems

    I've written tiny lisp-like-language interpreter to share data pipelines between Go and Python programs.

  4. gval

    Expression evaluation in golang

    For practical start, see this: https://www.youtube.com/watch?v=JiViND-bpmw It explain one particular type of parser type that is quite easy to grasp and fun to write. Also look on some libraries that deliver "expression executors" - these are in fact small interpreted languages and can give you plenty of examples. Classic one (though currently unmaintaines I think) is: https://github.com/PaesslerAG/gval but there are plenty more, just google for them. On my last words, this is very enjoyable part of programming but it requires much learning so be patient and have fun!

  5. tau

    A functional interpreted programming language with a minimalistic design. (by NicoNex)

    Hi, if it can be of any help I wrote Tau in Go which is interpreted and has its own VM. It's inspired by the two books "Writing an interpreter in Go" and "Writing a compiler in Go", but differs a lot from the design proposed in the books which however helped me a lot with the development. Feel free to take a look, take inspiration or contribute :)

  6. bass

    a low fidelity scripting language for project infrastructure (by vito)

    I've been following https://github.com/vito/bass which is a LISP implemented in Go

  7. gpython

    gpython is a python interpreter written in go "batteries not included"

    https://github.com/go-python/gpython (Python interpreter in Go)

  8. gomacro

    Interactive Go interpreter and debugger with REPL, Eval, generics and Lisp-like macros

  9. 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
  10. yaegi

    Yaegi is Another Elegant Go Interpreter

  11. neugram

    https://github.com/crawshaw/neugram (Go-ish interpreter in Go)

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

  • Anyone else doing compiler work in Golang?

    10 projects | /r/golang | 28 Feb 2023
  • Looking for programming languages created with Go

    23 projects | /r/golang | 6 Nov 2022
  • Golog library/language?

    1 project | /r/prolog | 10 Oct 2022
  • Let's philosophize a bit :-)

    1 project | /r/golang | 12 Jun 2022
  • Prolog runtime for aws lambda?

    5 projects | /r/prolog | 2 Jun 2022