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

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

Отправлено opennews , 25-Дек-19 22:47 
После года разработки опубликован релиз Ruby 2.7.0, динамического объектно-ориентированного языка программирования, отличающегося высокой эффективностью разработки программ и вобравшего в себя лучшие черты Perl, Java, Python, Smalltalk, Eiffel, Ada и Lisp.  Код проекта распространяется под лицензиями BSD ("2-clause BSDL") и "Ruby", которая ссылается на последний вариант лицензии GPL и полностью совместима с GPLv3.  Ruby 2.7 является седьмым значительным выпуском, подготовленным в рамках  планового процесса разработки, подразумевающего отведение года на подготовку функциональных улучшений и формирование каждые 2-3 месяца корректирующих выпусков...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=52091


Содержание

Сообщения в этом обсуждении
"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 25-Дек-19 23:01 
Сферические примеры паттерг-матчинга в вакууме настолько понятны, что не ясно зачем оно вообще нужно. Поясните для слоупоков, зачем это всё на самом деле?

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Поедатель борщей , 25-Дек-19 23:13 
В нормальных языках — работать с ADT, с типами-суммами и типами-произведениями. В смысле, удобно работать, а не как вот тут.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Ordu , 25-Дек-19 23:33 
Взяли [0, [1, 2, 3]] и сопоставили с образцом [a, [b, *c]]. Получили три локальные переменные a, b и c, в a лежит 0, в b -- 1, в c лежит список [2, 3]. Или это не список в ruby, а массив? Не помню уж, но не суть важно.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено ррр , 26-Дек-19 21:59 
> Взяли [0, [1, 2, 3]] и сопоставили с образцом [a, [b, *c]].
> Получили три локальные переменные a, b и c, в a лежит
> 0, в b -- 1, в c лежит список [2, 3].
> Или это не список в ruby, а массив? Не помню уж,
> но не суть важно.

не спорю


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 25-Дек-19 23:40 
Как ни печально, но ruby - живой труп

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 25-Дек-19 23:55 
живой, но не труп

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Анонец , 26-Дек-19 00:03 
как живой, но не живой!

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

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Влад , 26-Дек-19 00:02 
Да нет, это кажется на самом деле. Просто прошел пик хайпа. Вакансий много, коммиты в популярные проекты все ещё есть регулярно. Ну и isrubydead.com конечно

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 00:48 
Подтверждаю. Куэйщики используют вовсю - язык достаточно прост, чтобы ним могли пользоваться не программисты, и фреймворки понятные.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 02:00 
кто такие куэйщики, если не секрет? QA?

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Я , 26-Дек-19 11:38 
да

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 12:28 
Редмайн написан на Руби может поэтому он для куэй? Да и бреу на Руби. На руби действительно хороших юзабельных продуктов существенно больше чем на том же расте на котором только парсилка каскадных таблиц и всё.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 13:18 
А еще, все сидят на Discourse, разрабатывают вместе с gitlab. И пользуются инет-магазинами типа Spree....

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Брат Анон , 26-Дек-19 15:16 
На ржавом сложно сделать что-то вменяемое вообще.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено ogmy , 26-Дек-19 00:00 
Прошла любовь завяли помидоры.
Вакансий почти нет.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:54 
Та нет. Ровно столько же сколько и вакансий на Pascal.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:54 
УДивительно, но и столько же сколько вакансий на Golang.
Подозрительно, что возможно это тоже проходной язычок.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Брат Анон , 26-Дек-19 15:19 
Гугель.Тренды утверждают, что ты не китаец))
https://trends.google.com/trends/explore?date=today%205...,Ruby

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Shtirlic , 26-Дек-19 18:52 
https://trends.google.com/trends/explore?q=%2Fm%2F...,%2Fm%2F06ff5
вот правильное сравнение, а не то что у вас

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 10:57 
И что на сервисе гугла победил язык от гугла вот это новости.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Брат Анон , 30-Дек-19 11:15 
Ага. Давай зачотку анон!))

"Выпуск языка программирования Ruby 2.7.0"
Отправлено balajahe , 26-Дек-19 17:05 
> Вакансий почти нет

Ruby - 176
Rust - 7


