URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 101007
[ Назад ]

Исходное сообщение
"Выпуск языка программирования Ruby 2.2.0"

Отправлено opennews , 25-Дек-14 17:57 
Доступен (https://www.ruby-lang.org/en/news/2014/12/25/ruby-2-2-0-rele.../) релиз Ruby 2.2 (http://www.ruby-lang.org), динамического объектно-ориентированного языка программирования, отличающегося высокой эффективностью разработки программ и вобравшего в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp.  Код проекта распространяется под лицензиями BSD ("2-clause BSDL") и "Ruby", которая ссылается на последний вариант лицензии GPL и полностью совместима с GPLv3.  Ruby 2.2 является вторым значительным выпуском, подготовленным в рамках нового планового процесса разработки, подразумевающего отведение года на подготовку функциональных улучшений и формирование каждые 2-3 месяца корректирующих выпусков. В настоящее время уже началась работа над фреймворком Rails 5.0, в котором будут задействованы новые возможности Ruby 2.2.

Основные улучшения (https://github.com/ruby/ruby/blob/v2_2_0/NEWS):


-  Представлен инкрементальный сборщик мусора (https://bugs.ruby-lang.org/issues/10137), примечательный сокращением задержек во время значительных чисток мусора;
-  В сборщик мусора включены изменения (https://bugs.ruby-lang.org/issues/9634), позволившие обеспечить  чистку мусора для объектов типа Symbol при сохранении совместимости с расширениями на языке Си. Внесённое изменение привело к сокращению потребления памяти при использовании объектов типа Symbol;
-  В сборочном сценарии configure.in добавлена (https://bugs.ruby-lang.org/issues/9113) опция "--with-jemalloc " для сборки с библиотекой jemalloc, что должно привести к увеличению производительности операций управления памятью. Использование jemalloc пока позиционируется как экспериментальная возможность;
-  Экспериментальная поддержка использования системного вызова vfork(2) совместно с вызовами system() и spawn(), которая позволяет существенно сократить накладные расходы при выполнении внешних команд из процессов большого размера;
-  В базовых библиотеках реализована поддержка спецификации Unicode 7.0 и добавлены новые методы Enumerable#slice_after (https://bugs.ruby-lang.org/issues/9071), Enumerable#slice_when (https://bugs.ruby-lang.org/issues/9826), Float#next_float, Float#prev_float (https://bugs.ruby-lang.org/issues/9834), File.birthtime, File#birthtime (https://bugs.ruby-lang.org/issues/9647) и String#unicode_normalize (https://bugs.ruby-lang.org/issues/10084);

-  Обновлены поставляемые в комплекте сторонние библиотеки и компоненты: Psych 2.0.8, Rake 10.4.2, RDoc 4.2.0, RubyGems 2.4.5, test-unit 3.0.8, minitest 5.4.3. Объявлена устаревшей библиотека mathn;

-  Из API для разработки дополнений на языке Си удалены вызовы, ранее объявленные устаревшими.

URL: https://www.ruby-lang.org/en/news/2014/12/25/ruby-2-2-0-rele.../
Новость: http://www.opennet.me/opennews/art.shtml?num=41341


Содержание

Сообщения в этом обсуждении
"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 25-Дек-14 17:57 
Good news, everyone!

"Выпуск языка программирования Ruby 2.2.0"
Отправлено анонко , 25-Дек-14 21:23 
> Good news, everyone!

Дежурное продолжение про всех уволенных.
Рад, конечно, что после закрытия сериала порождённые им мемы всё ещё живы и здоровы...


"Выпуск языка программирования Ruby 2.2.0"
Отправлено SubGun , 25-Дек-14 18:52 
Рад за них. Опять все будет поломатое, чувствую.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено chinarulezzz , 26-Дек-14 01:53 

* GC
  * incompatible changes:
    * Rename GC.stat entries. [Feature #9924]
      
* IO
  * incompatible changes:
    * When flushing file IO with IO#flush, you cannot assume that the metadata
      of the file is updated immediately.  On some platforms (especially
      Windows), it is delayed until the filesystem load is decreased.
      Use IO#fsync if you want to guarantee updating metadata.

* Math
  * incompatible changes:
    * Math.log now raises Math::DomainError instead of returning NaN if the
      base is less than 0, and returns NaN instead of -infinity if both of
      two arguments are 0.
    * Math.atan2 now returns values like as expected by C99 if both two
      arguments are infinity.

* Proc
  * incompatible changes:
    * ArgumentError is no longer raised when lambda Proc is passed as a
      block, and the number of yielded arguments does not match the formal
      arguments of the lambda, if just an array is yielded and its length
      matches.

* Process
  * Process execution methods such as Process.spawn opens the file in write
    mode for redirect from [:out, :err].
    Before Ruby 2.2, it was opened in read mode.

для минорной версии маловато поломок.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 25-Дек-14 19:17 
>вобравшего в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp.

И ни одной плохой, да?


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Бывший школьник , 25-Дек-14 20:32 
Да

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 12:03 
> И ни одной плохой, да?

Плохие изобретены с нуля.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Кир , 25-Дек-14 19:24 
> Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp

Адская смесь...


"Выпуск языка программирования Ruby 2.2.0"
Отправлено alright , 25-Дек-14 19:35 
Вроде недавно вышла версия 4.2.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Xaionaro , 25-Дек-14 19:54 
Стоит всё-таки в таких ситуациях писать, что вы про Rails, а не про Ruby…

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Будочки , 26-Дек-14 08:01 
А где-то есть руби без рельс? Они же неразрывны как две половинки одной попы.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено PnDx , 26-Дек-14 10:31 
Diakonos http://diakonos.pist0s.ca/
Довольно забавный проект. Стал бы серьёзным, если бы не:
- завязка на curses. Ну и понту это было на рубях писать, если в вебку не ввернуть.
- выделение текста ещё причудливее, чем в vi
- взрослая возможность похерить редактируемый файл (Нашёл 1 сценарий. Вероятно, реально больше).

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 19:58 
Это Вы так своё невежество показываете?

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Анончик , 25-Дек-14 19:56 
То были Рельсы. А это новость — про Руби, на котором эти Рельсы бегают.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 17:40 
Это Руби бегает на Рельсах, а не наоборот: it's Ruby on Rails, not Rails on Ruby.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 25-Дек-14 20:49 
Node.js much better

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Anonim , 25-Дек-14 22:04 
>Node.js much better

Настолько хороша, что аж форкнулась


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 25-Дек-14 22:08 
Она даже на S390 не запустится. А Ruby работает и работает

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Crazy Alex , 25-Дек-14 23:07 
Правда, там на фиг не нужно ни то, ни другое...

"Выпуск языка программирования Ruby 2.2.0"
Отправлено бедный буратино , 26-Дек-14 05:41 
учитывая, что одно - язык, а второе - набор обвязок для веба на языке javascript... чай с конфетами - ещё лучше!

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 06:51 
Т.к. все ИТ-макаки свалили с переставшего быть модным руби на ноду (усиленная тем, что написанием бэкенда стало заниматься достаточно много ничего не смыслящих в этом фронтендеров), ситуация сложилась обратная: руби лучше ноды в плане качества библиотечного кода и квалификации среднего разработчика. И это еще не учитывая убл*дочности жаваскрипта, как языка.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 07:52 
Как разработчик на Node.JS, полностью с вами согласен

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 12:13 
Как разработчик на ROR, абсолютно с вами не согласен.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено kirakishou , 27-Дек-14 00:51 
>руби лучше ноды
>язык лучше либы

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 27-Дек-14 02:01 
Имеет лишь смысл оценивать стеки технологий целиком: сами языки, основные реализации, стандартные и сторонник библиотеки, сообщества разработчиков.
Сравнение сферического руби с сферическим жаваскриптом не имеет никакого практического смысла, потому под "руби" и "нодой" имелись в виду соответствующие технологические стеки.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 09:27 
>вобравшего в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp

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


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Рубист , 26-Дек-14 10:27 
да почему же не нужен? А vagrant, а hombrew, а metasploit, а всякие jekkyl, octopress? Да, в контексте рельс разработок больше но это не мы такие, время такое, но тут опять же есть и sinatra и padrino - тоже замечательные веб-фреймворки, которые активно используются (просто вы не знаете об этом, сайты же не трубят на каком языке они написаны).

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 15:00 
А также всё тестирование
* в консоли: Cucumber, Rspec;
* в браузере: Selenium/Capybara;
* в GUI: SikuliX.
...

И опять же, всё это на Ruby


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 26-Дек-14 15:15 
А также Chef для развертывания приложений

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Аноним , 27-Дек-14 02:04 
> А также Chef для развертывания приложений

Для развертывания, скорее, капистрана, а шеф - для конфигурирования серверов.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено chinarulezzz , 27-Дек-14 02:11 
Слишком нестабильный. Руби колбасит до нерабочих скриптов даже в минорных версиях, и не каждый захочет на нём из за этого программировать. Однако язык точно не хуже тройки Perl/Python/Tcl. А из за лёгкого ООП искаропки, есть кто прощает ему этот недостаток, а из за скорости разработки - низкую скорость выполнения.

"Выпуск языка программирования Ruby 2.2.0"
Отправлено Ptico , 28-Дек-14 23:19 
> Слишком нестабильный. Руби колбасит до нерабочих скриптов даже в минорных версиях

Excusemewhat? Вы вообще пользовались им хоть раз?

Большинство скриптов писаных еще на 1.8.6 спокойно запускается в 2.2.0.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено chinarulezzz , 28-Дек-14 23:38 
>> Слишком нестабильный. Руби колбасит до нерабочих скриптов даже в минорных версиях
> Excusemewhat?

читай incompatible changes в 2.2 по сравнению с 2.1, 2.1 по сравнению с 2.0, 2.0 по сравнению с 1.9 и 1.9 по сравнению с 1.8.

> Вы вообще пользовались им хоть раз?

и писал немного, ничего серьёзного.

> Большинство скриптов писаных еще на 1.8.6 спокойно запускается в 2.2.0.

большинство, доооо.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено Ptico , 29-Дек-14 00:58 
Можно пример какого-то вот прям breaking incompatibility которое ломает скрипты? Из каких-то серьезных проблем могу вспомнить убранный интерфейс Enumerable из стрингов и переход на Object#object_id. Все остальные изменения ломали максимум 5% каких-то совсем специфических скриптов


"Выпуск языка программирования Ruby 2.2.0"
Отправлено chinarulezzz , 29-Дек-14 01:18 
> Можно пример какого-то вот прям breaking incompatibility которое ломает скрипты?

ну по ссылкам же.

> Все остальные изменения ломали максимум 5% каких-то совсем специфических скриптов

в зависимости от же. Нет, чувак, если у тебя ничего не ломается - ради бога, я тебя не уговариваю. Просто обратил внимание на факт. А дальше, кто больше методов использует - у того больше ломается, кто меньше - меньше, или авось обойдёт.


"Выпуск языка программирования Ruby 2.2.0"
Отправлено BAGIRRR , 04-Мрт-15 10:53 
Вот я и наступил на грабли.
В 2.2 гем netzke 0.9.0 выдавал ошибки при вызове модального окна с данными.
Пришлось откатиться на 2.1.3

А вы говорите...