JRuby: где, зачем и кому нужен? И кто его юзает?

У меня возник такой вопрос (даже несколько):

1. Есть Ruby. Тот который основной, написанный на С, с рельсами и прочим. Есть Rubinius (или как его там), написанный на самих рубях — насколько я понимаю он пишется энтузиастами для энтузиастов (хотя возможно ошибаюсь).

Но, самое интересное — был IronRuby, который под дотнет, на сишарпе, но он приказал долго жить. И есть JRuby, который под JVM на джаве, но он по какой-то причине вроде как живет и здравствует. Не, я конечно понимаю — экостистема джавы и все такое, но почему тогда IronRuby копыта откинул? Ведь в дотнете тоже ж есть своя экосистема и она по-моему не намного меньше джавовской.

2. Теперь с другой стороны — есть JRuby, можно поднять Rails на экосистеме джавы... Но ведь есть Groovy с Grails, который был вдохновлен рубями и рельсами, зачем поднимать Rails, если есть Grails (не думаю, что груви намного сложнее рубей). Или дело тут не в «рельсах», а в чем-то другом? Использование руби в качестве встраиваемого скриптового языка для джавовских приложений? Или еще что-то?

3.Ы. Ну и наконец, кто его юзает? Рубисты, которым позарез нужно что-то из джавовской экосистемы? Или JRuby больше для фана делается (ну типа как рубиниус)? Ну и какие рубиновские фреймворки можно юзать на JRuby?

З.Ы. Если что — сам не рубист, но просто интересуют некоторые JVM-языки (а именно: Kotlin, Clojure, Groovy, Jython и собственно виновник создания данной темы).

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось1
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Было время, был у на такой Apache Buildr, это аналог Gradle но вместо Goovy или Kotlin — там Ruby. Работало это все дело на обычном Ruby, ну ка работало — тормозило по черному и потому еще на железе тех лет — совсем плохо было, шло часами. В общем как оказалось это дело можно запустить на JRuby (хотя мы усилиями энтузиастов побежали делать maven плагин и сделали его, но применяли его уже на других проектах). В обдем разница по скопости между JVM и Ruby VM — оказалась очень и очень существенной.
Примерно тоже самое можно сказать про JPython и частично PyPy.
С тех самых пор я очень скептически отношусь ко всякого рода новомодным языкам программирования, а тогда Ruby был именно таким — модной штучкой из Японии. Кроме 1000 способов отстрелить себе ногу до основания и сделать код который компилируется и работает как-то однако в стиле Perl его уже не может прочитать через месяц, сам автор ещё на проекте возникает — зоопарк технологий.

Ну и наконец, кто его юзает? Рубисты, которым позарез нужно что-то из джавовской экосистемы?

Скоріш навпаки — коли щось на ruby треба інтегрувати у JEE середовище.
Рубісти будуть скоріш дивитись на Crystal, ніж на JRuby.

насколько я понимаю он пишется энтузиастами для энтузиастов

Колись, розробку спонсорував RedHat

Но ведь есть Groovy с Grails, который был вдохновлен рубями и рельсами

Groovy повністю програв Kotlin, і зараз більше виглядає як legacy.

Было такое на одном из прошлых проектов: часть сервисов на Python, часть на Java. Python-сервисы определенным образом трансформировали входящие документы. В Java-сервисах со временем потребовались такие же трансформации.
Чтобы избежать дублирования и дальнейшей потенциальной рассинхронизации кода трансформеров, выделили общую логику на Python и выполняли ее в CPython и Jython.
Из минусов припоминаю не особо удобоваримые стэктрейсы из Jython, когда натыкались на ошибки в наших трансформерах, и непреодолимое на тот момент отставание мажорной версии Jython от CPython. Но в целом, задумка сработала достаточно хорошо.

В 2к21 руби вообще кто-то юзает? Руби же застрял где-то в 2005 когда многие языки двигались вперед.

