Попытка создания свободной реализации языка Swift, продвигаемого компанией Apple

Сообщество Ind.ie представило проект Phoenix, в рамках которого планируется разработать свободную реализацию языка программирования Swift, продвигаемого компанией Apple в качестве первичной платформы для разработки пользовательских приложений для OS X и iOS. Разработку Phoenix возглавит Грег Касаменто (Greg Casamento), лидер проекта GNUStep. В настоящее время уже создан репозиторий, содержащий начальный прототип, написанный на языках Си и Objective-C. Исходные тексты распространяются под лицензией GPLv3.

В качестве причины создания Phoenix можно отметить неопределённость с намерениями компании Apple по открытию кода Swift, который основан на наработках LLVM. Изначально ожидалось, что Apple переведёт Swift в разряд открытых продуктов, но с момента первого выпуска Swift прошло уже почти 5 месяцев и никаких сдвигов или заявлений по поводу открытия кода не поступало. Как и раньше Swift остаётся плотно интегрирован в проприетарную среду разработки Xcode и не может быть использован обособленно на платформах, отличных от OS X.

Swift наследует лучшие элементы языков C и Objective-C, и предоставляет объектную модель, совместимую с Objective-C (Swift-код может смешиваться с кодом на С и Objective-C), но отличается использованием средств автоматического распределения памяти и контроля переполнения переменных и массивов, что значительно увеличивает надёжность и безопасность кода. Для обеспечения высокой производительности Swift-программы компилируются в машинный код, выполняемый в 1.3 раза быстрее кода на Objective-C. Вместо сборщика мусора Objective-C в Swift используются средства подсчёта ссылок на объекты, а также предоставляемые в LLVM оптимизации, такие как автовекторизация. Язык предлагает множество современных методов программирования, таких как замыкания, обобщенное программирование, лямбда-выражения, кортежи и словарные типы, быстрые операции над коллекциями, элементы функционального программирования.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=40899

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>