Hello Andreas, Dave and Brendan. We have now put the Tachyon sources on github, and have added a BSD license to the top of all the source files. You can clone the repo with
git clone git@github.com:Tachyon-Team/Tachyon.git
I propose that you first try to install Tachyon and get it working for you with V8. You will need to install V8 and modify it using the instructions in the file <Tachyon>/source/host/d8-tachyon-exts.cc . This will extend V8 with some required functionality (to create machine code blocks, execute them, I/O, etc).
A "make" in the <Tachyon>/source directory will create the "tachyon" shell script, which invokes d8 to load the Tachyon VM. Tachyon will then compile a few JS files needed for its runtime, and then start a REPL (this takes 10 to 15 seconds, so be patient!). After that, type "/help" to get a summary of the available REPL special commands. Here's a sample REPL interaction:
t> /load programs/fib/fib.js Loading script: "programs/fib/fib.js"
t> /time fib(35) time: 2.711s
t> /hir programs/fib/fib.js box function () [] { box function fib(box x) [] { entry: box x = arg 2; ...
A possible next step for you would be to port Tachyon to SpiderMonkey. Try to follow the same structure as for V8, that is, add a file spidermonkey-tachyon-exts.{c|cc|h} which interfaces to the functions in the file host/tachyon-exts.cc . By the way, I just noticed that this file gratuitously uses C++ code and we'll rewrite it in pure C (SpiderMonkey is pure C right?).
Let us know if you encounter problems and how we can help.
Marc
Afficher les réponses par date