Интересная статья попалась: http://www.infoworld.com/d/application-development/10-programming-languages-could-shake-it-181548?page=0,0
Мир меняется, появляются новые тренды в ИТ: облачные вычисления, мобильные технологии, мультипроцессорная разработка. Несмотря на то, что и так существует достаточно большое количество языков программирования, всевозможных типов от функциональных до объектно-ориентироать, выучить все которые не может уже ни один разработчик, нове тренды требуют поддержки со стороны языка и часто проще разработать новый язык с 0, а не модифицировать существующие. Ниже перечислены 10 новых языков программирования, которые находятся на достаточно раннем этапе своего развития, но может быть какие-то из них станут популярными в будущем.
1. Dart
Убийца JavaScript.
Зарабатывается Google. Что хорошо. Предназначен для замены JavaScript и нацелен на то что бы сделать разработку интерактивных Web приложений удобнее и быстрее. Похож по синтаксису на C. Но самое интересное что пока он при компиляции просто конвертится в JavaScript + работает не во всех браузерах.
2. Ceylon
Убийца Java.
Разрабатывается RedHat. Ставит целью улучшить синтаксис Java, адаптировать его к текущим потребностям разработчиков. Комбинируется в Java, выполняется в JVM
3. Go
Разрабатывается Google.
Довольно низкоуровненый язык программирования, по типу C и C++. Предназначен не только для разработки приложений но и для системного программирования. Не имеет виртуальной среды исполнения (как Java или C#), но иммет garbage collector (непонятно только как). По синтаксису похож на С, но типа удобнее.
4. F#
Microsoft
Функциональный язык программирования. Хотя и функциональный - исполняется в среде исполнения .NET, можем использовать все наработки на C# или VisualBasic. Так же поддерживается Mono что дает возможность использовать его на Маках и Linux.
Поддерживает асинронность, параллелизм и прочее.
Комилируется в CLI код!
5. Opa (за название 5)
OpenSource
Убийца всего на чем сейчас пишутся Web приложения. Предназначен для разработки и клиента, и серверной логики и слоя доступа в БД. Клиент компилируется в JavaScript, для серверной части есть виртуальная машина.
6. Fantom
OpenSource
Предназначен для кросс-платформенности в ее втором порядке :) Это значит что код может выполняться и в JMV и в .NET. Планируют так же добавить поддержку iOS.
Поход на C, призван улучшить его синтаксис, включает поддержку функционального программирования и конкурентного доступа (многопоточности).
7. Zimbu
В нем собрано от всех языков понемногу. Опять таки цель - сделать самый удобный синтаксис, быстро читаемых и т.д. и т.п. При этом еще и предназначенный как для разработки приложений так и для системного программирования. Поддерживает управляемую память, потоки и т.п.
Компилируется в C код!
С код модет компилироваться уже в binary для любой платформы.
8. X10
IBM
Заточен под параллельные вычисления (придется выучить :) ). Для поддержки конкуретного доступа использует программную модель партиционированного глобального адресного пространства. Код и данные разделяются по отдельным юнитам и распространяются в виде изолированных "place" (я так понимаю это что то типа sandboxов). Соответственно это позволяет достаточно быстро сделать вашу программу распределенный, рутем просто размножения places, а т.к. поддержка конкуретного доступа и изоляция данных идет на уровне рантайма - вам не надо заморачиваться с поддержкой этого непосредственно в коде.
Компилируется опять таки либо в Java либо с C++, а выполняется в своей виртуальной среде либо в JVM (своя среда там реализована как отдельный класс)
Хотя пока еще язык развивается - он уже достаточно зрелый, доступны и сборки для разных платформ и средства разработки и отладки (на Eclipse)
IBM
Заточен под параллельные вычисления (придется выучить :) ). Для поддержки конкуретного доступа использует программную модель партиционированного глобального адресного пространства. Код и данные разделяются по отдельным юнитам и распространяются в виде изолированных "place" (я так понимаю это что то типа sandboxов). Соответственно это позволяет достаточно быстро сделать вашу программу распределенный, рутем просто размножения places, а т.к. поддержка конкуретного доступа и изоляция данных идет на уровне рантайма - вам не надо заморачиваться с поддержкой этого непосредственно в коде.
Компилируется опять таки либо в Java либо с C++, а выполняется в своей виртуальной среде либо в JVM (своя среда там реализована как отдельный класс)
Хотя пока еще язык развивается - он уже достаточно зрелый, доступны и сборки для разных платформ и средства разработки и отладки (на Eclipse)
9. HaXe
Motion Twin
Мультиплатформенный язык, компилируется в объектный код, JavaScript, PHP, Flash, NekoVM. в работе Java и C#. Синтаксис похож на C. Пока в стадии разработки.
Motion Twin
Мультиплатформенный язык, компилируется в объектный код, JavaScript, PHP, Flash, NekoVM. в работе Java и C#. Синтаксис похож на C. Пока в стадии разработки.
10. Chapel
Пришел к нам с Великого Crey. Со всеми вытекающими - параллельные вычисления, высокая нагрузка. Синтаксис собран из нескольких источников - начиная C и заканчивая Fortran.
Выводы: судя по данной статье заметна четкая тенденция - овые языки не являются чем то новым в принципе - а лишь надстройкой над существующими платформами, которые делают их более заточенными для тех или иных задач. Лично мне идея компиляции из одного синтаксиса в другой не кажется слишком хорошей, уж лучше сразу писать на той же Java. Из всего перечисленного с моей точки зрения интерес представляет только X10, но может быть это в силу того что он мне ближе по роду деятельности, чем всякие Web ориентированные языки.
Попробуйте!
Пришел к нам с Великого Crey. Со всеми вытекающими - параллельные вычисления, высокая нагрузка. Синтаксис собран из нескольких источников - начиная C и заканчивая Fortran.
Выводы: судя по данной статье заметна четкая тенденция - овые языки не являются чем то новым в принципе - а лишь надстройкой над существующими платформами, которые делают их более заточенными для тех или иных задач. Лично мне идея компиляции из одного синтаксиса в другой не кажется слишком хорошей, уж лучше сразу писать на той же Java. Из всего перечисленного с моей точки зрения интерес представляет только X10, но может быть это в силу того что он мне ближе по роду деятельности, чем всякие Web ориентированные языки.
Попробуйте!
Комментариев нет:
Отправить комментарий