Синтаксический сахар или C++ vs. Nemerle :)
От: Чистяков Влад aka VladD2 Российская Империя www.nemerle.org
Дата: 24.05.06 03:29
Оценка: 320 (9) -5 :))) :))) :)
Статья:
Синтаксический сахар или C++ vs. Nemerle :)
Автор(ы): Чистяков Влад aka VladD2
Дата: 24.05.2006
Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ «Зачем вводить в язык то, что реализуется библиотекой?» и «Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек». Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.


Авторы:
Чистяков Влад aka VladD2

Аннотация:
Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ <Зачем вводить в язык то, что реализуется библиотекой?> и <Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек>. Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Синтаксический сахар или C++ vs. Nemerle :)
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 24.05.06 09:01
Оценка: +6
Здравствуйте, Чистяков Влад aka VladD2, Вы писали:

ЧВA>Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ <Зачем вводить в язык то, что реализуется библиотекой?> и <Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек>. Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.


Влад, вот скажи мне, откуда такая "любовь" к C++? Ведь это язык, только коммерческая эксплуатация которого идет уже двадцать лет, а начал он создаваться еще лет на пять раньше. Какой смысл сравнивать его с только что появившимися на свет языками, в которых на генетическом уровне заложен опыт (в том числе и негативный) C++ и прочих?

Более того, ведь C++ сейчас даже не самый популярный язык программирования. Почему бы не взять Java? В Java ведь не с меньшей неохотой изменяют сам язык, а вокруг Java сейчас сформировано огромное количество библиотек. Или еще более молодой, но уже популярный C#?

Я не хочу порождать очередной флейм по обсуждению превосходства Nemerle над C++. Я хочу понять, почему C++ (а не Java, не Eiffel, не Smalltalk, ни Lisp, ни Visual Basic, you name it) является такой раздражающей красной тряпкой?


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: FR  
Дата: 24.05.06 10:06
Оценка: :))) :))) :))) :))) :))) :))
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, Чистяков Влад aka VladD2, Вы писали:


ЧВA>>Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ <Зачем вводить в язык то, что реализуется библиотекой?> и <Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек>. Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.


E>Влад, вот скажи мне, откуда такая "любовь" к C++? Ведь это язык, только коммерческая эксплуатация которого идет уже двадцать лет, а начал он создаваться еще лет на пять раньше. Какой смысл сравнивать его с только что появившимися на свет языками, в которых на генетическом уровне заложен опыт (в том числе и негативный) C++ и прочих?


Это "комплекс эмигранта"
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: Андрей Хропов Россия  
Дата: 24.05.06 10:44
Оценка: +3
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, Чистяков Влад aka VladD2, Вы писали:


ЧВA>>Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ <Зачем вводить в язык то, что реализуется библиотекой?> и <Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек>. Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.


E>Влад, вот скажи мне, откуда такая "любовь" к C++? Ведь это язык, только коммерческая эксплуатация которого идет уже двадцать лет, а начал он создаваться еще лет на пять раньше. Какой смысл сравнивать его с только что появившимися на свет языками, в которых на генетическом уровне заложен опыт (в том числе и негативный) C++ и прочих?


Вот с тем чтобы и показать как учли этот опыт.

E>Более того, ведь C++ сейчас даже не самый популярный язык программирования. Почему бы не взять Java? В Java ведь не с меньшей неохотой изменяют сам язык, а вокруг Java сейчас сформировано огромное количество библиотек. Или еще более молодой, но уже популярный C#?


Дело в том, что Java/C# изначально не рассчитаны на расширение возможностей с помощью метапрограммирования.
В них и нет таких средств.
В то же время в C++ в последнее время как раз активно его (метапрограммирование) используют (boost, особенно boost::lambda), в то же время так как изначально язык на такое применение шаблонов не был рассчитан это происходит достаточно коряво.

