LINUX.ORG.RU

Apple открыла исходный код Swift

 apache license, , , ,


1

5

Стал доступен исходный код языка программирования Swift от Apple. Теперь сторонние разработчики могут присылать багфиксы, улучшения и приносить Swift на другие платформы.

Исходный код доступен под лицензией Apache License 2.0.

Репозиторий на GitHub

>>> Подробности

★★★★★

Проверено: beastie ()
Последнее исправление: cetjs2 (всего исправлений: 3)

Ответ на: комментарий от const86

Вообще-то, они там есть.

Нет. В свифте try, catch и т.д. - это сахар для возврата ошибок. Пробросить исключение через несколько уровней нельзя без модификации промежуточных функций.

DarkEld3r ★★★★★
()
Ответ на: комментарий от anonymous

наконец-то кто-то что-то внятное написал

rupert ★★★★★
()
Ответ на: комментарий от umren

а не надо бросать исключения, там где нужна производительность. исключения - исключительно для исключительных ситуаций.

rupert ★★★★★
()
Ответ на: комментарий от anonymous

Они все в Apple работают. Если бы они добровольно контрибьютили, как в буст, например, то было бы интересно. А так - фигня. Им платят деньги писать Swift, они и пишут. Платили бы за Rust, они бы Rust писали. За что платят, то и пишут.

rupert ★★★★★
()
Ответ на: комментарий от rupert

исключения - исключительно для исключительных ситуаций

Осталось только определить эти исключительные ситуации. Часто два юзера одной и той же функции могут разойтись во мнениях по этому вопросу.

const86 ★★★★★
()
Ответ на: комментарий от rupert

Как буд-то это что-то плохое, что люди пишут за деньги отличный opensource язык, которым, к тому же, скоро будут пользоваться линуксоиды.

menangen ★★★★★
()
Ответ на: комментарий от DarkEld3r

И ты так говоришь, что на свифте сплошной риалтайм писать будут.

Именно, что бы на айфончиках интерфейсы не тормозили. В джаве то используют их «только там где надо» - поэтому все тормозит и виснет, а завещание Джобса Apple пока исполняет, поэтому это шаг полностью оправданный, дашь обезьяне гранату - они ее везде кидать будут, исключения не нужны, bad practice.

umren ★★★★★
()
Ответ на: комментарий от rupert

исключения - исключительно для исключительных ситуаций.

см. комментарий выше, я открываю любой ява код и там все обмазано исключениями, ибо у них любая ошибка это исключение, в свифт мне такое не нужно, спасибо.

umren ★★★★★
()
Ответ на: комментарий от umren

Именно, что бы на айфончиках интерфейсы не тормозили

Интерфейсы - это не риалтайм.

поэтому это шаг полностью оправданный, дашь обезьяне гранату - они ее везде кидать будут, исключения не нужны, bad practice.

Лол, ты забыл с чего мы начали? Напомню:

Здесь нет каких-то дурацких идей типа «мы это не добавляли, потому что мы считаем что это не нужно»

Ты бы хоть определился сначала. Или не надо гранатам обезьяны давать (хорошего же ты мнения о программистах на свифте) или всё-таки нет ограничений «потому что мы так за вас решили».

DarkEld3r ★★★★★
()
Ответ на: комментарий от anonymous

куча разработчиков ... на Mono под Мак.

Xamarin вполне распространён

anonymous
()
Ответ на: комментарий от umren

все равно не вижу профита со свифта в линуксе. иосную прогу то не собрать - нет сдк. так зачем он там тогда ?
давай прямо в лоб как кэп

sacred ★★
()
Ответ на: комментарий от sacred

давай прямо в лоб как кэп

он нужен для фулл стек разработки под платформы где фронденд на эппле, эппл понимает что они обосрались на серверах и линукс - единственный игрок там, ради этого в опен сорс он и пошел вообщем то.

iOs на линукс по понятным причинам ты не соберешь никогда, забудь.

umren ★★★★★
()
Ответ на: комментарий от umren

это имеет под собой основания, есть одно но: неудобство в написании кросс-платформенного, кода, который надо запускать и на Linux, и на OS X (например, разработчик хочет поднять локальную копию для экспериментов). неудобство серьёзное, в Glibc и Darwin не совпадают и имена функций, и возвращаемый тип.

иллюстрация из getting started уже сама по себе доставляет: https://swift.org/getting-started/#using-the-repl (чуть-чуть выше прокрутить надо).

по-моему, под этот юзкейс таки проще использовать go или python/ruby.

нет, я понимаю, что сейчас налетят толпы рассуждающих о том, что reference count — это принципиально лучше, чем gc, но всё же.

anonymous
()
Ответ на: комментарий от anonymous

тьфу, чуть-чуть ниже. или погуглить по «random».

anonymous
()
Ответ на: комментарий от umren

Если java - это единственное, что ты видел, то о чём с тобой можно разговаривать?

rupert ★★★★★
()
Ответ на: комментарий от DarkEld3r

В смысле?

В swift-е примитивная обработка ошибок.

rupert ★★★★★
()
Ответ на: комментарий от sacred

так зачем он там тогда ?

Шоб было. Как ObjC в линуксе. Никому не надо, а есть!

rupert ★★★★★
()
Ответ на: комментарий от tailgunner

Ну как же - он лучше PHP, Ruby, Python, Go, и всего, на чем пишут бэкенды.

Это большой вопрос, лучше ли он чего-либо вообще.

rupert ★★★★★
()
Ответ на: комментарий от umren

Прям поставили в тупик вопросом. Всего, корректно ли так сказать, среди всего что есть.

LLAtigiD
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.