avva: (Default)
[personal profile] avva

Я хотел бы написать, что проблема, которая стоит перед языком Руби и его сообществом - преодолеть засилие радостных идиотов, fanboys, которые наполнили собой и засоряют сообщество. Но я не уверен, что это действительно проблема. Да, мне лично, и многим другим (как аутсайдерам с точки зрения Руби, подобно мне, так и опытным разработчикам в нем) это не нравится и отталкивает. Но, с другой стороны, весь этот шум в конечном счете ответственен за популярность этого языка, за его растущую известность, за mindshare в программистской среде.

Обычное дело - когда о чем-то очень громко говорят, выходит, что говорят в основном дураки. А что поделать, если хочется быть услышанным?

В последнее время мне попались два примера.

What's Wrong With Ruby - мнение человека, которому не очень понравился Руби. В статье он перечисляет, что ему не понравилось и что показалось перехваленным в обычных описаниях Руби. При этом он сохраняет вполне корректный и умеренный тон, и отдает должное языку в том, что ему понравилось. Интересная статья, несколько эклектичная и недостаточно подробная, но все равно интересная. Я, например, разделяю неприязнь автора к "cutesy introductory tutorials", и особенно к знаменитому в сообществе Руби Why's (Poignant) Guide. Это ужасная на мой взгляд книга, полная несмешных вымученных шуток и картинок, идиотской болтовни, и на редкость неудачных собственно объяснений и примеров того, что касается самого языка.

Однако дело не столько в самой статье, сколько в комментариях под ней, в которых тут же собралось стадо fanboys - идиотов, ругающих автора последними словами за то, что он посмел посягнуть на их культовый язык или на культовую фигуру _why (автора вышеупомянутой книги). Их немало в комментариях к самой статье, и еще больше - в комментариях к записи _why на эту тему (как обычно в его стиле, зубодробительно несмешной). Почитайте - эти комментарии говорят за себя. Нет, я не думаю, что они характеризуют все сообщество пользователей Руби. Но они характеризуют то стадо fanboys, которое его замусорило.

Мне попадалось мнение, что идиоты кочуют от одного популярного языка или технологии к другим, и многие из тех, что сейчас пишут и говорят благоглупости о Руби, раньше молились на Джаву, когда та была "cool". Может, в этом что-то есть. Но что в языке или технологии или сообществе, уже существующем, притягивает такие массы? Я не могу себе представить, например, такой поток ответов на статью, критикующую Перл, ни сейчас, ни пять лет назад, ни десять. Или Питон, или Хаскель, или Лисп.

Второй пример - статья "Why was Rails only possible with Ruby?" на сайте O'Reilly. Точнее, не статья, а рецензия книги о Руби и Rails. В ней самой, и в довольно интересно потоке комментариев под ней, поражает совершенное детская наивность тех, кто упрямо утверждает, что в Руби есть какие-то мистические свойства, которые делают создание системы типа Rails возможным только в Руби - и их неспособность назвать эти свойства: после того, как им снова и снова объясняют, что вот эти и вот эти и вот эти свойства Руби, которые они считают уникальными, на самом деле есть и тут и тут и тут, и системы, подобные Rails, на самом деле есть, и в чем-то более интересные (Seaside в Смоллтоке часто упоминается в последнее время - я не успел пока о нем подробнее прочитать), после всего этого им остается только лепет насчет "интуитивности" и каких-то мистических откровений, которые превращают Руби в идеальнейший из языков. Пользуясь словами того же _why, "We can no longer truthfully call it a computer language. It is coderspeak. It is the language of our thoughts". И вот такой интеллектуально беспомощный фанатизм тоже, увы, весьма распостранен в сообществе Руби, насколько я могу судить, когда с ним сталкиваюсь. Впрочем, опять-таки, действительно ли "увы"? Может, сообществу Руби это нравится, и такая форма агрессивного самопиара его вполне устраивает.