"Выпуск языка программирования Ruby 2.7.0"
Отправлено аноним3 , 26-Дек-19 00:07 
чет синтаксис питона выглядит куда понятнее и человечнее. а тут попытка закосить под крутой язык? ну я когда смотрел разницу подходов питона и руби, так сразу засек , что руби как то менее человечен чем питон. а ведь оба интерпретируемые языки. и со стремлением к понятной и быстрой разработке. впрочем на руби я встречал как то мало скриптов. хотя даже в лине попадались, но как то не больше 5 штук.)) язык не пошел.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 08:00 
Для того, чтобы рассуждать о языке, надо понимать его модель. В Ruby акцент на человекочитаемость. Чтобы человек, понимающий естественную речь (английскую по-умолчанию), мог понять программу. Отсюда, у программистов-нелюдей с изменённым состоянием сознания, возникает диссонанс, глядя на Ruby, что в Ruby так можно, а в их любимом ЯП - нет.

> впрочем на руби я встречал как то мало скриптов.

пользуйтесь OpenSUSE или MacOS


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:30 
>  выполнять дефрагментацию области памяти, решая проблемы снижения производительности

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


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:51 
на правах ИМХО...

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

Но это в теории... что и кому добавится на практике посмотрим на продакшенах :)


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 00:52 
Гуглить Крис Касперски "Техника оптимизации программ. Эффективное использование памяти".

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


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 07:39 
Лучше читать классику «Using Block Prefetch for Optimized Memory Performance», Advanced Micro Devices, Mike Wall  https://web.mit.edu/ehliu/Public/ProjectX/Meetings/AMD_block...

Не ясно что больше от книжек Криски, вреда или пользы.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Я , 26-Дек-19 11:40 
У Криса оптимизация существенно лучше расписана.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 14:10 
Вопрос в том, насколько информация в его интерпретации верна.

«На процессоре Р-III 733/133/100 оптимизированный вариант выполняется быстрее на целых 66%, а на АМD Athlоп 1050/100/100 — на 60%, т. е. предвыборка увеличивает производительность более чем в два раза!»


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 15:56 
Неоптимизированный код - 100 секунд. Оптимизированный код - на 60% (60 секунд) быстрее; то есть 40 секунд.
40 секунд - более чем в два раза меньше, чем 100 секунд.

Кроме того, в книге приводятся графики тестов по доступу к памяти, множество фактов и примеров. Я, например, такие же тесты использовал, когда оптимизировал им одну либу для гугла под хромбук.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 17:49 
> Неоптимизированный код - 100 секунд. Оптимизированный код - на 60% (60 секунд)
> быстрее; то есть 40 секунд.
> 40 секунд - более чем в два раза меньше, чем 100 секунд.

Вот именно -- секунд. Секунда это единица измерения времени. Быстрее -- характеристика скорости, есть обратной ко времени величины. Корректно было бы: «время выполнения на 66% меньше».

Таким образом, после прочтения книжек Криски в голове образуется каша, которую не каждому дано переварить.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 19:55 
Это в _вашей_ голове образуется каша. А в головах других людей - не образуется.

В данном случае вы слишком занудствуете. Это руководство по оптимизации, а не справочник. Написанное отличным живым языком, от которого не хочется уснуть через пять минут чтения.

Тем более, что справочников в принципе на эту тему быть не может.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 06:20 
> Это в _вашей_ голове образуется каша. А в головах других людей -
> не образуется.

Ниже https://www.opennet.me/openforum/vsluhforumID3/119316.html#80
живой пример ;)

> В данном случае вы слишком занудствуете. Это руководство по оптимизации, а не
> справочник. Написанное отличным живым языком, от которого не хочется уснуть через
> пять минут чтения.

Криска хорош как популяризатор, но во всех темах плавает. Многократно разбиралось на reng, wasm (где формат опкодов за него переписал The Svin, из-за излишней "скромности" Криски не упомянутый в переиздании) и RSDN. Он сам по факту осознал свою некомпетентность, перейдя к любовным романам под женским псевдонимам.

> Тем более, что справочников в принципе на эту тему быть не может.

Откройте для себя «Intel® 64 and IA-32 Architectures Optimization Reference Manual» и аналог от AMD.



