Success port SpiderMonkey (JavaScript c engine) shell for A1200.
SpiderMonkey is Gecko's JavaScript engine written in C. It is used in various Mozilla products, including Firefox, and is available under MPL/GPL/LGPL tri-license.
see
SpiderMonkey - MDC
Execute the shell (Konsole or telnet to phone):
# ./
js js> help()
JavaScript-C 1.7.0 2007-10-03
Command Usage Description
======= ===== ===========
version version([number]) Get or set JavaScript version number
options options([option ...]) Get or toggle JavaScript options
load load(['foo.
js' ...]) Load files named by string arguments
readline readline() Read a single line from stdin
print print([exp ...]) Evaluate and print expressions
help help([name ...]) Display usage and help messages
quit quit() Quit the shell
gc gc() Run the garbage collector
trap trap([fun, [pc,]] exp) Trap bytecode execution
untrap untrap(fun[, pc]) Remove a trap
line2pc line2pc([fun,] line) Map line number to PC
pc2line pc2line(fun[, pc]) Map PC to line number
stringsAreUtf8 stringsAreUTF8() Check if strings are UTF-8 encoded
testUtf8 testUTF8(mode) Perform UTF-8 tests (modes are 1 to 4)
throwError throwError() Throw an error from JS_ReportError
dis dis([fun]) Disassemble functions into bytecodes
dissrc dissrc([fun]) Disassemble functions with source lines
notes notes([fun]) Show source notes for functions
tracing tracing([toggle]) Turn tracing on or off
stats stats([string ...]) Dump 'arena', 'atom', 'global' stats
build build() Show build date and time
clear clear([obj]) Clear properties of object
intern intern(str) Internalize str in the atom table
clone clone(fun[, scope]) Clone function object
seal seal(obj[, deep]) Seal object, or object graph if deep
getpda getpda(obj) Get the property descriptors for obj
getslx getslx(obj) Get script line extent
toint32 toint32(n) Testing hook for JS_ValueToInt32
evalcx evalcx(s[, o]) Evaluate s in optional sandbox object o
if (s == '' && !o) return new o with eager standard classes
if (s == 'lazy' && !o) return new o with lazy standard classes
js>
js> quit()
#
Run a javascript file:
# ./
js test.
js
...