E>Я не хочу порождать очередной флейм по обсуждению превосходства Nemerle над C++. Я хочу понять, почему C++ (а не Java, не Eiffel, не Smalltalk, ни Lisp, ни Visual Basic, you name it) является такой раздражающей красной тряпкой?


Из этого списка можно было бы с Lisp только сравнить, наверное, по причинам изложенным выше. Было бы интересно.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: Дарней Россия  
Дата: 24.05.06 10:50
Оценка: +2
Здравствуйте, eao197, Вы писали:

E>Влад, вот скажи мне, откуда такая "любовь" к C++?


наверно, потому что это единственный мэйнстримный язык, в котором используют метапрограммирование на уровне языка. Ява и сишарп по этому параметру — не конкуренты.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.05.06 19:26
Оценка:
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, Чистяков Влад aka VladD2, Вы писали:


ЧВA>>Данная статья явилось плодом размышлений автора над фразами то и дело произносимыми в отношении C++ <Зачем вводить в язык то, что реализуется библиотекой?> и <Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек>. Эта статья является сравнением того как эти фразы реализуются в языке Nemerle и чем эта реализация отличается от того что сделано в C++.


E>Влад, вот скажи мне, откуда такая "любовь" к C++?


Я высказываю свою точку зрения по тем вопросам которые кажутся мне интересными.

А ты умудряшся судить о том, что не читал и вообще в глаза не видел.

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


Прочти статью — узнашь. Если после прочтения будет, что сказать, то милости просим писать ответнуд статью.

E>Более того, ведь C++ сейчас даже не самый популярный язык программирования. Почему бы не взять Java?

E>...Или еще более молодой, но уже популярный C#?

Потому что Ява и C# не декларировали приципы «Зачем вводить в язык то, что реализуется библиотекой?» и «Язык должен включать только базовые вещи, а весь синтаксический сахар должен реализоваться в виде библиотек» обсуждаемые в этой статье. А апологеты С++ постоянно о них упоминают.

E>Я не хочу порождать очередной флейм


Так за чем дело встало? Не порождай.

E> по обсуждению превосходства Nemerle над C++.


А что есть что обсуждать? По-моему все очевидно.

E> Я хочу понять, почему C++ (а не Java, не Eiffel, не Smalltalk, ни Lisp, ни Visual Basic, you name it) является такой раздражающей красной тряпкой?


Вообще, или применительно к этой статье? Если последнее, то я уже ответил.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.05.06 19:26
Оценка:
Здравствуйте, Андрей Хропов, Вы писали:

АХ>Из этого списка можно было бы с Lisp только сравнить, наверное, по причинам изложенным выше. Было бы интересно.


Хорошая идея. Но у меня скил в области Лиспа близок по высоте к плинтусу. Так что это задача для кого-то другого.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Синтаксический сахар или C++ vs. Nemerle :)
От: Андрей Хропов Россия  
Дата: 24.05.06 20:37
Оценка:
Здравствуйте, VladD2, Вы писали:

АХ>>Из этого списка можно было бы с Lisp только сравнить, наверное, по причинам изложенным выше. Было бы интересно.


VD>Хорошая идея. Но у меня скил в области Лиспа близок по высоте к плинтусу.

У меня тоже

VD> Так что это задача для кого-то другого.

Ну вот тут
Автор: fionbio
Дата: 12.07.05
человек интересующийся писал, может поможет ?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Синтаксический сахар или C++ vs. Nemerle :)
От: Olegator  
Дата: 24.05.06 20:42
Оценка: +1 -2 :)
Здравствуйте, Чистяков Влад aka VladD2, Вы писали:

ЧВA>Статья:


Не знаю, может быть пример выбран неудачно, может в недоступной части статьи есть объяснение, но... Пример с foreach просто смешон! Ты высказываешь тезис об отсутствии синтаксического сахара в Nemerle и тут же сам опровергаешь его. Мне конструкция с for уже настолько привычна, что вероятность допустить в задании цикла ошибку практически нулевая. Ты же называешь эту конструкцию "свирепой", предлагая взамен другую такую же, чуть короче в байтовом смысле и менее универсальную (что, если я захочу сделать шаг 2?). В чем поинт? Ведь удобство инструмента определяется не этим, верно?
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: WolfHound  
Дата: 24.05.06 20:56
Оценка: +1
Здравствуйте, Olegator, Вы писали:

