Всем программистам советую взять на заметку этот блог. Чел офигенно шарит в функциональном программировании, пишет редко, но интересно. Вот сейчас хочется прокомментировать его пост про новый ECMAScript (Javascript), а точнее попробовать оценить возможности его применения.
Веб-браузеры
Здесь все в общем-то ясно - JS сейчас рулит и сдавать свои позиции не собирается. Но есть одно “но”. Качаем отсюда интерпретатор ECMAScript’а и изучаем содержимое каталога builtins - там находится стандартная библиотека, написана, собственно, на самом ECMAScript’е. Поизучайте файлы. Знакомо? Догадываюсь, что да. Все знакомо? Хех, подозреваю, что нет. По крайней мере на текущий JS новый ECMAScript не похож. Похож на дикую смесь JS, Java, C#. Целая куча новых ключевых слов, новые операторы. На мой взгляд, синтаксис языка чрезмерно усложняется. Не знаю, нужно ли это…
В продолжении хочется заметить, что внедрение этого “нового языка” в браузеры может весьма и весьма затянутся…
Desktop/Server-side программирование
Автор поста упомянул про конкуренцию с Python и Ruby:
Новый Javascript явно претендует на что-то большее. Если он действительно будет “принят на вооружение” — определенно можно ожидать появления изрядного количества серверных приложений и фреймворков на js. Во всяком случае, язык получился явно не слабее питона и руби — хотя, конечно, вряд ли средства интеграции с кодом на C и C++ будут тут столь же развиты, ниша у языка все-таки другая.
Но не учел 2 момента:
- Большое количество уже написанного кода на Python/Ruby. Имеется ввиду какое-то ПО на них, скрипты, классы дополнительные (смотрим rubygems, easy_install), фреймворки и т.д.
- Полное ОТСУТСТВИЕ нормальной стандартной библиотеки. Найдите мне функции/классы для работы с сокетами и бд под JS. В общем случае нельзя даже работать с файловой системой, насколько я знаю (в винде можно, под никсами - нет). И примеров нужных библиотек можно привести очень много. На мой взгляд, “язык, претендующий на замещение руби и питона” должен иметь стандартную библиотеку хотя бы не хуже ихних.
В общем, как видно из поста, с автором я не согласен. Язык интересный, “ядро” у него классное, но вот с тем, что язык может потягаться с тем-же питоном я бы поспорил.






November 19th, 2007 at 20:03
А никто и не писал, что JS, будь то новый или старый, будет выполнять функции server side.
November 19th, 2007 at 20:24
Конкуренция в руби/питоном - server side, т.к. в client side они войдут гораздо позже выпуска ES4.
November 19th, 2007 at 20:32
???
Не понял. Какая конкуренция?
November 19th, 2007 at 20:55
Пост почитай - вот линк
November 19th, 2007 at 21:03
Вот правильно там и срезюмировано: “ниша у языка все-таки другая”.
November 19th, 2007 at 21:12
Тем не менее, говорится о C и C++. Ты вообще тот блог почитай. Чел пишет отнюдь не о вебе ;)
November 19th, 2007 at 21:26
Да читал я. JS как будет клиентским, так и останется. Да, возмоожно будут и компиляторы, но будет это не скоро. А уж фреймворки под его Server-side напишут ну ооочень нескоро.
November 20th, 2007 at 06:59
Тем не менее интерпретатор для ES4 уже написали. ;) А в браузерах оно когда появится - хз.