I am usually skeptical of the endless number of programming languages and compilers that you can see on the internet. Every extremely smart programmer considers it their duty to write a new compiler. At the same time, every bird thinks its own nest is best: every developer thinks their favorite language is the best, and sometimes - that the rest should be banned altogether. Meanwhile, consumer applications are full of bugs, inconvenient, lack functionality, and are hard to use. If the programmers who create compilers and evangelize trendy new languages are so capable, why wouldn't they improve the lives of ordinary people by writing better, widely used software? The answer is simple: they find it boring and tedious to catch minor bugs and think through UI details, whereas figuring out clever algorithms and language features is very interesting. At the same time, most of these people pretend that creating a new language is an extremely important matter, and without it, progress will stop, and nobody will write any programs.
So, I'm not just writing all this for nothing. It's because I stumbled upon Script# - a translator from my favorite C# into client-side JavaScript. At first glance, it looks and works amazingly, and its usefulness is quite apparent. I read an idea somewhere that an interesting direction for the development of client-side web applications is some language and platform whose compiler transforms the result into cross-browser, optimized, and reliable JavaScript. Script# is somewhat of a confirmation, if not of the viability of such a concept, then at least of its feasibility in a practical sense.
Read more →