В завершение замечу только, что все же собираюсь в ближайшее время изучить Руби, хоть и не в ближайшие пару месяцев, наверное. И процитирую понравившееся из комментариев к второй статье, среди аргументов и обвинений поклонников Руби, Питона, Джавы, Перла и других языков:

"Can't we all at least agree to hate PHP? ;)"

Date: 2007-04-07 09:39 pm (UTC)
From: [identity profile] breqwas.livejournal.com
> Can't we all at least agree to hate PHP? ;)

Отличный язык, идеален для своих задач. А что?

Date: 2007-04-07 09:54 pm (UTC)
From: [identity profile] neoromantic.livejournal.com
хи-хи-хи :)

Date: 2007-04-08 08:11 am (UTC)
From: [identity profile] ospf-ripe.livejournal.com
для тех же задач хорошо подходят и другие языки без такого количества тараканов:
http://nuclight.livejournal.com/107170.html (в коменнтах добавлено еще кучка таких тараканов, но в целом там крики вида "не тронь нашу священную корову")

Date: 2007-04-07 10:01 pm (UTC)
From: [identity profile] trurle.livejournal.com
Мне кажется что все эти мусорные языки со временем окажутся на той же свалке где уже заслуженно пребывает Tcl. Ява и C++ обладают консистентностью - то есть логика отдельных частей следует логике целого, любительские же разработчики Питона и Руби решили что можно создать язаык вообще не думая, как был создан, не к вечеру будь помянут, Visual Basic.
Я не отрицаю что возможность лепить спагетти-код не думая, щедро предоставляемая Питоном и Руби, должна быть привлекательна для начинающих программистов.

Date: 2007-04-07 10:10 pm (UTC)
From: [identity profile] dimrub.livejournal.com
В защиту Пайтона, к коему особой любви не испытываю, все же замечу, что он с одной стороны и джава с С++ с другой создавались в разные времена и для разных целей.
(deleted comment)

(no subject)

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-07 10:52 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-04-07 11:05 pm (UTC) - Expand

(no subject)

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-07 11:24 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-04-07 11:50 pm (UTC) - Expand

(no subject)

From: [identity profile] v743.livejournal.com - Date: 2007-04-07 11:54 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-04-08 12:03 am (UTC) - Expand

(no subject)

From: [identity profile] v743.livejournal.com - Date: 2007-04-08 12:09 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-07 11:12 pm (UTC) - Expand

(no subject)

From: [identity profile] ninazino.livejournal.com - Date: 2007-04-08 12:17 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:33 am (UTC) - Expand

(no subject)

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 09:39 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:47 pm (UTC) - Expand

(no subject)

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 07:56 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 09:40 pm (UTC) - Expand

...

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 09:56 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 07:04 am (UTC) - Expand

(no subject)

From: [identity profile] ninazino.livejournal.com - Date: 2007-04-08 11:26 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:34 pm (UTC) - Expand

...

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 06:25 pm (UTC) - Expand

Re: Панталоны, фрак, жилет

From: [personal profile] netch - Date: 2007-04-08 07:25 pm (UTC) - Expand

в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 05:06 pm (UTC) - Expand

Re: в догонку

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 05:26 pm (UTC) - Expand

Re: в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 05:55 pm (UTC) - Expand

Re: в догонку

From: [personal profile] netch - Date: 2007-04-08 07:28 pm (UTC) - Expand

Re: в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 07:42 pm (UTC) - Expand

Re: в догонку

From: [personal profile] netch - Date: 2007-04-08 08:13 pm (UTC) - Expand

Re: в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 08:28 pm (UTC) - Expand

Re: в догонку

From: [personal profile] netch - Date: 2007-04-08 09:25 pm (UTC) - Expand

Re: в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 09:38 pm (UTC) - Expand

Re: в догонку

From: [identity profile] lazyreader.livejournal.com - Date: 2007-04-09 03:44 pm (UTC) - Expand

Re: в догонку

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 03:50 pm (UTC) - Expand

Re: в догонку

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 03:52 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 04:09 pm (UTC) - Expand

надо запретить

