Re[5]: Насколько важен синтаксис языка?
От: Sinclair Россия https://github.com/evilguest/
Дата: 05.09.06 12:13
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

ANS>PS Кстати, этот вариант

ANS>
ANS>value := aDictionary at: aKey ifAbsent: [...обрабатываем ситуацию...].
ANS>

ANS>легко получается из этого:
ANS>
ANS>V value = aMap.get(key);
ANS>if (value == null) {...обрабатываем ситуацию...}
ANS>

ANS>В начале нужно объеденить первую и вторую строчку, потому что эти две физические конструкции объеденяют одну логическую. И так, убираем точку-с-запятой и переносим "if" на верх. Затем вместо шифровки "value == null" пишем простое и понятное "Absent". И, вуаля...
Ну, вообще-то правильно — так:
try
{
  value = aMap[key];
} 
catch(KeyNotFoundException knfe)
{
//...обрабатываем ситуацию...
}

1. Джава sux: нам не нужен никакой гет, вместо этого используется синтаксически более прозрачный индексер
2. Джава sux: а если в словаре хранятся значения примитивного типа, то мы что будем возвращать? А что делать, если мы хотим намеренно сохранить null?
3. Смоллток sux: это что, нам надо в каждом методе предоставлять параметры для разных исходов? А если я этого не сделал?
4. Смоллток sux: а теперь давайте сравним значения из двух словарей по ключу, при этом отсутствующие в любом из словарей считаем одной и той же ситуацией:
foreach(string key in externalKeys)
    try 
    {
        if (aMapLeft[key] != aMapRight[key]) mismatches++;
    } 
    catch(KeyNotFoundException knfe)
    {
        mismatches++;
    }

Как мы передадим один и тот же continuation в два метода?

Я не против continuation, но реализация на них ыполне прямолинейной логики обработки ошибок — weird.
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[5]: Насколько важен синтаксис языка?
От: pavel74  
Дата: 05.09.06 12:18
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А ты не трепись, а возьми и на рабое исползуй вместо Дельфи+АБП+ТЭмЕкЭль какой-нить Дольфин+МайЭсКуЭль+ещеКакяТоХрень, а потом поделись мнеием. Уверен, что после Дельфи Дольфин тебя не впечатлит.


Уже используемые инструменты и технологии по многим причинам не так просто взять и изменить на другие. Даже если эти и другие и имеют в чем-то преимущества. Это вообще отдельная тема.

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


PS А ты акуратнее выбирай выражения.
Re[6]: Насколько важен синтаксис языка?
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.09.06 12:20
Оценка:
Здравствуйте, Kisloid, Вы писали:

K>Есть мнение, и не только моё, что это реинкарнация товарища Kolhoz'а. А лисп тут скорее всего не при чем.


А, да. Эти товарищи похожи.

K>Просто наверное кое кого, не будем показывать пальцем в детстве сильно обижали или что-то в этом роде.


Да, уж. Забавно, что если бы не любовь к смешиванию с дерьмом, то их (егоЭ) бы было интересно послушать.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: Насколько важен синтаксис языка?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 05.09.06 12:25
Оценка: +2
Здравствуйте, Дарней, Вы писали:

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


37 signals
Использовали тогда еще не очень широкоизвестный язык Ruby. И попутно сделали тогда еще мало кому известный RubyOnRails. Причем по высказываниям DHH (разработчика RoR) явно следует, что Ruby и RoR были для них конкурентными преимуществами.

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


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


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[8]: Насколько важен синтаксис языка?
От: Eugene Beschastnov Россия http://eugenius-nsk.livejournal.com/
Дата: 05.09.06 12:31
Оценка: 6 (1)
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Andrei N.Sobchuck, Вы писали:


ANS>>Я хотел бы что-бы вместо вот этого ужаса из Януса:

ANS>>
ANS>>if (!msgs.Tables.Contains("message"))
ANS>>    return 0;
ANS>>DataTable msgTable = msgs.Tables["message"];
ANS>>


ANS>>можно было просто написать:

ANS>>
ANS>>msgTable := msgs tables at: 'messages' ifAbsent: [^0].
ANS>>


VD>Откровенно говоря вигрыш в количестве элементов тут небольшой, а вот читаемость кода явно уменьшается. Ведь он становится не структурным. Твой ^0 по последствиям мало отличается от goto.


VD>Я бы как раз предпочел бы первый вариант.


VD>Ну, и надо понимать, что Tables это коллекция которая может просто не иметь метода ifAbsent.