"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним2 , 26-Дек-19 21:17 
Вопрос-то Вы задавали не о секундах.
И человек Вам доступно объяснил, почему 60% - это более, чем в два раза.
«время выполнения на 66% меньше» - это и значит "быстрее на 66%" или "скорость/производительность больше на 66%".
А теперь подсчитайте буквы в кавычках, где проще и понятнее?
"...после прочтения книжек Криски ... не каждому дано переварить." - С этим согласен :)
"...Криски..." - Сказал Мэтр.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 06:27 
> Вопрос-то Вы задавали не о секундах.
> И человек Вам доступно объяснил, почему 60% - это более, чем в
> два раза.
> «время выполнения на 66% меньше» - это и значит "быстрее на 66%"

Откройте для себя учебник математики, тема пропорции. Следом порешайте задачки про пункт А и пункт Б. По данной, так и быть, скажу ответ, что бы не ждать весенних каникул. Если время сокращается на две трети, скорость утраивается. ;)

> или "скорость/производительность больше на 66%".
> А теперь подсчитайте буквы в кавычках, где проще и понятнее?
>  "...после прочтения книжек Криски ... не каждому дано переварить." - С
> этим согласен :)
>  "...Криски..." - Сказал Мэтр.

Вот здесь:

«Предвыборка сокращает время выполнения на процессоре Р-III 733/133/100 на  66%, а на АМD Athlоп 1050/100/100 — на 60%. Грубо говоря, производительность утраивается.»

Но Криске платили за странички, потому он налил какой попало водички.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним2 , 28-Дек-19 01:29 
Насчет "скорость/производительность больше на 66%" - опечатка, согласен.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним84701 , 26-Дек-19 01:09 
>>  выполнять дефрагментацию области памяти, решая проблемы снижения производительности
> Кто в теме, объясните нубу, как дефрагментация памяти повысит производительность? Это же
> не диск, где головка туда-сюда дёргается, там просто адрес ячейки.

Это, скорее всего, вот отсюда:

https://www.ruby-forum.com/t/heap-fragmentation-in-a-long-ru...
> Thanks to Jamis B. [5] and Mauricio F. [6] I was able to determine that the application was stuck for several seconds in glibc’s realloc, which may be called (via ruby_xrealloc) from basically anywhere within ruby where a new or enlarged chunk of memory might be required.

[...]
> And then - all praise bugzilla - I found a bugreport [8] describing almost exactly my problems and leading me to ptmalloc3 [9].

[...]
> As far as I understand, ptmalloc3 does not eliminate heap fragmentation.
> However, due to the bit-wise tree employed in the newer version, it finds free chunks of the right size in shorter time by several orders of magnitude. Additionally, it seems that glibc 2.5 abandons its attempts to find a best-fit chunk after a while (possibly after 10000 tries),

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


"Выпуск языка программирования Ruby 2.7.0"
Отправлено GentooBoy , 26-Дек-19 06:22 
нет не про это, комментатор выше все правильно сказал, дело в блоках и кэш линиях.
Конкретно про руби эрон выступрал даже на конфе и есть статья, лиже линки если хотите разобраться как
https://bugs.ruby-lang.org/issues/15626
https://www.youtube.com/watch?v=H8iWLoarTZc


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 07:33 
> нет не про это, комментатор выше все правильно сказал, дело в блоках
> и кэш линиях.
> Конкретно про руби эрон выступрал даже на конфе и есть статья, лиже
> линки если хотите разобраться как
> https://bugs.ruby-lang.org/issues/15626
> https://www.youtube.com/watch?v=H8iWLoarTZc

Имеет смысл располагать в линейке кеша объекты, доступ к которым происходит примерно в одно время (как правило, такие объекты и создаются условно одновременно). Вот что по ссылке:

This compactor uses a "two finger" algorithm which was introduced in "The
Programming Language LISP: Its Operation and Applications" (page 228)1. Two
pointers point at each side of the heap, if one slot is empty, and the other is
moveable, it swaps places and leaves a T_MOVED object that contains a
forwarding address.

Похоже, при таком обмене происходит перемешивание объектов. Это видно даже на приведённой в объяснении по ссылке иллюстрации, где №6 становится №3, а №5 — №4. При большей дистанции между объектами "перемешивание" окажется сильнее, исходно размещённые рядом объекты окажутся где ни попадя.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 08:57 
Да это вполне возможно.
По поводу целесообразности встраивания в линейки незнаю. Надо тестировать смотреть. Может быть что целесообразно доработать код для этого, а может нет.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 10:58 
> т.е. проблема поиска свободных блоков памяти при сильной фрагментации - "приветик" от создания короткоживущих объектов "на каждый чих".

