LINUX.ORG.RU
ФорумTalks

ruby, так ли он хорош?


0

2

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

какие в нем есть подводные камни? почему он считается маргинальным?

Ответ на: комментарий от DNA_Seq

Ты не понял,

O'RLY?

DNA_Seq> на русском по руби до сих пор две с половиной книжки

DNA_Seq> до сих пор

10 лет назад почти и не было и самих Руби и Питона.

Питон вполне был. Я как раз выбирал скриптовый язык - интерпретатор Питона стандартно входил в RH 6.1, интерпретатор Руби - нет.

tailgunner ★★★★★
()
Ответ на: комментарий от DNA_Seq

Но под скриптовым языком по-дефолту понимался Перл ;)

Да, но я-то его не рассматривал.

tailgunner ★★★★★
()
Ответ на: комментарий от VladimirMalyk

нынче руби есть даже в билдруте

Да ради ТНБ. Но:

$ sudo apt-get remove ruby1.8 ruby1.9
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package ruby1.8 is not installed, so not removed
Package ruby1.9 is not installed, so not removed

А попытка вынести python забирает с собой если не половину системы, то четверть :)

tailgunner ★★★★★
()
Ответ на: комментарий от VladimirMalyk

Смотришь на эти пакеты и понимаешь, куда Ruby не проник :)

tailgunner ★★★★★
()
Ответ на: комментарий от O02eg

Там все есть. Если Ъ, то поспойлю: все еще печальнее.

segfault ★★★★★
()
Ответ на: комментарий от geekless

Это не претензия, а указание на недостаток с примерным указанием его размера. Чтоб ТС знал, чем он платит за простоту разработки.

segfault ★★★★★
()
Ответ на: комментарий от segfault

Я думаю, ТС знает, что Ruby лежит в одной коробке с Perl, а не с Java. ;)

geekless ★★
()
Ответ на: комментарий от demmsnt

Нет, не хочу. В любом случае такую информацию разумно получать из netstat, больше интересовала цепочка пайпов и последующие сut и grep: дергать непосредственно их, или реализовывать их функционал в python. Во втором случае попахивает идиотизмом, а в первом:

import os

os.system('netstat -ptcp -Ivlan1 | cut -d\' \' -f4- | grep -v «\d»')

что опять же дико, если не требуется последующая обработка. Повторюсь:

или же сфера применения не подобные вылосипеды, а что-то более объемное?

genesis_error
()
Ответ на: комментарий от genesis_error

Пайпы есть, но несколько неудобные по сравнению с БАШЕМ. Но зато в разы надежные.

Попробуй сделай на баше рекурсивный обход директорий с условием, что в каталогах буду файлы с пробелом, символами `rm -rf ~/` и т.п. Я на лабе в университете преподавателю хомяк снес так.... Он спорил, что его баш работает всегда.

demmsnt
()
Ответ на: комментарий от demmsnt

Вот не поверишь, сам для работы с файлами предпочитаю набросать пару строк на ruby.

символами `rm -rf ~/`

хомяк снес так

ну так баш-то работает, чо

genesis_error
()
Ответ на: комментарий от genesis_error

на ипитоне такое можно запилить, только возникнет небольшой разрыв шаблона.

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

In [22]: tmp = !netstat -tlnp

In [23]: tmp[2:]
Out[23]: 
['tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      866/cupsd       ',
 'tcp        0      0 127.0.0.1:36759         0.0.0.0:*               LISTEN      5505/GoogleTalkPlug',
 'tcp        0      0 0.0.0.0:1720            0.0.0.0:*               LISTEN      12553/ekiga     ',
 'tcp        0      0 0.0.0.0:3000            0.0.0.0:*               LISTEN      9886/ruby       ',
 'tcp6       0      0 ::1:631                 :::*                    LISTEN      866/cupsd']

In [24]:

VladimirMalyk ★★★★★
() автор топика
Ответ на: комментарий от genesis_error

>Ruby как-то избыточно и ненадежно
>shell-scripting решает

Поделил так поделил :}

Deleted
()
Ответ на: комментарий от genesis_error

или же сфера применения не подобные вылосипеды, а что-то более объемное?

Естественно. Пока хватает конвейеров, шелл вне конкуренции. Но как только нужны структуры данных (даже банальные массивы), Python начинает рулить.

tailgunner ★★★★★
()

Медленный. Обленяет. Нет ощущения хардкора.

daris
()
Ответ на: комментарий от val-amart

Ну не зря Ларри развлекается переписывая Перл скрипты на bash+awk+sed. Но c `rm -rf ~/` косяк у баша.

А вообще я сам стараюсь сначала писать на баше!

demmsnt
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.