Влад, ты меня просто умиляешь Я уже далеко не первый раз, глядя на твои посты, вспоминаю "Собачье сердце", а конкретно момент с обсуждением переписки Энгельса и Каутского.

По пунктам: "^0" в Smalltalk ровно настолько же близок к goto, как "return 0" в C# — потому что это в точности то же самое.

Далее, в приведённом примере на Smalltalk нету метода "ifAbsent". Там есть метод "at:ifAbsent:" с двумя агрументами. Для лучшего понимания распишу максимально подробно, что происходит в этом примере (для простоты я не буду заострять внимание на том, что вызов метода осуществляется с помощью посылки сообщения — потому что в данном случае это не важно):
1) Предположим, этот код у нас выполняется в некотором методе method1.
2) У объекта msgs вызывается метод tables без аргументов. Назовём возвращаемый результат object1.
3) У объекта object1 (см. п.2) вызывается метод "at:ifAbsent:" с двумя аргументами. Первый аргумент — строка 'messages', второй аргумент — блок кода [^0]. Метод "at:ifAbsent:" (который, кстати, является стандартным и имеется у всех типов коллекций) выполняет следующее:
3.1) Проверяет, есть ли в коллекции, у которой его вызвали (т.е. у object1), объект с ключём, переданным в качестве первого аргумента (т.е. с 'messages').
3.2) Если есть — возвращает объект, лежащий в коллекции по этому ключу (назовём его object2).
3.3) Если нету — выполняет блок кода, переданный вторым аргументом (т.е. [^0]) и возвращает результат его выполнения. Здесь замечу, что в Smalltalk блоки выполняются в том контексте, где они были созданы — причём это касается как локальных переменных, так и позиции в стеке выполнения. В данном случае мы выполняем код "^0" в контексте метода method1. В Smalltalk символ "^" выполняет ровно то же самое действие, что ключевое слово "return" в си-подобных языках. Т.е. мы возвращаем 0 из метода method1 (см. п.1).
4) Ну и наконец, если мы еще не вышли из метода method1, присваиваем переменной msgTable объект object2 (см. п.3.2).

Надеюсь, теперь понятнее?
--
Бесчастнов Евгений
Re[12]: Насколько важен синтаксис языка?
От: Eugene Beschastnov Россия http://eugenius-nsk.livejournal.com/
Дата: 05.09.06 12:32
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Меня испугало то, что можно выйти откуда угодно. Это значит, что вызвав некоторую функцию я не буду уверен, что она вернёт управление


Гхм... А как ты относишься к exception-ам?
--
Бесчастнов Евгений
Re[8]: Насколько важен синтаксис языка?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.06 12:33
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, FDSC, Вы писали:


VD>>>Pascal и С — оба являются клонами Алгола/Фортрана. Так что учить один после другого не сложно. А выбор между ними — это выбор предпочтений.


FDS>>Ага, однако программирование на них довольно сильно различается. Вообще говоря, просто думаешь другими понятиями.


VD>Все относительно. По сравнению с программированием на Схеме или Хаскеле разницу между С и Пасклем не увидить в микроском. Вся разница в деталях. Библиотеки и те большее влияние оказывают.


Хм-м-м. Видать у нас совершенно разное мышление. Для меня библиотеки — это фигня. Главное запомнить, что там есть определённые возможности и всё. А язык влияет на представление алгоритма в коде и после того, как я долго программирую на C++ мои программы на Delphi выглядят несколько неподельфийски.

VD>Несколько лет назад я без проблем программировал на C++, Delphi, SQL Windows SAL и VB одновременно. А ведь это куда более разные языки нежели С и Паскаль. После изучения второго языка третий и четвертый дались очень легко. А вот столкнувшись с ФЯ, Смолтоком и Прологом я действительно поломал голову. Проблема даже не научитсья писать на этих языка, а научиться глядеть на решение задачи по другому.


Я C++ изучал после Dephi, assmbler, и VBScript (для IE). Наверное, я просто менее поворотливый

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

FDS>> Да и если сравнить Фортран с C++, различия в синтаксисе довольно значимые. Я, например, испытывал затруднения, когда читал Фортрановские программы, зная C++ и Pascal, а вот C++ читал нормально, зная только Pascal.


VD>Фортран просто более древний язык. Но лично я особо его не зная спокойно читаю примеры на нем из книжек.


И у вас небыло переходного периода, когда вы не очень его понимали? Я то же стал лучше его понимать, после прочтения 4 или 5 книг, где он использовался как примеры. Но всё равно не очень. А PL/1 вы то же без труда понимаете?

