Skip to content

jargv/metago

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Note: this is experimental, pre-alpha software

metago - A metaprogramming language for Golang

Metago isn't really a whole language, it's more like a framework for writing "code mods" and code generators in Go's template language ("text/template").

Rationale

One of Go's strengths is its simplicity. For most code this simplicity is very beneficial. However there's a certain kind of code where Go's simplicity can start to get in the way. Examples of this include the sort package and other cases where one would traditionally use generics. Other examples include boilerplate code such as the code generated by stringer. The goal of metago is to help keep Go simple by adressing the (very few) downsides of simplicity.

Examples

TODO

Planned Features

  • More robust support for introspecting Go Code
  • Support for importing plugins written in Go

About

A metaprogramming language for Golang

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages