Здравствуйте, Klapaucius, Вы писали:
G>> :о)) Вирт явно черезчур увлёкся приближением Оберона к Си...
Kl> Блестящее подтверждение моего утверждения о двойных стандартах. Впрочем, если Вы лауреат Премии Тьюринга — я беру свои слова назад.
Здравствуйте, konsoletyper, Вы писали:
Ko> Вот и пришли... Тогда не совсем понятно, с чего начался спор. Ты показал готовность ругать Вирта за Оберон.
Одно маленькое "но". Я не ругаю Вирта.
Вирт имеет своё представление об идеальном императивном языке и последовательно идёт к нему вот уже лет тридцать.
Я имею другое представление о таком языке, мне Обероны не очень нравятся. Ну и где я его ругаю?
Си мне нравится ещё меньше, и что, я ругаю K&R?
G>> Но когда Вирта сравнивают с Гитлером, как это сделал konsoletyper... Мда, любые аргументы тут будут явно бессильными...
Kl> Я такого сравнения не видел, не подскажете где оно? Если имеете в виду это — значит Вы оклеветали konsoletyper-а. Никакого сравнения Вирта с Гитлером там нет. Сравнение составных утверждений не есть сравнение их произвольных составляющих — не так ли?
Ko> Я его сравнил так же со Сталином и Биллом Гейтсом. Это был наглый сарказм. Какая взаимосвязь может быть между критикой Гитлера и тем, сколько критик загубил душ? Вот я и привёл пример фразы, которая, по-моему, настолько же логична, насколько и твоя.
Когда кого-то ставят в один ряд с другими людьми, то фактически производят сравнение с ними.
Поставив в один ряд Вирта и Гитлера, konsoletyper, имхо, преследовал целью очернить Вирта. Разве не так?
По-моему, это как минимум глубокое неуважение к Вирту...
Re[13]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, geniepro, Вы писали:
Ko>> Вот и пришли... Тогда не совсем понятно, с чего начался спор. Ты показал готовность ругать Вирта за Оберон.
G>Одно маленькое "но". Я не ругаю Вирта.
А что в твоём понимании "ругать Вирта"? Обязательно кричать на него с матюками и приклинать всех его родственников?
G>Вирт имеет своё представление об идеальном императивном языке и последовательно идёт к нему вот уже лет тридцать.
Что-то его представления лет на 20 отстали от жизни. А к практике вообще почти перестали хоть как-то относиться. Да и нет тут отностительности в плане императивный/функциональный. ФЯ — оно однозначно круче. Я имею в виду не программирование без побочных эффектов, а такие штуковины, как кортежи, замыкания, вывод типов, паттерн-матчинг, сворачивание концевой рекурсии и т.д. — фичи, традиционно присущие ФЯ. Михаль Москаль, которому что-то никто премию Тьюринга, сумел эти фичи запихнуть в императивный язык, а его друган туда ещё и метапрограммирование приделал.
G>Я имею другое представление о таком языке, мне Обероны не очень нравятся. Ну и где я его ругаю? G>Си мне нравится ещё меньше, и что, я ругаю K&R?
Да, вот это ты сейчас и делаешь.
Ko>> Я его сравнил так же со Сталином и Биллом Гейтсом. Это был наглый сарказм. Какая взаимосвязь может быть между критикой Гитлера и тем, сколько критик загубил душ? Вот я и привёл пример фразы, которая, по-моему, настолько же логична, насколько и твоя.
G>Когда кого-то ставят в один ряд с другими людьми, то фактически производят сравнение с ними.
Это откуда следует. И почему это ты решил, что я Вирта в один ряд с Гитлером поставил. Ты бы повнимательнее читал то, что тебе пишут.
G>Поставив в один ряд Вирта и Гитлера, konsoletyper, имхо, преследовал целью очернить Вирта. Разве не так?
... << RSDN@Home 1.2.0 alpha rev. 710>>
Re[14]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, konsoletyper, Вы писали:
K>ФЯ — оно однозначно круче.
Хм. Что то мне подсказывает, что ни одна из современных парадигм не является "однозначно круче".
K> Я имею в виду не программирование без побочных эффектов, а такие штуковины, как кортежи, замыкания, вывод типов, паттерн-матчинг
Это не есть функциональное программирование. Все эти фичи есть или могут быть в императивных языках.
K>Михаль Москаль, которому что-то никто премию Тьюринга, сумел эти фичи запихнуть в императивный язык
Во-первых совсем не очевидно, что база Nemerle это императивный язык, во-вторых замыкания были еще в C# 2, а уж вывод типов в императивных языках я даже затрудняюсь вспомнить когда появился.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>Хм. Что то мне подсказывает, что ни одна из современных парадигм не является "однозначно круче".
Круче, когда одна язык пользуется преимуществами нескольких парадигм. Я это имел в виду.
AVK>Это не есть функциональное программирование. Все эти фичи есть или могут быть в императивных языках.
Да, это не есть ФП. Эти фичи просто традиционно были характерны для ФЯ, а такие товарищи, как Вирт, прохлопали их, потому они только недавно стали появляться в ИЯ.
AVK>Во-первых совсем не очевидно, что база Nemerle это императивный язык, во-вторых замыкания были еще в C# 2, а уж вывод типов в императивных языках я даже затрудняюсь вспомнить когда появился.
На Nemerle можно писать и как на ФЯ и как на ИЯ (а можно сразу и так и так). Замыкания — это единичный случай, я же говорил про все фичи. Про вывод типов — вот это интересно. Где это он был вне системы типов Хиндли-Милнера?
... << RSDN@Home 1.2.0 alpha rev. 710>>
Re[15]: Посоветуйте литературу о культуре правильного структ
AVK>Во-первых совсем не очевидно, что база Nemerle это императивный язык, во-вторых замыкания были еще в C# 2, а уж вывод типов в императивных языках я даже затрудняюсь вспомнить когда появился.
приведи примеры таких языков
Люди, я люблю вас! Будьте бдительны!!!
Re[16]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, konsoletyper, Вы писали:
K>Да, это не есть ФП. Эти фичи просто традиционно были характерны для ФЯ, а такие товарищи, как Вирт, прохлопали их, потому они только недавно стали появляться в ИЯ.
Мне лень искать точные даты, но не думаю что вывод типов или замыкания появились в императивных языках недавно.
K>На Nemerle можно писать и как на ФЯ и как на ИЯ (а можно сразу и так и так).
Ну и что? На OCAML тоже можно.
K>Замыкания — это единичный случай, я же говорил про все фичи.
Из всех фич, что ты перечислил, к ФЯ непостредственно имеет отношение только хвостовая рекурсия, так как вызвана отсутствием mutable переменных.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Здравствуйте, konsoletyper, Вы писали:
K> Круче, когда одна язык пользуется преимуществами нескольких парадигм. Я это имел в виду.
Это очень спорный момент... Лисп так и не стал широко популярным, а С++ вапще ужас-монстр...
Неизвестно, какая судьба постигнет Немерле — слишком молод ещё этот язык... Его вполне могут довести до монструозности С++, и так он и останется эзотерикой, как Лисп...
K> ФЯ — оно однозначно круче. Я имею в виду не программирование без побочных эффектов, а такие штуковины, как кортежи, замыкания, вывод типов, паттерн-матчинг, сворачивание концевой рекурсии и т.д. — фичи, традиционно присущие ФЯ.
Вапще-то основа ФП — лямбда-исчисление, которое не нуждается в мутабельном состоянии. Так что ФП с побочными эффектами — оксюморон. Отсутствие побочных эффектов — неизбежно в ФП...
K> Михаль Москаль, которому что-то никто премию Тьюринга, сумел эти фичи запихнуть в императивный язык, а его друган туда ещё и метапрограммирование приделал.
K> На Nemerle можно писать и как на ФЯ и как на ИЯ (а можно сразу и так и так).
Ну и что тут нового? В чём тут особая заслуга Москаля и его другана?
Всё это было ещё в Лиспах десятки лет тому назад. Лисп вполне себе императивен...
Даже в Хаскелле легко "писать и как на ФЯ и как на ИЯ (а можно сразу и так и так)", недаром Пейтон Джонс в своей недавней презентации в OSCON'е прямо так и заявил — "Хаскелл — прекраснейший в мире императивный язык". И я с ним согласен... :о))
Да и, как тут правильно заметили, в С++ это тоже не вчера появилось...
G>> Я имею другое представление о таком языке, мне Обероны не очень нравятся. Ну и где я его ругаю? G>> Си мне нравится ещё меньше, и что, я ругаю K&R?
K> Да, вот это ты сейчас и делаешь.
Потрясающее умозаключение...
Re[17]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, geniepro, Вы писали:
K>> ФЯ — оно однозначно круче. Я имею в виду не программирование без побочных эффектов, а такие штуковины, как кортежи, замыкания, вывод типов, паттерн-матчинг, сворачивание концевой рекурсии и т.д. — фичи, традиционно присущие ФЯ.
G>Вапще-то основа ФП — лямбда-исчисление, которое не нуждается в мутабельном состоянии. Так что ФП с побочными эффектами — оксюморон. Отсутствие побочных эффектов — неизбежно в ФП...
Я не говорю про ФП. Я говорю про фичи, которые исторически были присущи ФЯ. Но они не есть отличительная черта именно ФЯ.
K>> На Nemerle можно писать и как на ФЯ и как на ИЯ (а можно сразу и так и так).
G>Ну и что тут нового? В чём тут особая заслуга Москаля и его другана?
Например, в том, что в традиционно ООП-ной системе типов смогли реализовать вывод типов (Хиндли-Милнер не очень хорошо сочетается с традиционным ООП). В том, что сумели сделать метапрораммирование с человеческим лицом в статически-типизированных языках (хотя и не впервые, но и до Паскаля был Алгол).
G>Всё это было ещё в Лиспах десятки лет тому назад. Лисп вполне себе императивен...
Лисп — это вообще незнамо что.
... << RSDN@Home 1.2.0 alpha rev. 710>>
Re[18]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, konsoletyper, Вы писали:
AVK>>С++
K>
Типы аргументов шаблонов выводятся. В C# 2.0, кстати, тоже в некоторых случаях выводятся. А вобще, как справедливо в свое время заметил Влад, 2 + 2, которое имеет свой тип в большинстве строготипизированных языков без явного указания типов, это тоже вывод типов, только очень примитивный.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>Типы аргументов шаблонов выводятся. В C# 2.0, кстати, тоже в некоторых случаях выводятся. А вобще, как справедливо в свое время заметил Влад, 2 + 2, которое имеет свой тип в большинстве строготипизированных языков без явного указания типов, это тоже вывод типов, только очень примитивный.
Рассуждая таким образом можно туда ещё перегрузку функций записать?
now playing: SCSI-9 — Sweets and Love
Re[20]: Посоветуйте литературу о культуре правильного структ
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, EvilChild, Вы писали:
EC>>Рассуждая таким образом можно туда ещё перегрузку функций записать?
AVK>В принципе да.
mov [si], ax
транслируется как
mov word ptr [si], ax
mov [si], al
транслируется как
mov byte ptr [si], al