FDS>>Вы сами очень любите Nemerle, а его синтаксис (только не убеждайте меня, что он похож на C#, сам знаю) меня раздражает . Так что принципиально нет разницы между вами, говорящими что Nemerle лучше C# и людьми, говорящими, что Lisp лучше C.


VD>"Раздражает" и "срывает крышу/полностью непонятен" — это, как говорят в Одессе, две большие разницы. Есть люди которых раздражает VB, есть те кого раздражает С или Паскаль. Например, не раз слышал заявления, что begin/end это ужасно, или что ужасны фигурные скобочки.

VD>Такое раздражение проходит через 10 минут реальной работы. Особенно когда язык предоставляет значительно более мощные возможности.

Собственно, я и хотел сказать, что раздражает и срывает крышу — это количественные показатели сложности, принципиально неразличные. Человек привыкает ко всему, вопрос только во времени (если укрепить "крышу", то её может унести если только вместе с домом....).


Вся проблема в том, что меня раздражает то, как эти более мощные возможности представляются. Меня, например, C++ раздражал пока я на нём не написал как минимум 4500 строк. Думаю, это не 10 минут работы . (а вот assembler меня никогда не раздражал, если не считать разницы в мнемонических обозначениях команд в intel 8086 и, напирмер, Intel 8080). Проще говоря, меня раздражает, когда то, что у меня в мозгах сложно переносить в то, что в компьютере, даже если при этом на это нужно меньше строк кода. Возможно, я просто слишком поверхностно ознакомился с возможностями Nemerle, но они паказались мне просто небезопасными.


VD>Думаю, что поклонники Смолтока стали таковыми именно потому, что им понравились некие возможности которых небыло в С++ или скажем Дельфи. Для них преодоление своих привычек и ломка мозга показалась оправданной. Не спорю, что по сравнению с С++ это действительно может быть оправданным. Но вот по сравнению с другими языками это уже не вполне оправдано. Перейдя с того же C#-а на Смолток ты не получишь каких-то радикальных возможностей. С Лиспом несколько по другому. Тут действительно возможности отндью не иллюзорны, но вот ломка сознания уже принципиальная.


Возможно, речь идёт о том, что при переносе алгоритма из неформального представления в формальное требуется некоторый вспомогательный алгоритм? (имеется ввиду, что формальные и неформальные представления слишком различны и требуют дополнительного слоя согласования)

VD>Так что Немерле — это как раз тот язык который позволяет не ломая сознания и не отказываясь от всего того к чему привык воспользоваться всеми теми вкусностями которые доступны во всех "непривычных" языках. Потому он мне и нравится.


А вот меня он ломает и очень сильно. Так что я прав
Re[7]: Насколько важен синтаксис языка?
От: Programmierer AG  
Дата: 05.09.06 12:33
Оценка: 18 (1) +5 :)))
VladD2 wrote:

> Я незнаю, что там кто-то нашел в его словах познавательного. Он ничего новго не сказал. Но вот то что его слова в большинстве случаев были направлены на унижение окружающих — это факт. То что это кого-то подталкнуло к изучению какого-то ФЯ нисколько не снимает отвественности за слова с этого товарища.


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

А насчет отсутствия познавательного — это или мегазнания, или нежелание
видеть очевидное. Вот парочка примеров:
http://rsdn.ru/Forum/Message.aspx?mid=1515192&amp;only=1
Автор: reductor
Дата: 01.12.05

http://rsdn.ru/Forum/Message.aspx?mid=1529433&amp;only=1
Автор: reductor
Дата: 09.12.05
Posted via RSDN NNTP Server 2.0
Re[10]: Насколько важен синтаксис языка?
От: Дарней Россия  
Дата: 05.09.06 12:35
Оценка: +1
Здравствуйте, eao197, Вы писали:

E>37 signals


в первый раз вообще слышу

E>Использовали тогда еще не очень широкоизвестный язык Ruby. И попутно сделали тогда еще мало кому известный RubyOnRails. Причем по высказываниям DHH (разработчика RoR) явно следует, что Ruby и RoR были для них конкурентными преимуществами.


ах, этот RoR... как много рекламного звона вокруг него вьется!

E>Могу ошибаться, но вообще очень мало стартапов, построенных вокруг какой-то идеи, выживают. Так что "волны" стартапов не может быть в принципе.


