Ruby

Скриншот программы:
Ruby
Детали программы:
Версия: 2.5.1 обновление
Дата загрузки: 17 Aug 18
Разработчик: Ruby team
Тип распространения: Бесплатная
Популярность: 73

Rating: 3.7/5 (Total Votes: 3)

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


Особенности, множество функций

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

Кроме того, Ruby имеет единственное наследование только, истинное закрытие, блоки в своем синтаксисе, истинный сборщик мусора и разметки, поддержку для написания расширений C, целые числа, поддержку для динамической загрузки библиотек расширений, и это doesn & rsquo; t нужны объявления переменных.


Начало работы с Ruby

Установка языка программирования Ruby в операционной системе GNU / Linux является очень простой задачей, поскольку пакет доступен для загрузки во всех основных дистрибутивах непосредственно из их основных хранилищ программного обеспечения. Используйте встроенное приложение Software Center для его установки.

В качестве альтернативы, последняя версия может быть установлена ​​с использованием исходного пакета, который бесплатно распространяется на Softoware. Просто загрузите его и сохраните в своем домашнем каталоге, извлеките архив и перейдите к местоположению извлеченных архивных файлов в приложении эмулятора терминала (например, cd /home/softoware/ruby-2.2.0).

Запустите & lsquo; ./ configure & rsquo; команды для настройки проекта (вы можете использовать команду & lsquo; ./ configure --help & rsquo; для просмотра доступных опций для оптимизации Ruby для конкретной аппаратной архитектуры). Затем запустите & lsquo; make & rsquo; команда для ее компиляции и & sdo make install & rsquo; для его установки.


Поддерживается в GNU / Linux, Windows, Mac OS X, BeOS и OS / 2

Ruby - это кросс-платформенное программное обеспечение, которое можно успешно использовать во всех дистрибутивах GNU / Linux, а также в любой UNIX-подобной операционной системе, включая Mac OS X, BeOS, OS / 2 и Microsoft Windows. Он совместим как с 32-разрядными, так и с 64-разрядными компьютерными платформами.

Что нового в этой версии:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.5.0:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.4.2:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.4.1:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.4.0:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.3.3:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.3.1:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.3.0:

  • Вводится липкая строка String Literal Pragma. С Ruby 2.1 оптимизация «str» была оптимизирована для уменьшения распределения объектов. Ruby 2.3 вводит новый параметр магии и командной строки, чтобы заморозить все строковые литералы в исходных файлах. Кроме того, для отладки вы можете получить, где объект создан на "не может изменить замороженную строку" ошибка с помощью опции командной строки --debug = frozen-string-literal.
  • Для упрощения обработки nil в качестве obj & .foo введен безопасный навигационный оператор (так называемый одиночный оператор) &., который уже существует в C #, Groovy и Swift. Также добавляются массивы # dig и Hash # dig. Обратите внимание, что это ведет себя как попытка! Active Support, которые специально обрабатывают только нуль.
  • Драгоценный камень did_you_mean в комплекте. Драгоценный камень did_you_mean показывает кандидатов в NameError и NoMethodError для облегчения отладки.
  • RubyVM :: InstructionSequence # to_binary и .load_from_binary вводятся как экспериментальная функция. С помощью этих функций мы можем создать систему предварительной компиляции ISeq (байт-код).
  • Он также включает в себя многие улучшения производительности, например, структуру данных ввода-вывода для переосмысления, введение новой структуры данных таблицы, оптимизацию вызова Proc #, настройку уровня машинного кода для распределения объектов и кода вызова метода, более интеллектуальную структуру данных переменных экземпляра, Сокет и ввод-вывод позволяют использовать исключение: & quot; ключевые слова для высокопроизводительных неблокирующих операций ввода-вывода и т. д.

Что нового в версии 2.2.3:

  • Этот выпуск содержит исправление безопасности для домена RubyGems уязвимость проверки имен. CVE-2015-3900 Запросить уязвимость захвата в RubyGems 2.4.6 и более ранних версиях

Что нового в версии 2.2.2:

  • Этот выпуск содержит исправление безопасности для расширения OpenSSL уязвимость проверки имени узла.

Что нового в версии 2.2.0:

  • VM (кэш методов)
  • RGenGC (см. презентацию RubyKaigi от ko1 и презентацию RubyConf 2013)
  • уточнения # 8481 # 8571
  • Синтаксические изменения:
  • Десятичный / сложный литерал # 8430
  • возвращаемое значение def # 3753
  • Bignum:
  • использовать GMP # 8796
  • String # scrub # 8414
  • Socket.getifaddrs # 8368
  • RDoc 4.1.0 и RubyGems 2.2.0
  • "literal" .Freeze теперь оптимизирован # 9042
  • добавить исключение # причина # 8257
  • библиотеки обновлений, такие как BigDecimal, JSON, NKF, Rake, RubyGems и RDoc.
  • удалить проклятия # 8584

Что нового в версии 2.0.0-p0:

  • Основные возможности ядра:
  • Аргументы ключевого слова, которые придают гибкость дизайну API
  • Модуль # prepend, который является новым способом расширения класса
  • Литеральный% i, который легко создает массив символов.
  • __ dir__, который возвращает имя исполняемого файла
  • Кодировка по умолчанию UTF-8, которая делает допустимыми многие магические комментарии
  • Встроенные библиотеки:
  • Перечислимый # lazy и Enumerator :: Lazy, для (возможно бесконечного) ленивого потока
  • Размер перечислителя # и размер диапазона # для оценки ленивого размера
  • #to_h, который является новым соглашением для преобразования в Hash
  • Onigmo, который является новым движком regexp (вилка Oniguruma)
  • API обработки асинхронных исключений
  • Поддержка отладки:
  • Поддержка DTrace, которая позволяет проводить диагностику во время производства
  • TracePoint, который является улучшенным API трассировки
  • Улучшения производительности:
  • Оптимизация GC с помощью растровой маркировки
  • Ядро # требует оптимизации, что делает запуск Rails очень быстрым
  • Оптимизация VM, такая как отправка метода
  • Оптимизация работы с плавающей точкой

Что нового в версии 1.9.3-p392:

  • В этом выпуске содержатся исправления безопасности о связанных JSON и REXML:
  • Уязвимость Denial of Service и Unsafe Object Creation в JSON (CVE-2013-0269)
  • Расширение сущности DoS-уязвимости в REXML (XML-бомба)
  • И некоторые небольшие исправления также включены.

Что нового в версии 1.9.3-p385:

  • Этот выпуск содержит исправление безопасности в комплекте RDoc.

Что нового в версии 1.9.3-p384:

  • Этот выпуск содержит исправление безопасности в комплекте RDoc.

Что нового в версии 1.9.3-p286:

  • $ БЕЗОПАСНОЕ устранение уязвимости об исключении # to_s / NameError # to_s (CVE-2012-4464, CVE-2012-4466)
  • Непреднамеренное создание файла, вызванное введением незаконного символа NUL
  • другие исправления ошибок.

Похожие программы

Python
Python

22 Jun 18

boot
boot

20 Feb 15

g95
g95

2 Jun 15

Комментарии к Ruby

Комментарии не найдены
добавить комментарий
Включите картинки!