The Go compiler is written in Go, and is open source. You can do almost anything you want with it (it has a BSD style license), as long as you take the job fully yourself.
If you want to interpose a Lisp, I've written a lexically scoped Lisp for Go (https://github.com/glycerine/zygomys) and if you need dependent types or a fancy Turing complete type system there is a Go port of Mark Tarver's Shen Lisp https://github.com/tiancaiamao/shen-go which gives you a built in prolog and type solver. See https://shen-language.github.io/ and http://shenlanguage.org/ for a general intro. On Thursday, December 13, 2018 at 11:25:30 PM UTC-6, Dmitry Ponyatov wrote: > > Is it possible to do metaprogramming in Go? > > What I want to have is a way to run arbitrary code in compile time, which > has full access to compiler data structures > (parsed syntax trees, compiler stages callbacks, direct code generator > calls). > > As a variant, it can be some Lisp system runs between parser stage and the > rest of Go compiler. > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.