ECMAScript Implementations

  • started evaluating the engines in trying to run the JS beautifier
  • tamarin
    • JIT engine donated by Adobe to Mozilla
    • used in Flash 9
    • written in C++
    • separate compiler (asc) and executor (avmplus)
    • the shell module contains a number of system/IO facilities
      (toplevel.as)
    • “Tamarin was designed to do better with type annotations than without. This is
      why SpiderMonkey actually wins some of those benchmarks against Tamarin on untyped code.
      Our work with SpiderMonkey and Tamarin now in the ActionMonkey project aims to make it
      fast for untyped code as well.”
  • rhino
    • written in Java
  • spidermonkey
    • written in C++
    • help()
    • load() includes javascript files
    • readline() doesn’t really work that great, since it
    • arguments for command-line args
  • es4
    • reference implementation of ECMAScript 4 (Javascript 2)
    • written in SML
    • very slow; it actually times out when running the beautifier (I get “Alarm
      Clock”)

Follow me on Twitter for stuff far more interesting than what I blog.