Интересно бы почитать, как с этим делом в Эрланге, с ихним "share nothing" создание переменных на каждый чих - во все поля.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 13:45 
Гугли про generational gc. В эрланге так же как в хацкелле, жабе и прочих сишарпах. С поправкой на тот факт, что в энларге можно собирать мусор в каждом потоке отдельно, не останавливая весь мир.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 16:12 
> т.е. проблема поиска свободных блоков памяти при сильной фрагментации - "приветик" от создания короткоживущих объектов "на каждый чих".

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


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним84701 , 26-Дек-19 17:20 
>> т.е. проблема поиска свободных блоков памяти при сильной фрагментации - "приветик" от создания короткоживущих объектов "на каждый чих".
> Для языков со сборкой мусора это как раз не проблема. Именно в задачах, где надо создавать много короткоживущих объектов языки с GC уделывают традиционные.

Собственно, с этим никто не спорил.
Просто в конкретных реализациях GC/аллокаторов - иногда таки можно наткнуться на какой-нибудь проблемный случай.
По приведенной ссылке - как раз описана такая ситуация "highly dynamic object-space". Решалась там  (в конце-концов) прикручиванием другого аллокатора: " The problem can be mitigated by linking ruby against ptmalloc3."


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Совершенно другой аноним , 27-Дек-19 15:39 
http://rus-linux.net/lib.php?name=/MyLDP/hard/memory/memory....

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Совершенно другой аноним , 27-Дек-19 15:39 
http://rus-linux.net/lib.php?name=/MyLDP/hard/memory/memory....

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:36 
Неоднозначный синтаксис языка не позволяет делать полноценный синтаксический анализатор для IDE. Правда код на руби остается понятным и читаемым долго и клепается нечеловечески быстро это факт, даже без поддержки IDE. Но есть одна деталь которая напрочь этот руби делает непригодным - приложения жрут невероятно процессорное время часто в десятки раз больше чем на других языках. Такое г. непонятно где хостить (и нужно ли в итоге?).

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 00:57 
Так в чем причина потребеления процессорного времени? Смотрели профайлером?
Просто ради любопытства даже тем же Python надо стараться что бы утилизировать весь CPU.
Может что-то не так делаете? Не используете асинхронность например?

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 01:08 
Ну не десятки. (Если не сравнивать с "hello world" на си)

А, например, если нужно распарсить HTTP запрос, дернуть контроллер, который сходит в БД, сгенерить HTML и оттдать клиенту... Если у вас руби для этого больше 50мс от ядра CPU отнял, вы что-то (пере)мудреное делаете, стоит присмотреться внимательно.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено GentooBoy , 26-Дек-19 06:40 
Пишите о том в чем не разбираетесь.

>Неоднозначный синтаксис языка не позволяет делать полноценный синтаксический анализатор для IDE

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

>приложения жрут невероятно процессорное время часто в десятки раз больше чем на других языках

Полнейший бред, выжирание памяти да есть, руби любит память кушать. CPU  кушает как и питон.
https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
Единственное есть проглемы с временем старта, связанные с тем что загружаються  gem  при старте. Но над этой проблемой ведется работа. Если отрубить  gem  то время старта практически точно такое же как у питона(до перл не дотягивает). Так что даже для подстрочников он вполне юзабельный.

>Такое г. непонятно где хостить (и нужно ли в итоге?).

Ваши наезды не релевантны, у руби куча недостатков, но это не те что вы озвучили.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено qwerty123 , 26-Дек-19 11:10 
>Но есть одна деталь которая напрочь этот руби делает непригодным - приложения жрут невероятно процессорное время часто в _десятки_ раз больше чем на других языках.

В сотни! В тысячи! В миллионы! =)

Идите уже делать уроки, что-ли...


