JACL: JavaScript Assisted Common Lisp
tailrecursion.com
tailrecursion.com
This comment should not be interpreted as me saying "Wow, it was such a great language that it was still relevant in 2011!" It is more of a caution:kludges never die.
I think you're looking farther along the curve than I am. Before businesses considered the possibilities of the Javascript-ified web, they had to be shown the possibilities by non-commercial hackers, who aren't worried about their competitors putting them out of business, but are driven only by the desire to play with cool toys.
The browser provided an easy-to-program source of cool toys. If it had been harder to program, then the hobbyists who drive later trends might have looked elsewhere, and we wouldn't have the do-everything-through-rich-Web-interfaces world in which we live today, but would find the default interface … somewhere else; who knows? (That is, I don't think anyone would ever say "I won't use the programmatic web because of Lisp; I'll hold out for Javascript", but I can imagine someone, if Javascript didn't exist, saying "it's too hard to innovate quickly in Lisp; let's find another platform where it's easier.")
None of this is a prediction, just a reminder that where we are now isn't inevitably, but the end result of many many small nudges, some of which we recognise and some of which we don't.
It was harder to program though. The amount of gotchas in JavaScript are so high compared to many other popular mainstream programming languages of even that era, and not to mention hou could only use it in a browser, which was severely lacking in functionality compared to native APIs. So the hackers who wanted cool toys already had far better options, which goes to show even if js was much worse it couldn't have done badly.
Although there is not much data that I am aware of about the early websites making cool things with javascript, if we take iOS and Objective C, it wasn't cool hackers filling the app stores with cool toys, but real businesses looking to make money.
Hell, even Mosiac and Netscape didn't want to be cool toys, theh wanted to be real businesses making lots of money.
initially, it wasn't - MS had vbscript in IE
js as 'the' browser language is a consequence of the browser wars
> Eich originally joined intending to put Scheme "in the browser",[10] but his Netscape superiors insisted that the language’s syntax resemble that of Java. The result was a language that had much of the functionality of Scheme, the object orientation of Self, and the syntax of Java.
[1]: https://en.wikipedia.org/wiki/Brendan_Eich#Netscape_and_Java...
I suspect that in the end we would have gotten the same javascript with scheme syntax.
If you bother to implement a macro system on top of it, you can easily get your own browser Lisp.
Most contemporary compile-to-JS languages target the browser, but do not inhabit it. I'm excited about a system that encourages apps and tools to evolve organically together, instead of tools developing separately from applications, which is the status quo.
Other than that, Common Lisp has some really interesting capabilities relative to ClojureScript, and is also fun!
1:http://bitsavers.org/pdf/xerox/interlisp/Interlisp_Reference... section 1.2
But, with regards to your description of inhabiting the browser, what would differ with JACL say compared to self-hosted ClojureScript?
Other than these technical differences, there seems to be a difference in "philosophy of use". I have the sense that the ClojureScript project does not emphasize or particularly support the idea of using self-hosted ClojureScript to build web apps.
But it sounds in your case, maybe that can be removed before shipping? But used while developing?
Are you thinking of something like Amber Smalltalk? Amber is a complete development system, well worth experimenting with if you have not already done so. Good ideas should be shared.