O>Не знаю, может быть пример выбран неудачно, может в недоступной части статьи есть объяснение, но... Пример с foreach просто смешон! Ты высказываешь тезис об отсутствии синтаксического сахара в Nemerle и тут же сам опровергаешь его.

А в немерле нет конструкции foreach. Как нет и for и while и много чего другого. За то есть макросы которые это все реализуют те весь сахар (а for несомненно тоже сахар) в бибиотеке.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
От: Olegator  
Дата: 24.05.06 22:01
Оценка: +1
Здравствуйте, WolfHound, Вы писали:

WH>А в немерле нет конструкции foreach. Как нет и for и while и много чего другого. За то есть макросы которые это все реализуют те весь сахар (а for несомненно тоже сахар) в бибиотеке.


Хмм... Но VladD2 указывал именно foreach как одно из преимуществ.

Аргументы в статье не доказывают преимущества Nemerle как инструмента, а лишь показывают какой-то новый [сомнительный] синтаксис.
Re[5]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.05.06 22:07
Оценка:
Здравствуйте, Андрей Хропов, Вы писали:

VD>> Так что это задача для кого-то другого.

АХ>Ну вот тут
Автор: fionbio
Дата: 12.07.05
человек интересующийся писал, может поможет ?


Проблема в том, что у Личпарей обычно нулевой скил в области Немерла и нулевое же влечение к дотнету и всем что с ним связано.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 24.05.06 22:07
Оценка: :)
Здравствуйте, Olegator, Вы писали:

O>Здравствуйте, Чистяков Влад aka VladD2, Вы писали:


ЧВA>>Статья:


O>Не знаю, может быть пример выбран неудачно, может в недоступной части статьи есть объяснение, но...


Есть еще один варинт. Ты мог невнимательно прочесть или прочтя не понять о чем идет речь.

O> Пример с foreach просто смешон! Ты высказываешь тезис об отсутствии синтаксического сахара в Nemerle и тут же сам опровергаешь его. Мне конструкция с for уже настолько привычна, что вероятность допустить в задании цикла ошибку практически нулевая.


Я думаю, развивать тему возможности допущения ошики не стоит.

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

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


Поинт в том, что ты читая про одно зациклился на посторонеей вещи. Причем ты в общем-то не прав и в сделанном тобой выводе по поводу for-а, но обсуждать эту тему значит уйти совсем в сторону от смысла. В общем, подождем пока статья будет выложена целиком, а там поговорим, если конечно, вопросы еще останутся.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
От: Olegator  
Дата: 24.05.06 22:34
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Есть еще один варинт. Ты мог невнимательно прочесть или прочтя не понять о чем идет речь.


Пропустим.

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


Не, это конечно хорошо, что можно изобретать свои варианты перебора. Только зачем? Пусть не foreach, рассмотрим пример с хвостовой рекурсией. Какой в ней, собственно, смысл? Чтобы перебрать значения, ты определяешь дополнительную функцию/макрос, тем самым плодя сущности без необходимости. Такой перебор сложнее читается, т. к. визуально перегружен (условный оператор, рекурсивный вызов).

Это я всё не придираюсь, это я просто к тому, что пример плохой. Хотя может мысль, которую он должен выражать, правильная. Я не телепат.

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


В статье [пока] довольно мало вещей, чтобы можно было на чём-то зациклиться. И уж поверь, человек, незнакомый с Nemerle, понимает начало так: Nemerle лучше, потому что у него больше возможностей для перебора.