From: [personal profile] stas - Date: 2007-04-09 04:38 pm (UTC) - Expand

...

From: [identity profile] sdfgh153.livejournal.com - Date: 2007-04-09 05:46 am (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 01:17 pm (UTC) - Expand

...

From: [identity profile] sdfgh153.livejournal.com - Date: 2007-04-09 01:19 pm (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-07 10:53 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:19 pm (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-07 11:39 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:47 pm (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:14 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 01:28 am (UTC) - Expand

(no subject)

From: [identity profile] meanab.livejournal.com - Date: 2007-04-08 02:37 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 02:48 am (UTC) - Expand

(no subject)

From: [identity profile] meanab.livejournal.com - Date: 2007-04-08 03:06 am (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 07:17 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 07:29 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 09:20 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 09:36 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 09:48 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 10:48 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 10:53 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 11:23 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 11:37 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 09:32 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 10:45 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 07:56 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 09:27 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-09 07:59 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 09:05 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-09 10:10 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 10:57 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 11:12 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-09 11:56 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 12:05 pm (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 12:22 pm (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 08:16 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 10:01 am (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 10:18 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 10:28 am (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 10:31 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 10:35 am (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 10:48 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 11:20 am (UTC) - Expand

...

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 11:31 am (UTC) - Expand

...

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 10:22 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 10:43 am (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 10:54 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 10:56 am (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-10 04:06 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-10 04:02 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:43 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-07 11:25 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-07 11:41 pm (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-07 11:48 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 12:02 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 12:10 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:52 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 10:44 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 07:39 pm (UTC) - Expand

(no subject)

From: [identity profile] levgem.livejournal.com - Date: 2007-04-08 08:08 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 10:46 am (UTC) - Expand

(no subject)

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 05:09 pm (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 07:51 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-09 07:53 am (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 09:18 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:03 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 12:17 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:21 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 12:29 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:46 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 12:54 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:58 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 08:09 am (UTC) - Expand

(no subject)

From: [personal profile] ak_47 - Date: 2007-04-08 10:24 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-08 07:41 pm (UTC) - Expand

...

From: [personal profile] ak_47 - Date: 2007-04-08 08:57 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 08:56 am (UTC) - Expand

...

From: [personal profile] ak_47 - Date: 2007-04-09 03:29 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-10 06:32 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-08 12:25 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 12:32 am (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-04-08 01:01 am (UTC) - Expand

(no subject)

From: [identity profile] cmm.livejournal.com - Date: 2007-04-08 02:26 pm (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 05:00 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-09 05:27 am (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 07:11 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-09 07:25 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-09 08:10 am (UTC) - Expand

(no subject)

From: [identity profile] oleganza.livejournal.com - Date: 2007-10-22 03:55 pm (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-09 05:35 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-09 08:13 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 10:30 am (UTC) - Expand

ага, чистый FUD

From: [identity profile] pingva.livejournal.com - Date: 2007-04-10 01:36 am (UTC) - Expand

Re: ага, чистый FUD

From: [personal profile] stas - Date: 2007-04-10 06:39 am (UTC) - Expand

верно!

From: [identity profile] pingva.livejournal.com - Date: 2007-04-10 06:54 am (UTC) - Expand

international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 07:16 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 07:35 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 07:40 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 07:58 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 08:08 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-10 06:22 am (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 08:09 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 08:17 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 08:46 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 08:57 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 09:41 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 09:47 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] stas - Date: 2007-04-09 09:55 pm (UTC) - Expand

Re: international obfuscated ruby contest - 2007

From: [personal profile] netch - Date: 2007-04-09 09:59 pm (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 07:23 am (UTC) - Expand

Amen

From: [identity profile] catpad.livejournal.com - Date: 2007-04-07 10:57 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-07 10:59 pm (UTC) - Expand

Вкрадчиво

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:08 pm (UTC) - Expand

Re: Вкрадчиво

From: [personal profile] netch - Date: 2007-04-07 11:14 pm (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:19 pm (UTC) - Expand

Re: Вкрадчиво

From: [personal profile] netch - Date: 2007-04-07 11:27 pm (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:37 pm (UTC) - Expand

Re: Вкрадчиво

From: [personal profile] netch - Date: 2007-04-07 11:52 pm (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:58 pm (UTC) - Expand

Re: Вкрадчиво

From: [personal profile] netch - Date: 2007-04-08 12:04 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] meanab.livejournal.com - Date: 2007-04-08 02:28 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] ringm.livejournal.com - Date: 2007-04-08 12:09 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] madkroz.livejournal.com - Date: 2007-04-08 07:31 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 07:34 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] madkroz.livejournal.com - Date: 2007-04-08 07:46 am (UTC) - Expand

Re: Вкрадчиво

From: [identity profile] levgem.livejournal.com - Date: 2007-04-08 08:04 am (UTC) - Expand

(no subject)

From: [identity profile] avnik.livejournal.com - Date: 2007-04-07 11:01 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-07 11:23 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2007-04-08 12:44 am (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-08 06:57 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 07:13 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-08 08:41 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 08:54 am (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-08 09:24 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 09:49 am (UTC) - Expand

(no subject)

From: [identity profile] madfire.livejournal.com - Date: 2007-04-08 10:35 am (UTC) - Expand

let the holy war begin

From: [personal profile] stas - Date: 2007-04-09 04:25 pm (UTC) - Expand

I don't like your fashion business

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 04:29 pm (UTC) - Expand

Date: 2007-04-07 10:53 pm (UTC)
From: [identity profile] sply.livejournal.com
С первой статьей понятно: возмущение в комментариях может быть вызвано тем, что по тексту явно видно очень поверхностное знакомство с языком, потому что у руби есть куча более неприятных проблем. Т.е. автор стоит на том же уровне, что и fanboys, может быть поэтому они к нему быстро и набежали :)

Кстати, seaside с rails вовсе не подобные, разве только тем, что оба являются веб-фреймворками.

Date: 2007-04-07 11:01 pm (UTC)
From: [identity profile] kiryl.livejournal.com
Про кучу более неприяных проблем по подробней можно?

rails

From: [identity profile] meanab.livejournal.com - Date: 2007-04-08 03:27 am (UTC) - Expand

Date: 2007-04-07 11:10 pm (UTC)
From: [identity profile] ipain.livejournal.com
ну 'мистическое' потому что словам не обучены. вспомнилось как глухие детки стали вдруг желать пользоваться жестовой системой которая официально запрещалась. фанбойс выруливают типа всегда верно, а без заносов не бывает скорости. конечно не обязательно что они правы, но интеллектуально беспомощный фанатизм или 'идеи овладевшие массами' как раз и сдвигают тверди и светила.

Date: 2007-04-07 11:58 pm (UTC)
From: (Anonymous)
a ved', mozhe byt', tak pravil'nei (i glavnei!)- bez intellektual'noi skorosti ne byvaet ochen' glyupeeh zanosov?

(no subject)

From: [identity profile] ipain.livejournal.com - Date: 2007-04-08 01:51 am (UTC) - Expand

(no subject)

From: [identity profile] belatwork.livejournal.com - Date: 2007-04-08 06:22 am (UTC) - Expand

(no subject)

From: [identity profile] madfire.livejournal.com - Date: 2007-04-08 10:40 am (UTC) - Expand

А-а-а-а! You made my day!

From: [identity profile] belatwork.livejournal.com - Date: 2007-04-08 11:08 am (UTC) - Expand

Date: 2007-04-07 11:32 pm (UTC)
From: [identity profile] catpad.livejournal.com
Возьмусь предположить, что этот пост связан с моим собственным недавним постом. Так что спасибо, что предупредил насчёт "Poignant guide" - мне эта штука показалась забавной (видимо потому, что начать читать я её не успел). Напомнила отличную серию книг "Head First" - на самом деле отличную и очень полезную серию.
Теперь отпал последний аргумент в пользу знакомства с Руби.

Date: 2007-04-08 03:09 am (UTC)
From: [identity profile] dimad.livejournal.com
Poignant ИМХО не лучший вариант начала знакомства с Руби. Но есть чудесная книга "Programming Ruby. The pragmatic programmers' Guide". Советую начинать с нее, если таки решитесь посмотреть как оно есть, а не как звучит то, что Рабинович напел.

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 03:20 am (UTC) - Expand

(no subject)

From: [identity profile] dimad.livejournal.com - Date: 2007-04-08 03:36 am (UTC) - Expand

(no subject)

From: [identity profile] catpad.livejournal.com - Date: 2007-04-08 03:39 am (UTC) - Expand

(no subject)

From: [identity profile] dimrub.livejournal.com - Date: 2007-04-08 06:18 am (UTC) - Expand

(no subject)

From: [identity profile] dimad.livejournal.com - Date: 2007-04-08 09:48 am (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-09 07:26 am (UTC) - Expand

(no subject)

From: [identity profile] gdy.livejournal.com - Date: 2007-04-16 08:25 pm (UTC) - Expand

Date: 2007-04-08 12:05 am (UTC)
From: [identity profile] moon-aka-sun.livejournal.com
То же самое примерно наблюдается в отношении Хаскеля и монад.

А учить Руби (блин, как прочёл первый раз неправильно, раби, так теперь из головы не выбьешь) после Перла, Питона и Смоллтока — взять (одолжить) книгу в самолёт, и готово.
From: [identity profile] qaraabayna.livejournal.com
Увеличение процента глупости - один из признаков приближения конца света.

Поэтому люди критиковализащищали PERL более или менее цивильно, а вот Руби повезло меньше.

Развитие демократии и увеличение возможностей для реализации своего права голоса приводит к ужасающей охлократии.

Общефилософски говоря...

Date: 2007-04-08 04:19 am (UTC)
From: [identity profile] slobin.livejournal.com
The right to criticize programming languages (http://t-a-w.blogspot.com/2007/02/right-to-criticize-programming.html)

Очень интересная статья. Автор хорошо поставил вопрос: "попробуйте сказать что-нибудь хорошее про язык, который вы не любите". Сам он Рубиист, но честно и здраво рассказывает, что ему нравится в альтернативах. К сожалению, комментаторы свели всё к приколу, начав вспоминать про Кобол.

... Это была сумасшедшая рыба ...

Date: 2007-04-08 04:55 am (UTC)
From: [identity profile] jonman.livejournal.com
Даже без упоминания о программировании.
В Интернете соотношение идиотов к не идиотам ровно такое же, как и в реальной жизни, разве можно что-то поделать?

Date: 2007-04-08 07:13 am (UTC)
From: [identity profile] madkroz.livejournal.com
Относительно Poignant Guide. Мне показалось, что книга имеет очень мало отношения к Ruby и программированию вообще. Конечно, там стоит слово Ruby в заголовке, и внутри сказано много слов про этот язык, но ценность книги как учебника по Ruby равна нулю (по крайней мере, когда-то я начинал изучать Ruby именно по ней, и прочитав её целиком, понял, что не могу написать Hello World :-) ).

Зато там совершенно чудесные фантасмагорические истории в картинках (!), за что я её и пересматриваю время от времени. Но тут уже, скорее, дело вкуса — вполне допускаю, что кому-то эти комиксы могут показаться тупыми и неуместными.

Date: 2007-04-08 10:38 am (UTC)
From: [identity profile] madfire.livejournal.com
Можно было всяко догадаться что _why's guide это для непрограммистов, которые в разных языках программирования не шарят. Просто учебник по программированию, в качестве референтного языка взят Руби.

Date: 2007-04-08 07:48 am (UTC)
From: [identity profile] levgem.livejournal.com
А я на таких не обращаю внимания. Руби экономит мое время и деньги, поэтому я им и пользуюсь. Сам никаких пойгнантов не читал, прочитал только Agile Web Development, после чего лезу в исходники по всем вопросам.

Date: 2007-04-08 08:05 am (UTC)
From: [identity profile] levgem.livejournal.com
Короче, написал пост про фанбоев и один уже прибежал =)

Date: 2007-04-08 09:03 am (UTC)
From: (Anonymous)
забавно, fanboy пишет про fanboys (только не называет свой язык)

Date: 2007-04-08 10:36 am (UTC)
From: [identity profile] pingva.livejournal.com
видите ли, Ваше понимание "близости к железу" меня не устраивает. По Вашему критерию scheme тоже оч. близок к железу -- достаточно прочитать SICP, чтобы видеть как scheme напрямую транслируется в код регистровой машины, и вполне "прозрачным образом".

меж тем, Вы, надеюсь, согласитесь, что scheme далек от железа.

также далеки от железа навинченые на С "прелести" С++: ООП (крайне чуждая железу концепция), перегрузка, templates.

Разобрались с отсутствием "консистентности" у С++?

По поводу "тупости" и "умности" -- мы ведь рассматриваем отсутствие и наличие высокоуровневых возможностей (first-class functions, GC, introspection, "vertical" hooks, OOP flavors) как определение "тупости" и "умности" соответственно (или, если угодно, выберем другие термины). Отсутствие у Вас "уверенности" в таком случае не несет никакого смысла.

Возвращаясь к теме:

Позвольте вопрос -- писали ли Вы на Руби? (не сочтите за грубость)

Date: 2007-04-08 01:47 pm (UTC)
From: [identity profile] grundik.livejournal.com
я писал на руби (и просто на руби, и на рельсах).
лисп много лучше.

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-08 07:15 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 03:44 pm (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-08 07:52 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 07:59 pm (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-08 09:01 pm (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-08 09:10 pm (UTC) - Expand

(no subject)

From: [personal profile] stas - Date: 2007-04-09 05:17 pm (UTC) - Expand

(no subject)

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 05:50 pm (UTC) - Expand

(no subject)

From: [personal profile] stas - Date: 2007-04-09 06:05 pm (UTC) - Expand

наверно, я ещё мала

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 06:09 pm (UTC) - Expand

Re: наверно, я ещё мала

From: [personal profile] stas - Date: 2007-04-09 06:17 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 07:27 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 08:17 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:27 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 08:41 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:57 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 09:06 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:11 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 09:36 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:45 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:49 pm (UTC) - Expand

...

From: [identity profile] v743.livejournal.com - Date: 2007-04-10 10:54 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-10 11:19 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-11 12:38 am (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-11 12:42 am (UTC) - Expand

...

From: [identity profile] v743.livejournal.com - Date: 2007-04-11 12:50 am (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-11 12:54 am (UTC) - Expand

Re: наверно, я ещё мала

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 07:26 pm (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 07:29 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:08 pm (UTC) - Expand

...

From: [identity profile] trurle.livejournal.com - Date: 2007-04-09 08:14 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:27 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:24 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:30 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:39 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 07:34 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:12 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:30 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:33 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 08:50 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:55 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 09:06 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:16 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 09:21 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:23 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 09:27 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:31 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-09 09:47 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:53 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 10:03 pm (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 06:18 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-10 06:26 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 06:33 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-10 06:44 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 07:00 am (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-10 07:20 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 09:14 am (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-10 08:30 am (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-10 06:43 am (UTC) - Expand

...

From: [identity profile] cmm.livejournal.com - Date: 2007-04-10 06:51 am (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-09 07:00 pm (UTC) - Expand

(no subject)

From: [personal profile] stas - Date: 2007-04-09 07:06 pm (UTC) - Expand

(no subject)

From: [personal profile] netch - Date: 2007-04-09 08:02 pm (UTC) - Expand

зачем ерничать?

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 07:34 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 07:37 pm (UTC) - Expand

...

From: [identity profile] pingva.livejournal.com - Date: 2007-04-09 07:48 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:18 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:16 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 08:21 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:45 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 08:45 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 08:59 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:02 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 09:10 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:22 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 09:27 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 09:08 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:10 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 09:18 pm (UTC) - Expand

...

From: [personal profile] stas - Date: 2007-04-09 09:25 pm (UTC) - Expand

...

From: [personal profile] netch - Date: 2007-04-09 09:39 pm (UTC) - Expand

(no subject)

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 07:56 am (UTC) - Expand

Date: 2007-04-08 04:05 pm (UTC)
From: [identity profile] malaya-zemlya.livejournal.com
В качестве примера Лиспатриотической литературы могу предложить On Lisp Поля Грэма. (http://www.paulgraham.com/onlisptext.html)
Книжка сама по себе не ужасная, но как пальцы гнет чувак!

И reddit.com, разумеется.

Date: 2007-04-08 09:24 pm (UTC)
From: [identity profile] pingva.livejournal.com
офигительная книшка, чего уж. Один пролог на 200 строк чего стоит. правда, старая -- Practical Common Lisp от Seibel'я ээээ практичнее =)

для лиспатриотичности можно просто эссе грэма почитать, то же рекурсивное Beating The Averages ;)

Date: 2007-04-08 04:24 pm (UTC)
From: [identity profile] malaya-zemlya.livejournal.com
И конечно же классика флеймового жанра.

Language wars (Joel Spolsky)
http://www.joelonsoftware.com/items/2006/09/01.html

и реакция публики:
Has Joel Spolsky Jumped The Shark?
http://www.codinghorror.com/blog/archives/000679.html

Fear, Uncertainty, Doubt - loudthinking.com
http://www.loudthinking.com/arc/000596.html

Date: 2007-04-08 09:20 pm (UTC)
From: [identity profile] faceted-jacinth.livejournal.com
Комменты не читал, не могу, извините.

Но вообще статья по ссылке обсуждалась на форуме МГУ недавно, с моим непосредственным участием, и вот тезисно основные типа возражения (при том, что сам я Руби не видел ни разу в жизни вообще):
1) Некорректная логика: предположим, что Руби даёт реальный прирост производительности, Руби является DL, рассмотрим основные свойства DL, ни одно из них не даёт такого уж большого прироста производительности (вложенный FAIL: недоказанный прирост производительности не является ложным, если что), следовательно, Руби не может давать прироста производительности.

2) Если вся статья направлена исключительно на обуздание базза вокруг Руби, то непонятно, зачем нужно так много слов. [livejournal.com profile] 109 давал две ссылки на упромысливания разных вещей некоим Стиви (тоже гугловцем, кстати), в том числе и Agile Programming, и там градус отжига был нааамного выше. И без таких тупых аппелляций к тупости среднестатистического фаната, между прочим! Нельзя язык оценивать исходя из количества троллей, набегающих на критикующий его пост, это бред.

3) Автор -- убеждённый жавапрограммер. Narrowness of experience leads to the narrowness of thought, как бы, и тут это очень явно видно.

Небольшое отступление: мне недавно показали ЭпплСкрипт. Его очень интересно читать, представляя у себя в голове трансляцию в Свой Любимый Язык. Особенно это интересно делать со строчкой "set bar to messages of foo whose read status is false". Мой испорченный сишной парадигмой моск немедленно сгенерил цикл. Обнаружив, что в результате получилось раз эдак в пять больше символов, чем в оригинале, цикл был заменён на foreach. Далее foreach был заменён на что-то вроде "messages.FindAll(delegate (Message m) { return !m.ReadStatus; });", чем я удовлетворился, ибо получился почти семантический эквивалент, а отсутствие в шарпе паскалевского using (someObject) (расширение scope до полей и методов объекта), совмещённого с вызовом делегата, я вполне могу пережить.

Это я к тому, что язык программирования накладывает крайне сильный отпечаток на способ мышления программиста. Мой пример очень хорошо показывает, как язык программирования (или его частоиспользуемый subset) может приводить к уменьшению эффективности программирования ещё на этапе обдумывания кода: ещё до того, как что-нибудь было напечатано, в голове программиста (меня) образовались какие-то совершенно левые семантические конструкты вроде цикла, переменной цикла и временного массива.

Есть подозрение, что если Руби похожа на питон и третий шарп, причём Стандартные Библиотеки написаны в правильном стиле (forcing newcomers to conform), то эффективность программирования может действительно вырасти в разы, чисто за счёт уничтожения левой семантики. Автор же такую возможность просто не рассматривает, потому что даже не представляет, что она существует.

вопрос к avva

Date: 2007-04-09 10:27 pm (UTC)
From: [identity profile] pingva.livejournal.com
дааааа, лютое рубилово, даже как-то неловко, несмотря на то, что вроде никто никого не послал еще.

Анатолий, скажите, неужто Вы все это безобразие читаете? =)

Re: вопрос к avva

Date: 2007-04-09 10:41 pm (UTC)
From: [identity profile] avva.livejournal.com
Нет, вот рубилово последних N часов не читаю :)

Re: вопрос к avva

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 07:53 am (UTC) - Expand

Re: вопрос к avva

From: [identity profile] pingva.livejournal.com - Date: 2007-04-10 08:21 am (UTC) - Expand

Re: вопрос к avva

From: [identity profile] e2pii1.livejournal.com - Date: 2007-04-10 09:35 am (UTC) - Expand

Re: вопрос к avva

From: [identity profile] pingva.livejournal.com - Date: 2007-04-10 03:59 pm (UTC) - Expand

Date: 2007-04-10 11:09 am (UTC)
From: [identity profile] kiryl.livejournal.com
Создание переходников между концептуально разными языками, например, Питоном/Руби/Явой/Си-диезом и Си является в общем случае нетривиальной задачей именно в силу концептуальной разницы.

Согласен. Для этого и придумали различного рода SWIG'и. Хотя результат его работы не всегда удолетворителен. Руками всё же красивее, хоть и дольше.

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

Не скажу про другие языки, но в Ruby всё, что Вы описали давно сделано.
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/README.EXT?revision=11708&view=markup

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

Нашёл два проекта на эту тема
http://ruby-xlib-wrap.sourceforge.net/
http://www.moriq.com/ruby/xlib/
Пользоваться не приходилось.

Date: 2007-04-10 11:13 am (UTC)
From: [identity profile] cmm.livejournal.com
обворачивать Xlib довольно глупо.
гораздо разумнее разговаривать с X-сервером по сетевому протоколу, как делает, к примеру, CLX.

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 11:24 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 11:14 am (UTC) - Expand

(no subject)

From: [identity profile] kiryl.livejournal.com - Date: 2007-04-10 11:29 am (UTC) - Expand

(no subject)

From: [identity profile] trurle.livejournal.com - Date: 2007-04-10 11:38 am (UTC) - Expand

Date: 2007-04-12 06:46 pm (UTC)
stas: (Don't panic!)
From: [personal profile] stas
Этой теме осталось всего жалких 60 комментов, чтобы засиять ярче Благодатного Oгня. Я считаю, надо что-то делать.

Date: 2007-04-24 10:55 am (UTC)
From: [identity profile] justbulat.livejournal.com
прикольно, но я был фанатом руби в 2002-м, и тогда вопрос о том, как сделать руби популярней, о killer app, активно обсуждался в ruby-talk. потом появился rails

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

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

другой пример - очень удобный оператор case был описан в "этюдах для порграммистов". единственный язык, где он реализован - ruby. можно написать что угодно в выбирающем выражении и в выпражении для каждого ваврианта, эти два значения вычисляются и сопоставляются операцией =~~ которую может определить пользователь для любого класса

вот это сочентание динамического ООп и удобного синтаксиса и есть его killer features

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

February 2026

S M T W T F S
1 2 3 4 5 67
8 9 10111213 14
15 16 17 18192021
2223 2425262728

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 25th, 2026 08:23 am
Powered by Dreamwidth Studios