"Выпуск языка программирования Ruby 2.7.0"
Отправлено fyjybvjec , 26-Дек-19 14:06 
Ну руби правда тормозной, чтож делать то lol
У руби другие достоинства, но явно если не нужно решать задачи где нужна высокая производительность.
Наляпать что то по быстрому, обработать не очень много хттп запросов на небольшом сайте, тут у руби нет конкурентов.

Статистики, много ее - это случайная с гугла

https://attractivechaos.github.io/plb/

Implementation     Lang     sudoku:t    matmul:t    matmul:m    patmch:1t    patmch:2t    dict:t    dict:m
C                     1.0     2.3     31.7     1.7    4.5    3.0    52.6
C#@Mono-2.10.1     C#     3.8     8.9     40.6     15.7    45.1    5.2    113.9
Ruby-1.9.2p180     Ruby     98.0     628.4    196.6    15.4    30.3    8.6    156.8


"огоо lol минусик поставили XD ну правда она такая.. глаза режет"
Отправлено fyjybvjec , 26-Дек-19 15:33 
Инженерный подход к решению задач рулит - когда вы используете то что вам нравится а не то что надо по задаче, где то умирает еще один котик)

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Додо , 26-Дек-19 18:25 
Эм. Эта ссылка датирована 2011 годом, с тех пор как бы много что поменялось.
Ruby по сравнению с остальными языками небыстрый, это да, но скорость разработки на нем фантастическая. И не для всех задач скорость работы первостепенно важна - если страничка какого-то среднего интернет-магазина будет грузиться не за 30 мс, а за 70 мс, это не сильно критично.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 19:18 
> Неоднозначный синтаксис языка

На этом поле давно всё занято плюсами.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 02:02 
Мне в руби больше всего нравились символы а-ля Lisp

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Рубист , 26-Дек-19 06:13 
Руби крутейший язык, аналогов которому нет. Питон это недорозумение.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено safdasfa , 26-Дек-19 09:04 
два бокала чая этому господину

"Выпуск языка программирования Ruby 2.7.0"
Отправлено fyjybvjec , 26-Дек-19 14:13 
Питон изучается за пару дней, код ясен и понятен. Пишут макеты, алгоритмы, обвязки для мат библиотек, аа еще блендер на питоне. У этих языков разные области применения.
Аналогов более чем в избытке - причем это я не в минус руби - отличный язык для некоторых задач.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Урри , 26-Дек-19 16:03 
Питон не изучается за пару дней. Пара дней - это порог вхождения в питон. И это две большущие разницы.

Только вот есть одна маленькая проблема - потом существенно больше времени и ресурсов тратится на переделывание.
Вы упомянули блендер - не хотите вспомнить, сколько блендер прозябал? 99,9% претензий к нему были "слишком тормозной, невозможно работать". И взлетать он стал только после того, как компьютеры стали достаточно мощные и(!) после того, как его наконец-то переделали профессионалы (в том числе большей частью переписали на C).

Почем знать, если бы сразу писали нормально - может он бы уже давно стал стандартом де-факто в мире 3д.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено fyjybvjec , 26-Дек-19 16:28 
Вы совершенно правы, за два дня его не изучить, но имеет низкий порог вхождения.
На питоне хорошо делать макеты или отлаживать алгоритмы (с переносом куда то после). + отличная интеграция со сторонними библиотеками.

Но мой ответ был комментатору про <<Руби крутейший язык, аналогов которому нет. Питон это недорозумение. >>

Блендер, отличная штука, большая часть плагинов на питоне, есть на С, ядро было изначально на С.
Моделирование если сравнивать с майей на 4+, текстурирование предпочитают после делать в 3д максе, нормальный рендеринг появился начиная с Cycles (2016 год), Скиннинг и анимации до сих пор очень слабо если без плагинов - с майей не сравнить.

Так что можно сказать что он был не особо популярен не из за тормозного питона (а они все тормозные, эти 3д пакеты) просто по своей неразвитости, сейчас сильные подвижки будем надеяться что его допилят :).
Вот лов-поли модельки на нем делать ОК + экспорт в SL из коробки.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 17:55 
В саблайме плагины тоже на питоне, только это не значит что саблайм написан на питоне.

Вот например  vs code плагины на джаваскрипт, но сам браузер большей частью на Хроме написан т.е. тоже на C++.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 06:48 
> def foo(key: 42); end; foo({key: 42})   # warned
> def foo(key: 42); end; foo(**{key: 42}) # OK

