Why aren't other languages more commonly used, and is there a complete list of languages you can use within this tag?
You can put anything you want in there. That's the whole point of MIME types.
The question is of course whether or not your user's browser can actually interpret it. But that's not really specific to the
<script> element. My browser, for example, only understands CSS for stylesheets, others also understand XSLT. My browser only understands HTML, XHTML, HTML5, MathML and SVG for documents, others also understand PDF or don't understand MathML. My browser understands alpha-transparent PNGs, others don't. Before the GIF patent ran out, there were some browsers that didn't understand GIFs, while others paid the licensing fees (or used the patent illegally or were developed in jurisdictions where software patents are illegal) and did understand GIFs. Some browsers understand H.264 videos, others Theora.
Many versions of Internet Explorer understand VBScript.
The CoffeeScript compiler can be compiled to ECMAScript and embedded into a website, so that you can use CoffeeScript in your page via the
text/coffeescript MIME type.
There's a project called HotRuby, which is a YARV bytecode interpreter written in ECMAScript. It allows you to use
Microsoft has a project called Gestalt, which uses IronRuby and IronPython running on top of the DLR inside Silverlight to provide support for
text/ruby (and presumably any language that can run on top of the DLR, e.g. Scheme, Smalltalk, PHP, Tcl.)
Mozilla had a project a while back called IronMonkey, I believe, which embedded multiple popular execution engines, such as MRI Ruby, CPython, Perl and others into Firefox, allowing the use of all those languages for browser scripting.
I remember reading somewhere that someone built a plugin for tcc (tiny C compiler) support, which would allow you to use
Just a couple of days ago, Miguel de Icaza (the creater of Mono) suggested that the ISO CLI should be added to the browser as a scripting platform, allowing you to use CIL bytecode for scripting via an
application/cil MIME type.