Skip to content

tardisgo/tardisgo-samples

Repository files navigation

TARDIS Go sample code

Sample code using TARDIS Go, both command line and animated graphical.

For help or general discussions about this repository please go to the Google Group.

Go by example : adapted command line examples


Command line samples showing Haxe called from Go


Go as Haxe library examples


OpenFL : animated graphical multi-platform samples showing Go called from Haxe


You can see these examples working live at http://tardisgo.github.io/

To compile and run them you will also need to follow the instructions to install OpenFL here. From the "Source" directory, check there is a "tardis" sub-directory and run the tardisgo command as normal e.g. "tardisgo gophers.go". Then follow the normal OpenFL development process from the directory above, try: "openfl test html5". Or use the tgoopenfl.sh script described below. Tested with OpenFL command-line tools version 2.1.6.

Scripts


For OSX and Ubuntu users, here are some scripts that might help, they are written for HAXE 3.1.1. NOTE: The tardisgo -testall flag (e.g. "tardisgo -testall mycode.go") provides the same functionality as tgoall.sh/tgoallu.sh below, but runs all the jobs concurrently and so is faster:

  • tgo.sh : transpile all the code in the current directory and run haxe on the result using the user-provided haxe flags
  • tgoall.sh : transpile all the code in the current directory for all haxe targets and test each of them (requires all the haxe target languages to be installed, with any required haxelibs, tested on OSX)
  • tgoallu.sh : Ubuntu version of tgoall.sh
  • tgoopenfl.sh : wrapper for the OpenFL command, to transpile the Go first

Benchmarks


  • mandlebrot
  • fannkuch
  • binarytree

A snapshot of TARDIS Go's poor relative performance as at January 2014 can be found in the graph here. But please note that both llgo and GopherJS had elements of their core Go implementations missing when these tests were run.

Improving the speed of TARDIS Go will be a focus of future development, with results reported at intervals.

WIP


A directory for non-passing tests that are a work-in-progress and are referenced by tardisgo issues.