Gribble is a simple command oriented language whose environment of commands is defined by Go structs via reflection. The primary use case for Gribble is to provide an easy to use command language for users to interact with your program. The initial motivation for Gribble was for interacting with my window manager, Wingo (which is where the name 'Gribble' came from). Note that Gribble is completely decoupled from Wingo and contains no window manager or X specific code. Installation ============ go get github.com/BurntSushi/gribble Dependencies ============ Go Quick Example ============= go get github.com/BurntSushi/gribble/examples/int-calc GO/PATH/bin/int-calc 'add 5 (mul 2 6)' The output should be '17'. Documentation ============= gopkgdoc is well-suited to provide documentation for Gribble: http://go.pkgdoc.org/github.com/BurntSushi/gribble Documentation is also hosted here: http://godoc.burntsushi.net/pkg/github.com/BurntSushi/gribble/ Examples ======== There is an integer calculator in the 'examples' directory that demonstrates an extremely simple example of Gribble use. There is also a floating point calculator in the 'examples' directory that demonstrates how to use parameters with multiple types. Both examples will print an environment of all available commands when called with '--help'. Testing ======= go test github.com/BurntSushi/gribble
BurntSushi/gribble
A command oriented language whose environment is defined through Go struct types by reflection.
GoWTFPL