Вот уроды! Делают .NET из моего руби.

> Из базовой поставки во внешние gem-пакеты вынесены библиотеки CMath (cmath gem), Scanf (scanf gem), Shell (shell gem)

А это уже пистоно-болезнь!..
Матц, вернись! Хипстеры гробят язык!


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Че , 26-Дек-19 07:17 
Роберт Шекли. "Необходимая вещь"
В этом рассказе вся боль "Руби"

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 09:19 
Кто знает как называется шрифт на первом скриншоте?

"Выпуск языка программирования Ruby 2.7.0"
Отправлено ququmber , 26-Дек-19 10:10 
присоединяюсь, что за шрифт.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 10:10 
На terminus похож.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Я , 26-Дек-19 11:47 
нет, это не терминус.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 10:11 
Любой язык где возможна конструкция вида a=a+b-(b=a) не нужен.

А это как минимум Руби, Джаваскипт, С++.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 10:12 
Вообще-то нужен.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 10:26 
Вообще-то в нужных языках хватает такой конструкции: a, b = b, a

А та что выше это дичь.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено привет , 26-Дек-19 11:01 
Кроме как питоне такая именное есть где то?
этож штука вроде (a, b) = (a,b) в перле?

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


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 12:23 
В перле ты просто пробел убрал? и что он делает?

a, b = b, a; есть в Го в Руби тоже есть.

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

Для Руби можно даже без скобок записать. Такая конструкция уже гарантированно ломает мозг.
a=a+b-b=a; с тем же результатом что и выше. Но имхо языки которые такое позволяют решительно не нужны.


"Выпуск языка программирования Ruby 2.7.0"
Отправлено привет , 26-Дек-19 19:31 
> В перле ты просто пробел убрал? и что он делает?
> a, b = b, a; есть в Го в Руби тоже есть.

(a, b) = (b, a);

те тоже самое, но на мой взгляд лаконичнее. кому то скобки
показатся лишними могут, конечно.

Пробел конечно же не значит ничего, поставлен в попыхах :)

Я к тому написал, что мне представляли конструкию "магией" питона
хотя ничего магического я в ней не видил - потому решил уточнить у знающих

> Это две переменные меняются значениями без создания третьей или без необходимости записи
> трех строк кода чтобы поменять переменные без создания третьей. В некоторых
> алгоритмах так быстрее всего записать. Причем строка в начале этого топика
> делает тоже самое, но как-то странно.
> Для Руби можно даже без скобок записать. Такая конструкция уже гарантированно ломает
> мозг.
> a=a+b-b=a; с тем же результатом что и выше. Но имхо языки которые
> такое позволяют решительно не нужны.

смотрится неоднозначно, согласен с вами :)


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 13:17 
Хокку:

Лучше python 2.7
чем ruby 2.7


"Выпуск языка программирования Ruby 2.7.0"
Отправлено Брат Анон , 26-Дек-19 15:24 
Лучше Оберон, чем Пхытон-8

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Дек-19 16:28 
Пока мамкины эксперты пыхтят свои басни о недостатках, руби помогает зарабатывать миллиарды баксов, просто за счёт быстрой разработки, ибо стоит она дороже любых системных ресурсов (которые руби жрёт не так уж и активно).

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Gjrkdj , 26-Дек-19 23:43 
Ruby - всего лишь миллиарды, когда Python позволяет заработать триллионы

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 10:22 
Есть небольшая для питонистов проблема. Может и триллионы, но в удельном выражении на одного "разработчика" это означает "работать за еду". Собственно, это единственная причина, почему есть вакансии на Питоне.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 10:56 
Это ты с пыхерами перепутал. А там и десятки триллионов могут быть. В руби ты тоже как-то умолчал что миллиарды получают далеко не программисты...

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 27-Дек-19 19:38 
В Ruby-мире как-то не встречаются низкооплачиваемые вакансии. Если только реально только вчера начал программировать. А вот питонисты - за еду готовы. Собственно, они и есть предполагаемая замена пэхеров, если получится. Но не факт.

"Выпуск языка программирования Ruby 2.7.0"
Отправлено Аноним , 26-Фев-20 18:01 
Оказывается Руби старый? Японец ведь его родил.