Many languages compile down to a hardware AssemblyLanguage. Some languages can be compiled to JavaByteCode. Interpreters written in JavaScript have been created for some languages. Those languages can all, therefore, run on anything that runs JavaScript -- including most current WebBrowser''''''s. * JsForth : ForthLanguage running in a browser iframe ** ... I thought there were a few others ? ... ** There were, but none as complete as the above one. looks like that one has blasted the others out of the water - it seems to be fully ANS standard compliant, and not just a demonstration. ** Possibly off-topic, but I wrote an interpreter construction tutorial -- http://felix.plesoianu.ro/scratch-lang/ -- around a stack-based language invented specifically for this purpose. The interpreter is written in Javascript simply so readers could test it directly in the browser (code compactness was also an important consideration). -- FelixPlesoianu * Little Scheme interpreter: http://www.crockford.com/javascript/scheme.html ** Evaluate most of the SchemeLanguage expressions from ''TheLittleSchemer'' book in your browser. * Try Ruby! : http://tryruby.hobix.com/ ** Tutorial with a RubyLanguage interpreter in your browser. * Many esoteric langauge implementations. Mine are at http://www.quirkster.com/js/ -- IanOsgood See http://www.is-research.de/info/vmlanguages/category/javascript-language/ for a very much longer list. There is also AviBryant 's ClamatoSmalltalk, a SmallTalk dialect with a (compiled into) JavaScript implementation. ---- Mozilla's JavaScript engine, RhinoInterpreter, uses ByteCode as well, but it's only stored internally. A JS implementation of an alternate language could probably achieve better performance by translating the source language code into JavaScript, and then compiling it to ByteCode using eval(). ---- Sadly, this is a case of AbstractionInversion. JavaScript is a high-level scripting language, one of the least efficient to run (see how it places in the shootout). A lower-level intermediate language would certainly be a more desireable target. JavaScript is all we got (in the browser, at least). ''True. Unless you run a JavaApplet (ugh).'' ---- These programs are nice if you want to do some programming on a platform that doesn't have any good development tools, but does have a browser, such as a phone or PDA. ---- See also: AjaxSmalltalk, IotaAndJot, AbstractionInversion