Индекс форумов |
Исходное сообщение |
---|
"Интервью с Юкихиро Мацумото, создателем языка Ruby" Отправлено Аноним, 20-Мрт-21 00:04 |
В Руби было много приятных фишек с самого создания. Например, удобное (а не как в Хаскеле) базовое ФП с filter, map и прочим. Удобные лямбды (а не ограниченные одним выраженим как в Питоне). И это в сочетании с удобным ООП, и с 90-х годов! Методы контейнеров настолько удобны, что использовать циклы особо и не нужно. Регулярные выражения, встроенные в синтаксис языка, а не в стандартную библиотеку, можно матчить как в Перле и Awk просто через оператор и описывать регексы в /слэшах/ вместо строк с мучительным эскейпингом. Встроенный тип диапазона и синтаксис вида start..end прямо в языке. Фишки из классических Unix-инструментов Bash, Perl и Awk, типа функций sub, gsub, tr. Awk-режим с автоциклом, автосплитом, BEGIN и END. Упорядоченные методы на объектах, типа "str".upcase() и "str".length(), а не в разнобой "str".upper(), но len("str"). В функциях не обязательно писать return, как и в других ФП-языках. Очень удобно для крохотных функций, где return занимает пол-функции. А в Ruby 3 с синтаксисом "def method() = statement" стало ещё удобнее. Функция может возвращать несколько значений, просто через запятую, и принимать в виде "a, b = func()" без всяких скобочек и специальных операторов. if и case-when возвращают значения. Удобно, не надо повторять присваивание одной и той же переменной в череде if-elsif-elsif или case-when-when. Удобный матчинг в case-when, хоть со значением, хоть с типом. А в Ruby 3 уже и полноценный pattern matching with deconstruction подъехал, как в Scala и Haskell. |
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования. |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |