[pypy-svn] r36311 - pypy/dist/pypy/translator/goal
antocuni at codespeak.net
antocuni at codespeak.net
Mon Jan 8 19:31:08 CET 2007
Author: antocuni
Date: Mon Jan 8 19:31:05 2007
New Revision: 36311
Added:
pypy/dist/pypy/translator/goal/targetjsstandalone.py (contents, props changed)
Log:
First attempt to write a target for a standalone javascript interpreter.
Added: pypy/dist/pypy/translator/goal/targetjsstandalone.py
==============================================================================
--- (empty file)
+++ pypy/dist/pypy/translator/goal/targetjsstandalone.py Mon Jan 8 19:31:05 2007
@@ -0,0 +1,34 @@
+"""
+A simple standalone target for the javascript interpreter.
+"""
+
+import sys
+from pypy.rlib.streamio import open_file_as_stream
+from pypy.lang.js.interpreter import Interpreter
+from pypy.lang.js.interpreter import *
+from pypy.lang.js.jsobj import ExecutionReturned
+
+# __________ Entry point __________
+
+interp = Interpreter()
+
+def entry_point(argv):
+ if len(argv) == 2:
+ f = open_file_as_stream(argv[1])
+ interp.load_bytecode(f.readall())
+ interp.run()
+ return 0
+ elif argv[0] == 'foo':
+ raise ExecutionReturned(None)
+ else:
+ print "Usage: %s bytecodefile" % argv[0]
+ return 1
+
+# _____ Define and setup target ___
+
+def target(driver, args):
+ driver.exe_name = 'js-%(backend)s'
+ return entry_point, None
+
+if __name__ == '__main__':
+ entry_point(sys.argv)
More information about the Pypy-commit
mailing list