У чому тайний сенс використання к замість 0 у даті?

2к21 это 2210, а не 2021. Используйте, пожалуйста, такие нотации правильно.

Обозначения подобного рода пришли из схемотехники, других источников у них нет.
А там они используются так, что буква типа «к» или «м» заменяет десятичную точку (запятую) при соответствующем порядке (тысяча, миллион). 2к21 == 2.21*1000 == 2210.
Любое использование в другом значении бессмысленно и некорректно.

Вы конечно знатный схемотехник и все такое. У нас тут форум схемотехников и его комменты это схема естественно.

Но это обозначение пришло в повседневное употребление от греческого kilo (The prefix kilo is derived from the Greek word χίλιοι (chilioi), meaning «thousand».)

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

Спасибо за внимание.

Но это обозначение пришло в повседневное употребление от греческого kilo

Нет. Именно это употребление пришло оттуда, откуда я рассказал. Иначе бы оно выглядело иначе.

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

Да пожалуйста. Вам, видимо, приятнее будет говорить с одним-единственным умным человеком в мире — с самим собой. Не смею тогда мешать.

Спасибо за внимание.

Всегда пожалуйста (в пределах ресурса на отвлечение на всякую ерунду).

Нет. Именно это употребление пришло оттуда, откуда я рассказал.

Потому что вы так сказали?

Да пожалуйста. Вам, видимо, приятнее будет говорить с одним-единственным умным человеком в мире — с самим собой. Не смею тогда мешать.

Так это ж вы пришли учить других как говорить и умничать про схемотехнику, не?)

p.s. это реально пришло не из схемотехники.
можно ссылочку почитать про нотацию из этой вашей схемотехники?

Так это ж вы пришли учить других как говорить и умничать про схемотехнику, не?)

Причём не вас. А взвились почему-то вы.

Про “умничать” пропущу. Видимо, в ваши ожидания применение ума не входит.

можно ссылочку почитать про нотацию из этой вашей схемотехники?

Да пожалуйста.

en.wikipedia.org/wiki/Resistor

> One common scheme is the RKM code following IEC 60062. Rather than using a decimal separator, this notation uses a letter loosely associated with SI prefixes corresponding with the part’s resistance. For example, 8K2 as part marking code, in a circuit diagram or in a bill of materials (BOM) indicates a resistor value of 8.2 kΩ

en.wikipedia.org/wiki/Capacitor

то же самое про RKM code:

> Example: 4n7 for 4.7 nF or 2F2 for 2.2 F.

Дальше нет смысла копать, будет повторяться.

Спасибо!

Но все же, почему вы взяли, что оно пришло оттуда, а не например из поп культуры?

Потому что сам принцип такого обозначения — именно в стиле 2k21, а не, например, 2k — не мог сам по себе возникнуть в поп-культуре иначе как увидев (и неверно проинтерпретировав) такие знаки. Ну не думают там люди подобными подходами. Значит, позаимствовали и перекорёжили.

честно говоря, странная логика, основанная на домыслах.

много чего похоже на много чего.

А я думаю, что после Y2k и после NBA 2K это пришло в обиход и не имеет никакой другой конотации.

И имеет право и такое чтение и друге. И ничего плохого в этом нет.

Это достаточно распространенное и устоявшееся использование в разговорной речи

Эээ... одного этого достаточно, чтобы понять, что GPT несёт безнадёжную пургу. «два ка двадцать один» в _разговорной_ речи... или ссылку, или не бывает.

Ну а то, что оно — по крайней мере в текущих бесплатно доступных версиях — в >90% случаев, когда чего-то не знает, несёт какую угодно пургу, лишь бы дать ответ — окончательно убеждает в ненадёжности источника.

Но это уже многократно обсуждалось рядом.

Корректности вам хватило только на один комментарий. На втором сорвались.

Штош 𐇯

Підписатись на коментарі