Keine Beschreibung

Lucas Stadler 83ef54ea94 add a few ideas/things to do. vor 11 Jahren
..
detect 8b0940a734 add rake db:migrate as build step for rails. vor 11 Jahren
examples e9aa2c4ff2 add hello world (cli & web) examples for go and ruby. vor 11 Jahren
fileutil cc879e1b96 use detect in qst. vor 11 Jahren
.gitignore d30792314d add standalone test program for detect. vor 11 Jahren
README.md 83ef54ea94 add a few ideas/things to do. vor 11 Jahren
qst.go 342fe936a8 list supported types in usage/help message. vor 11 Jahren
test_detect.go 475a32e6aa simple api for detect. vor 11 Jahren

README.md

go

Playing with go. Late to the party, but it's fun, I think.

thoughts

  • fast
  • some level of type-safety (just scratched the surface so far)
  • good tool support (fast (!) compilation, the go tool itself, fetching libraries built-in, though versioning is missing)
  • simple (mostly, goroutines + no proper sync will bite you, thinking helps, as always)

qst - run things quickly (and easily)

intended to be run in unfamilar environments, you pass it a file or a directory and it tries to detect what it is and how to run it.

  • run qst or qst -h to see options and support project types
  • qst hello_world.go: compiles and runs hello_world.go, rerunning after it exits or the file is saved

    quite fun for small things, just throw some code in a file, have qst watch and restart when appropriate.

  • qst -phase=test ... runs the tests for projects that support it

Building it yourself

# set up $GOPATH as desired
$ export GOPATH=$PWD/.go         # choose whatever you want
$ go build qst
...
$ ./qst -h
Usage: qst <file>
...
$ ./qst examples/hello_web.rb
...
^C
$ ./qst examples/hello_web.go
...

Try changing something in the files, it's fun. :)

Ideas/todo

  • watch many files (select by globbing)
  • sometimes restarts twice after one save?
  • more project types
  • tests (how? lots of shellscripts could do it, but would be very cumbersome. current "architecture" doesn't allow mocking.)