выживает вообще очень мало стартапов, это факт. Но выживают только те, за которыми стоит какая-то идея. Так что если возникнет мощная, но невостребованная мэйнстримом идея — можешь не сомневаться, волна будет.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[13]: Насколько важен синтаксис языка?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.06 12:36
Оценка:
Здравствуйте, Курилка, Вы писали:

К>Здравствуйте, FDSC, Вы писали:


FDS>>Здравствуйте, Курилка, Вы писали:


К>>>Здравствуйте, FDSC, Вы писали:


FDS>>>>Здравствуйте, Andrei N.Sobchuck, Вы писали:


ANS>>>>>ЗЫ: программирование это путь к ошибкам.



FDS>>>>В данном случае это путь к ошибкам, потому что в программе появляется (потенциально) множество неочевидных связей, если я правильно понял пример.


К>>>Откуда ты взял множетство да ещё и неочевидных связей? Конкретно что тебя испугало?


FDS>>Меня испугало то, что можно выйти откуда угодно. Это значит, что вызвав некоторую функцию я не буду уверен, что она вернёт управление


К>Имхо ты неверно понял идею — возврат идёт в итератор по сути, который вернёт управление в твой блок.


Так вот, "возврат" выполняется не в контексте блока, а в контексте где блок определён. То есть выполнение команды "return" из анонимной функции в C#, или метода анонимного класса в Java возвращают управление в код, вызвавший эту функцию. А в ST происходит возврат из того метода, где был блок определён.


Тогда не понял, в чём разница
Re[13]: Насколько важен синтаксис языка?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.06 12:36
Оценка:
Здравствуйте, Eugene Beschastnov, Вы писали:

EB>Здравствуйте, FDSC, Вы писали:


FDS>>Меня испугало то, что можно выйти откуда угодно. Это значит, что вызвав некоторую функцию я не буду уверен, что она вернёт управление


EB>Гхм... А как ты относишься к exception-ам?


Положительно
Re[9]: Насколько важен синтаксис языка?
От: FDSC Россия consp11.github.io блог
Дата: 05.09.06 12:39
Оценка: +1
Здравствуйте, Курилка, Вы писали:

К>Здравствуйте, FDSC, Вы писали:


FDS>>Чем же ваш пример так хуже. Ну, сделайте другой метод, что бы было


FDS>>
FDS>>DataTable msgTable = msgs.Tables["message"]; if (msgTable.Absent)  return 0;
FDS>>


К>Как минимум твой код упадёт от NullReferenceException


С какой стати? Я могу сделать так, что msgs.Tables["message"] вернёт пустой объект, который будет в методе Asbent возвращать флаг пустого сотояния
Мы же говорим про языки, а данная возможность языку никак не противоречит.

FDS>>
FDS>>DataTable msgTable = msgs.Tables["message"]; if (msgTable == null)  return 0;
FDS>>


Так устроит?
Re[10]: Насколько важен синтаксис языка?
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 05.09.06 12:42
Оценка:
Здравствуйте, Дарней, Вы писали:

Д>Если таких операций много — может быть. Но это можно сделать и не корежа страшным образом синтаксис.


Хочу заметить, что синтаксис в ST единообразный и нигде не корёжится
http://www.smalltalk.ru | << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[11]: Насколько важен синтаксис языка?
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 05.09.06 12:42
Оценка: +3
Здравствуйте, Дарней, Вы писали:

E>>37 signals


Д>в первый раз вообще слышу


С таким же успехом ты мог прозевать еще десяток-другой успешных стартапов.

E>>Могу ошибаться, но вообще очень мало стартапов, построенных вокруг какой-то идеи, выживают. Так что "волны" стартапов не может быть в принципе.


Д>выживает вообще очень мало стартапов, это факт. Но выживают только те, за которыми стоит какая-то идея. Так что если возникнет мощная, но невостребованная мэйнстримом идея — можешь не сомневаться, волна будет.


А в приведенном мной примере она, т.е. волна, есть. И ты сам ее видишь:

ах, этот RoR... как много рекламного звона вокруг него вьется!



SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[8]: Насколько важен синтаксис языка?
От: Mirrorer  
Дата: 05.09.06 12:43
Оценка: -1
Здравствуйте, VladD2, Вы писали:

VD>А в чем удобство то? Может я слепой, но не вижу удобства в чтении или запоминании всех тих закорючек, звездочке, плюсиков и скобок.

Сам их не люблю. Но если придется выбирать между написанием ДКА и использованием регэксов я выберу регэкс. На безрыбье как говорится..

