Здравствуйте, Дарней, Вы писали:
Д>Здравствуйте, Mirrorer, Вы писали:
M>>Целесообразно ли все болезни лечить при помощи скальпеля ?
Д>Нет, конечно. Но нет смысла делать непривычные рукоятки для скальпеля только для того, чтобы отличиться от конкурентов.
Д>>>Ну или китайской, если угодно
M>>Тем не менее около миллиарда людей вполне довольны
Д>А это ты зря так думаешь. В китайском огромное количество диалектов, и нередки случаи, когда жители двух соседних областей просто не понимают друг друга.
Ага, ты это расскажи тем же немцам, где территория не с фиг, а ситуации такие же происходят (я уж не говорю про ту же Швейцарию )
M>>И если при этом приходится немного вывихнуть мозги — что ж, это делает жизнь только интереснее. Будь то изучение Lisp, Haskell, J или китайского
Д>Главное — не синтаксис, главное — идеи. Так что повывихивать мозги над монадами наверно имеет смысл, хотя бы для того, чтобы быть в курсе. А вот вывихивать мозги над 1001-ой инкарнацией оператора if — просто дурь полнейшая.
Т.е. ты думаешь что без изменения синтаксиса можно все идеи реализовать? Покажи мне другой язык на которома данные = код, к примеру?
Вон на руби пытаются местами такое же делать (вроде Markby библиотечка проскаливала с подобным), но это лишь частично и не C# безусловно
Здравствуйте, Andrei N.Sobchuck, Вы писали:
ANS>Здравствуйте, Дарней, Вы писали:
ANS>>>Да вам, батенька, прямая дорога в Кобол.
Д>>почему обязательно кобол?
ANS>
ANS>ADD UserInput TO RunningTotal
ANS> ON SIZE ERROR DISPLAY "Error - new total too large for data-item."
ANS> NOT ON SIZE ERROR ADD 1 TO IterCount END-ADD
ANS>END-ADD
ANS>
ANS>еще б заставили цифры прописью писать и многим тут было бы было счастье
Здравствуйте, Курилка, Вы писали:
К>Сишные конструкции тоже не сразу становятся привычными
не знаю, у меня они никаких проблем не вызывали
К>Я говорил о разнице в синтаксисе, которая имеет смысл из каких-либо соображений, из того же удобства каких-то операций и т.п. В том же лиспе скобки из-за единства данных и кода, в форте — из-за стековой организации вычислений. Зачем наречие мумбо-юмбо тебе нужно, я не улавливаю
Скобки везде есть, только разные. Но зачем писать ужасы наподобие вот того?
(1=1) ifTrue: ['hello' out].
чем обыкновенный if (l==1) плох?
К>Вот видишь — ты сам себе противоречишь. Привычность в рег. выражениях чуть ли не отрицательная, но удобство на лицо.
Почему это вдруг привычность у них маленькая?
А вот проблем с удобством чтения у них до хрена, это факт.
Здравствуйте, Дарней, Вы писали:
Д>Здравствуйте, Курилка, Вы писали:
К>>Вот видишь — ты сам себе противоречишь. Привычность в рег. выражениях чуть ли не отрицательная, но удобство на лицо.
Д>Почему это вдруг привычность у них маленькая?
А теперь скажи — откуда они тебе были привычны, до того, как ты с ними начал разбираться?
Д>А вот проблем с удобством чтения у них до хрена, это факт.
Ну хоть это не отрицаешь, спасибо
Здравствуйте, Дарней, Вы писали:
Д>Нет, конечно. Но нет смысла делать непривычные рукоятки для скальпеля только для того, чтобы отличиться от конкурентов.
+1. В принципе согласен. Но есть ли принципиальня разница между вилкой с 3-мя зубцами и 4-мя ?
У Smalltalk несколько иная иделогия, вот и синтаксис другой.
У всех C-подобных языков if выглядит примерно одинаково.
[Занудство = Вкл.] Д>В китайском огромное количество диалектов,
основных что-то около 7, причем на самом используемом говорит около 90% населения.
Д> и нередки случаи, когда жители двух соседних областей просто не понимают друг друга. Выручает только письменность, которая унифицирована.
Примерно так оно и есть. Но все же я бы заменил "нередки" на "иногда".
Д> так что грамотных людей там не так уж и много. http://old.russ.ru/ist_sovr/sumerki/20010412_salit-pr.html
[Цитата]
Так, в отличие от еще одного азиатского исполина — Индии, Китай является страной с высоким и быстро растущим уровнем грамотности населения, в том числе крестьянского (составляющего основную массу населения в обеих странах). Неграмотными в Китае остаются лишь 15-17% взрослого населения (47% в Индии, 61% в Бангладеш, 59% в Пакистане, 27% в Иране, 17% в Турции, 15% в Индонезии). Еще лучше у КНР другой важный индикатор — доля неграмотных женщин в возрастной группе 15-24 года. Он показывает эффективность борьбы с неграмотностью за последние двадцать лет и косвенно свидетельствует о положении женщин в семье и обществе. В Китае указанный показатель составляет всего 4%. Этот же индикатор достигает 44% в Индии, 63% в Бангладеш, 61% в Пакистане, 10% в Иране, 8% в Турции, 4% в Индонезии.
[/Цитата]
[Занудство = Выкл.]
Д>Главное — не синтаксис, главное — идеи.
+1
Д> А вот вывихивать мозги над 1001-ой инкарнацией оператора if — просто дурь полнейшая.
Обычно вывихивать не приходится. А если приходится, то "это ЖЖЖЖЖ неспроста !"(С)
Имхо, конечно.
... << RSDN@Home 1.1.4 Pink Floyd — In The Flesh?>>
Здравствуйте, Курилка, Вы писали:
К>Т.е. ты думаешь что без изменения синтаксиса можно все идеи реализовать? Покажи мне другой язык на которома данные = код, к примеру? К>Вон на руби пытаются местами такое же делать (вроде Markby библиотечка проскаливала с подобным), но это лишь частично и не C# безусловно
ANS>Первый вариант и более короткий и более понятный!
ИМХО, слишком напоминает Си с его порочной практикой писать фокусы наподобие while (*src++ = *dst++);
Короче — да, немного. Но запись aDictionary at: aKey уж ничуть не понятнее, чем aDictionary[aKey].
Здравствуйте, Курилка, Вы писали:
К>А теперь скажи — откуда они тебе были привычны, до того, как ты с ними начал разбираться?
Ниоткуда. Но достойных конкурентов не было, поэтому пришлось пользоватся тем, что есть
фактор привычности начинает играть роль только тогда, когда есть из чего выбирать
Здравствуйте, Дарней, Вы писали:
Д>Ну это уже дурь. Зачем писать прописью математические вычисления, когда есть вполне привычная математическая нотация?
Quadro>>Я на выходных немного поковырял Смоллток и пришёл к выводу — всё таки нужен ДРУГОЙ язык. Ибо мозги у меня нормальные и когда я читаю "если условие, то сделать то-то", это более понимаемо, чем "условие :ЕслиДа делать то-то".
ANS>В корне не верно! Читать нужно не "условие :ЕслиДа делать то-то", а ....
К сожалению, ваше мышление уже исковеркано — как вы можете мне объяснять как надо читать? Я, слава небу, русский, знаю немного английский и Си. Так вот: конструкции Си, пройдя 30-летнюю проверку временем, стали практически стандартом: Си, Си++, Жаба, Це-шарп, Немерля — ВСЕ используют эту краткую и удобную нотацию. Неужто Смоллтоковское положение "на обочине" для вас не доказательство его ущербности? (заметьте — даже у ОПЫТНЫХ программеров!)
Безусловно, КАК ИДЕЯ Смолток великолепен. Но в унификации "объект-сообщение" авторы не учли одного — ДУМАТЬ в такой нотации неудобно. Это как показывать время в виде двоичных чисел — вроде бы то же самое, но пользоваться этим совершенно невозможно!
ANS>Техника, когда в функцию передаётся продолжение....
Всё это очень забавно, но ПО СУТИ не добавляет НИЧЕГО в семантику программы. Будет обработчик в иксепшыне, или после проверки error code, или в вашем continuation значения НЕ ИМЕЕТ. Я скажу больше — CPS и возник-то именно благодаря тому, что "обычный IF" не вписывался в идеологию "объект-сообщение" — вот и превратили лошадь в верблюда...
ANS> Так что, за синтаксисом очень часто скрывается некая идея
Ну вы просто открыли мне глаза!
ANS> и говоря "я не считаю нужным приспосабливать мозги под этот синтаксис" ты фактически говоришь "я не желаю ничего знать об этих техниках, и не желаю изучать где они могут применятся, зачем они придуманы".
Враньё и передёргивание. Стыдно, товарищ! А ещё в галстуке...
Вы нагло подменили понятие СИНТАКСИСА и ТЕХНИКИ. Техника — она одна, а способов её выражения — мильён и два напёрстка! Эти способы и называются синтаксис.
Но давайте вернёмся к исходному вопросу... Что есть ваше утверждение? Моё — я считаю, что синтаксис ОЧЕНЬ ВАЖЕН.
Здравствуйте, quadrochups, Вы писали:
Q>К сожалению, ваше мышление уже исковеркано
с чего ты взял, что можеш что-то сказать про моё мышление?
Q> — как вы можете мне объяснять как надо читать?
если "чукча не читатель, чукча писатель" (с) анек., то объяснить действительно ничего невозможно.
Q> Я, слава небу, русский, знаю немного английский и Си.
после того, как выучишь еще хоть один неалголоподобный язык, тогда и сможеш рассуждать, а пока...
Q>Но давайте вернёмся к исходному вопросу... Что есть ваше утверждение? Моё — я считаю, что синтаксис ОЧЕНЬ ВАЖЕН.
Для начала полностью раскрой свою мысль. Ты считаеш, что "С-синтаксис очень важен".
Здравствуйте, Курилка, Вы писали:
К>Здравствуйте, Дарней, Вы писали:
Д>>Здравствуйте, Mirrorer, Вы писали:
M>>>Целесообразно ли все болезни лечить при помощи скальпеля ?
Д>>Нет, конечно. Но нет смысла делать непривычные рукоятки для скальпеля только для того, чтобы отличиться от конкурентов.
Д>>>>Ну или китайской, если угодно
M>>>Тем не менее около миллиарда людей вполне довольны
Д>>А это ты зря так думаешь. В китайском огромное количество диалектов, и нередки случаи, когда жители двух соседних областей просто не понимают друг друга. К>Ага, ты это расскажи тем же немцам, где территория не с фиг, а ситуации такие же происходят (я уж не говорю про ту же Швейцарию )
M>>>И если при этом приходится немного вывихнуть мозги — что ж, это делает жизнь только интереснее. Будь то изучение Lisp, Haskell, J или китайского
Д>>Главное — не синтаксис, главное — идеи. Так что повывихивать мозги над монадами наверно имеет смысл, хотя бы для того, чтобы быть в курсе. А вот вывихивать мозги над 1001-ой инкарнацией оператора if — просто дурь полнейшая.
К>Т.е. ты думаешь что без изменения синтаксиса можно все идеи реализовать? Покажи мне другой язык на которома данные = код, к примеру?
На полном по Тьюрингу языке можно реализовать все идеи. Вопрос, во что это станет
Здравствуйте, quadrochups, Вы писали:
Q>Quadro>>Я на выходных немного поковырял Смоллток и пришёл к выводу — всё таки нужен ДРУГОЙ язык. Ибо мозги у меня нормальные и когда я читаю "если условие, то сделать то-то", это более понимаемо, чем "условие :ЕслиДа делать то-то".
ANS>>В корне не верно! Читать нужно не "условие :ЕслиДа делать то-то", а ....
Q>К сожалению, ваше мышление уже исковеркано — как вы можете мне объяснять как надо читать? Я, слава небу, русский, знаю немного английский и Си. Так вот: конструкции Си, пройдя 30-летнюю проверку временем, стали практически стандартом: Си, Си++, Жаба, Це-шарп, Немерля — ВСЕ используют эту краткую и удобную нотацию. Неужто Смоллтоковское положение "на обочине" для вас не доказательство его ущербности? (заметьте — даже у ОПЫТНЫХ программеров!) Q>Безусловно, КАК ИДЕЯ Смолток великолепен. Но в унификации "объект-сообщение" авторы не учли одного — ДУМАТЬ в такой нотации неудобно. Это как показывать время в виде двоичных чисел — вроде бы то же самое, но пользоваться этим совершенно невозможно!
Учтите, думать в нотации языка Pascal гораздо удобнее, чем в сишной, однако его клоны не так сильно распространены как си. Так что, возможно, дело в помочных эффектах
ANS>> Так что, за синтаксисом очень часто скрывается некая идея
Q>Ну вы просто открыли мне глаза!
Ну, оба посмешили
ANS>> и говоря "я не считаю нужным приспосабливать мозги под этот синтаксис" ты фактически говоришь "я не желаю ничего знать об этих техниках, и не желаю изучать где они могут применятся, зачем они придуманы".
Q>Враньё и передёргивание. Стыдно, товарищ! А ещё в галстуке... Q>Вы нагло подменили понятие СИНТАКСИСА и ТЕХНИКИ. Техника — она одна, а способов её выражения — мильён и два напёрстка! Эти способы и называются синтаксис.
Синтаксис часто выражает собой технику. В частности, это можно сказать про C и Pascal — это две разные ТЕХНИКИ.
Здравствуйте, Дарней, Вы писали:
Д>и все-таки, какие офигенные плюсы дает такая техника?
выше степень переиспользования кода, выше уровень абстракции, выше степень инкапсуляции.
Д>и почему нельзя использовать ее с привычным С-style синтаксисом?
можно. У java слишком большой синтаксический оверхед, а в C#2 всё нормально для этого.
PS Кстати, этот вариант
value := aDictionary at: aKey ifAbsent: [...обрабатываем ситуацию...].
легко получается из этого:
V value = aMap.get(key);
if (value == null) {...обрабатываем ситуацию...}
В начале нужно объеденить первую и вторую строчку, потому что эти две физические конструкции объеденяют одну логическую. И так, убираем точку-с-запятой и переносим "if" на верх. Затем вместо шифровки "value == null" пишем простое и понятное "Absent". И, вуаля...
Здравствуйте, quadrochups, Вы писали:
Q> Ибо мозги у меня нормальные и когда я читаю "если условие, то сделать то-то", это более понимаемо, чем "условие :ЕслиДа делать то-то".
Не спора ради, но чисто из интереса, а как ты читаеш конструкцию: