swift
Эппл выкатило новый язык: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/GuidedTour.html#//apple_ref/doc/uid/TP40014097-CH2
Алгебраические типы есть, паттерн-матчинг есть, иммутабельность есть, замыкания, анонимные функции есть, трейты есть, заумные ограничения на параметры генерик-типов есть.
Алгебраические типы есть, паттерн-матчинг есть, иммутабельность есть, замыкания, анонимные функции есть, трейты есть, заумные ограничения на параметры генерик-типов есть.
no subject
Во-вторых оно компилируемое, а не JIT. А это скорее всего минус рефлекшн, и всякое остальное рантайм-метапрограммирование (по крайней мере я в доке про это ничего не нашел). Получил строчку из БД - извольте отмэппить руками. Для сериализаторов - тоже наверное придется генерить исходники руками.
В общем для бизнес-опердень-вебсайт-программинга - не хватит фичей. Компилить это в JS - смысла тоже не много. Писать на этом драйвера и ОС - ну уж не знаю. Остается только эппловский десктоп на OSX и видимо iOS. Короче ниша не шире той, что была у objective C.
no subject
no subject
no subject
Я так понимаю это apple так параноидально парится за память и отсутствие лагов на UI - даже ценой того, чтобы заставить всех прикладных разработчиков писать без GC.
no subject
Я готов отказаться от GC, только бы никогда не видеть как лагает мой софт в UI, не могу, у меня тормоза видимые вызывают желание все выкинуть и переписать.
no subject
no subject
Как по мне, языки без GC - это именно что паранойя в большинстве случаев. Если только у тебя не realtime с миллисекундными допусками.
no subject
Ну и реакции на кнопки, переключения, меню, итд. Подтупливает иногда.
no subject
no subject
no subject
no subject
Сам Swift детально пока не смотрел, но раз они заявляют что оно совместимо со старым рантаймом, значит всё должно быть так же.
no subject