VD>Регексы — специализированный язык описания регулярных граматик. Говоря современным языком — это DSL. Сравнивать его с универсальным языком некорректно.

Я сравнивал синтаксис регэкспов и синтаксис Smalltalk. Может это действительно некорректно.
VD>А вот сравнить регулярные выражения и EBNF вполне можно.
Ознакомился с EBNF. Здесь

EBNF: What is it, and why do we need it?
In DL I had to use recursion (ie: DL can produce new DLs) to express the fact that there can be any number of Ds. This is a bit awkward and makes the BNF harder to read. Extended BNF (EBNF, of course) solves this problem by adding three operators:

? : which means that the symbol (or group of symbols in parenthesis) to the left of the operator is optional (it can appear zero or one times)
* : which means that something can be repeated any number of times (and possibly be skipped altogether)
+ : which means that something can appear one or more times
An EBNF sample grammar
So in extended BNF the above grammar can be written as:

S := '-'? D+ ('.' D+)?

D := '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'

which is rather nicer.

Может оно конечно и nicer, но пахнет регэксами..

VD> Так что они есть просто потому, что нет легко доступных других срдств.

+1 Но что-то мне подсказывает что мейнстрим далеко не сразу примет альтернативу, даже если она появится..

VD>Так и Смолток. Да формально он жив, так как есть фэн-сайты, его кто-то использует. Но мы же говорим об его пригодности для мэйнстрима?

Именно парадоксальность ситуации с регэксами заставляет меня задуматься о том, что непривычный синтаксис, не является по большому счету препятствием. Я не считаю его хуже или лучше. Просто он другой, и его не принял мейнстрим. Но регэксы принял
Вот этого я не могу понять...
... << RSDN@Home 1.1.4 PINK FLOYD — Shine On You Crazy Diamond (Part Two)>>
Re[14]: Насколько важен синтаксис языка?
От: Курилка Россия http://kirya.narod.ru/
Дата: 05.09.06 12:45
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Здравствуйте, Курилка, Вы писали:


К>>Имхо ты неверно понял идею — возврат идёт в итератор по сути, который вернёт управление в твой блок.


FDS>

FDS>Так вот, "возврат" выполняется не в контексте блока, а в контексте где блок определён. То есть выполнение команды "return" из анонимной функции в C#, или метода анонимного класса в Java возвращают управление в код, вызвавший эту функцию. А в ST происходит возврат из того метода, где был блок определён.


FDS>Тогда не понял, в чём разница


Смотри здесь
Автор: Eugene Beschastnov
Дата: 05.09.06
Re[11]: Насколько важен синтаксис языка?
От: Дарней Россия  
Дата: 05.09.06 12:46
Оценка: :)
Здравствуйте, Andrei N.Sobchuck, Вы писали:

ANS>Хочу заметить, что синтаксис в ST единообразный и нигде не корёжится


что синтаксис единообразный — вот это и плохо. Я всё-таки привык, что он сильно различается у разных конструкций и помогает выделять структуру программы. Да и не только я к этому привык, судя по всему
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[12]: Насколько важен синтаксис языка?
От: Дарней Россия  
Дата: 05.09.06 12:49
Оценка:
Здравствуйте, eao197, Вы писали:

E>С таким же успехом ты мог прозевать еще десяток-другой успешных стартапов.


Если стартап по настоящему успешен, то прозевать его просто не дадут. Мы ведь не в каменном веке все-таки, кругом сплошное информационное пространство
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[13]: Насколько важен синтаксис языка?
От: Курилка Россия http://kirya.narod.ru/
Дата: 05.09.06 12:51
Оценка: +2
Здравствуйте, Дарней, Вы писали:

Д>Здравствуйте, eao197, Вы писали:


E>>С таким же успехом ты мог прозевать еще десяток-другой успешных стартапов.


Д>Если стартап по настоящему успешен, то прозевать его просто не дадут. Мы ведь не в каменном веке все-таки, кругом сплошное информационное пространство


Что-то видимо это пространство тебя мимо обошло коли ты такой нашумевший стартап не слышал
Re[12]: Насколько важен синтаксис языка?
От: Дарней Россия  
Дата: 05.09.06 12:52
Оценка: -2
Здравствуйте, eao197, Вы писали:

E>А в приведенном мной примере она, т.е. волна, есть. И ты сам ее видишь:

E>

E>ах, этот RoR... как много рекламного звона вокруг него вьется!


проблема в том, что эту волну создаешь ты в одиночку. Реально успешных проектов на нем я не вижу.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.