ЗЫ. Зачем такую тему, которую обсуждают на форуме, надо было делать закрытой?
Re[4]: Синтаксический сахар или C++ vs. Nemerle :)
От: IT Россия linq2db.com
Дата: 24.05.06 23:34
Оценка: +1
Здравствуйте, Olegator, Вы писали:

O>Это я всё не придираюсь, это я просто к тому, что пример плохой. Хотя может мысль, которую он должен выражать, правильная. Я не телепат.


Смысл примера с рекурсией не в его "хорошести", а в том, что без forXXX можно обойтись совсем. Но статья немного о другом и в ней нигде не говорится, что так теперь и надо поступать.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 25.05.06 03:23
Оценка:
Здравствуйте, VladD2, Вы писали:

E>>Влад, вот скажи мне, откуда такая "любовь" к C++?


VD>Я высказываю свою точку зрения по тем вопросам которые кажутся мне интересными.


Хм. Выглядит это так: "я знаю C++, C# и Nemerle. C# и Nemerle мои любимые языки. C++ отстой. Значит нужно попинать C++."

Спасибо, ответ понятен.

VD>А ты умудряшся судить о том, что не читал и вообще в глаза не видел.


Покажи мне точную цитату, где я что-нибудь из твоей статьи осудил.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[3]: Синтаксический сахар или C++ vs. Nemerle :)
От: AVC Россия  
Дата: 25.05.06 05:53
Оценка:
Здравствуйте, VladD2, Вы писали:

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


Ну хотя бы намекни...

Но существует одно качество, которое нельзя купить, — это надежность. Цена надежности — погоня за крайней простотой. Это цена, которую очень богатому труднее всего заплатить.

Хоар
Re[4]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.05.06 08:55
Оценка:
Здравствуйте, eao197, Вы писали:

E>Хм. Выглядит это так: "я знаю C++, C# и Nemerle. C# и Nemerle мои любимые языки. C++ отстой. Значит нужно попинать C++."


Тебе так хочется видить. А реальность такая. Я заметил интересную вещь и описал ее развернуто. Что касается "любви", то тоже ошибаешся. Я прошел сколу С++, C# и вот сейчас прохожу школу Nemerlr. Каждая мне что-то дала и двинула в перед. Ну, а некоторые сидят на пятой точке и ищут отмазки для того чтобы не отрывать ее от земли.
E>Спасибо, ответ понятен.

E>Покажи мне точную цитату, где я что-нибудь из твоей статьи осудил.


Re: Синтаксический сахар или C++ vs. Nemerle :)
Автор: eao197
Дата: 24.05.06
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Синтаксический сахар или C++ vs. Nemerle :)
От: VladD2 Российская Империя www.nemerle.org
Дата: 25.05.06 09:34
Оценка:
Здравствуйте, Olegator, Вы писали:

WH>>А в немерле нет конструкции foreach. Как нет и for и while и много чего другого. За то есть макросы которые это все реализуют те весь сахар (а for несомненно тоже сахар) в бибиотеке.


O>Хмм... Но VladD2 указывал именно foreach как одно из преимуществ.


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

O>Аргументы в статье не доказывают преимущества Nemerle как инструмента, а лишь показывают какой-то новый [сомнительный] синтаксис.


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

Про сомнительность синтаксиса даже говорить не хочу.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Синтаксический сахар или C++ vs. Nemerle :)
От: Шахтер Интернет  
Дата: 25.05.06 10:01
Оценка: 86 (8) +3 -3 :))) :))) :))) :))) :))) :))) :))
Здравствуйте, VladD2, Вы писали:

VD>Тебе так хочется видить. А реальность такая. Я заметил интересную вещь и описал ее развернуто. Что касается "любви", то тоже ошибаешся. Я прошел сколу С++, C# и вот сейчас прохожу школу Nemerlr. Каждая мне что-то дала и двинула в перед. Ну, а некоторые сидят на пятой точке и ищут отмазки для того чтобы не отрывать ее от земли.


Боюсь, что ты эту школу не прошел, а был просто отчислен за неуспеваемость.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.