Здравствуйте, ZevS, Вы писали:
ZS>Вам нравятся эти операторы? И же выведет такой код? И почему? ZS>
ZS> int i = 2;
ZS> i += i--;
ZS> printf("%d", i);
ZS>
Тут кажись неопределенное поведение — двойная модификация переменной между точками следования. А вообще за такой код руки надо отрывать а не приводить в качестве примера.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Здравствуйте, ekamaloff, Вы писали:
E>Здравствуйте, ZevS, Вы писали:
ZS>>Вам нравятся эти операторы? И же выведет такой код? И почему? ZS>>
ZS>> int i = 2;
ZS>> i += i--;
ZS>> printf("%d", i);
ZS>>
E>Тут кажись неопределенное поведение — двойная модификация переменной между точками следования. А вообще за такой код руки надо отрывать а не приводить в качестве примера.
В точку. Именно поэтому использование операторов -- ++ есть зло. В любом примере. Вообще, ввод их в язык считаю ходом довольно неудачным.
Здравствуйте, ZevS, Вы писали:
ZS>В точку. Именно поэтому использование операторов -- ++ есть зло. В любом примере. Вообще, ввод их в язык считаю ходом довольно неудачным.
"Вы не любите кошек? Это потому, что вы не умеете их готовить!" (С) не помню чей
Может не стоит так категорически объявлять злом то, с чем надо уметь обращаться?
И перестать обвинять язык в кривости написанного кода.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, ZevS, Вы писали:
ZS>>В точку. Именно поэтому использование операторов -- ++ есть зло. В любом примере. Вообще, ввод их в язык считаю ходом довольно неудачным. CC>"Вы не любите кошек? Это потому, что вы не умеете их готовить!" (С) не помню чей
CC>Может не стоит так категорически объявлять злом то, с чем надо уметь обращаться? CC>И перестать обвинять язык в кривости написанного кода.
1. Результат выполнения программы должен быть предсказуем и не зависить он компилятора. Это мое стойкое убеждение.
2. Языки программирования создают для людей, а не для компьютеров. Следоватьельно код должен быть легко читаем, и это — прерогатива языка. Очень тяжело разгребать чей то кривой код, особенно если он (кривой писатьель) поощряется синтаксисом языка. А как показывает практика, юные программисты очень любят писать код с использованием максимума языковых фенечек.
3. С++ — отличный язык отлично себя зарекомендовавший, но не надо его возводить в абсолют.
ZevS wrote:
> 1. Результат выполнения программы должен быть предсказуем и не зависить > он компилятора. Это мое стойкое убеждение.
Если у языка есть хотя бы больше одного компилятора, то это практически невозможно.
А у С++ (а если ещё С посчитать) — десятки.
> 2. Языки программирования создают для людей, а не для компьютеров. > Следоватьельно код должен быть легко читаем, и это — прерогатива языка. > Очень тяжело разгребать чей то кривой код, особенно если он (кривой > писатьель) поощряется синтаксисом языка. А как показывает практика, юные > программисты очень любят писать код с использованием максимума языковых > фенечек.
Провокационный вопрос: какой язык не позволяет писать криво?
> 3. С++ — отличный язык отлично себя зарекомендовавший, но не надо его > возводить в абсолют.
Вот и не надо возводить в абсолют вред ++/--.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Здравствуйте, kan_izh, Вы писали:
_>ZevS wrote:
>> 1. Результат выполнения программы должен быть предсказуем и не зависить >> он компилятора. Это мое стойкое убеждение. _>Если у языка есть хотя бы больше одного компилятора, то это практически невозможно. _>А у С++ (а если ещё С посчитать) — десятки.
Да что вы говорите. Есть куча реализаций Васика и во всех реализациях сложение и вычитание целых цисел работает одинаково.
>> 2. Языки программирования создают для людей, а не для компьютеров. >> Следоватьельно код должен быть легко читаем, и это — прерогатива языка. >> Очень тяжело разгребать чей то кривой код, особенно если он (кривой >> писатьель) поощряется синтаксисом языка. А как показывает практика, юные >> программисты очень любят писать код с использованием максимума языковых >> фенечек. _>Провокационный вопрос: какой язык не позволяет писать криво?
Я не о том.
>> 3. С++ — отличный язык отлично себя зарекомендовавший, но не надо его >> возводить в абсолют. _>Вот и не надо возводить в абсолют вред ++/--.
Провокационный вопрос: А к goto вы как относитесь?
ZevS wrote:
>> > 1. Результат выполнения программы должен быть предсказуем и не зависить >> > он компилятора. Это мое стойкое убеждение. > _>Если у языка есть хотя бы больше одного компилятора, то это > практически невозможно. > _>А у С++ (а если ещё С посчитать) — десятки. > Да что вы говорите. Есть куча реализаций Васика и во всех реализациях > сложение и вычитание целых цисел работает одинаково.
Да, куча языков, которые называются "васик", это не компиляторы/интерпретаторы. Разницу понимаешь?
Попробуй-ка один исходный файл выполнить как VBScript, VBA и QBasic.
>> > 2. Языки программирования создают для людей, а не для компьютеров. >> > Следоватьельно код должен быть легко читаем, и это — прерогатива языка. >> > Очень тяжело разгребать чей то кривой код, особенно если он (кривой >> > писатьель) поощряется синтаксисом языка. А как показывает практика, юные >> > программисты очень любят писать код с использованием максимума языковых >> > фенечек. > _>Провокационный вопрос: какой язык не позволяет писать криво? > Я не о том.
А о чём? С учётом того, что С++ никогда не рекомендовался для юных программистов.
>> > 3. С++ — отличный язык отлично себя зарекомендовавший, но не надо его >> > возводить в абсолют. > _>Вот и не надо возводить в абсолют вред ++/--. > Провокационный вопрос: А к goto вы как относитесь?
Когда сам пишу, стараюсь обходить его использование. И это всегда удаётся без каких либо проблем. Когда читаю чужой код
— пофиг — есть или нет.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
...
_>Да, куча языков, которые называются "васик", это не компиляторы/интерпретаторы. Разницу понимаешь?
Говоря о языках — разницы ни какой. Кстати VB6 — такой же компилятор, как и C#.
_>Попробуй-ка один исходный файл выполнить как VBScript, VBA и QBasic.
Если там написано:
i = i + 2
— результатом всегда будет увеличение i на 2.
_>А о чём? С учётом того, что С++ никогда не рекомендовался для юных программистов.
А кому он рекомендован? Что вообще означает — рекомендован? Мне надо сделать качественный продукт в кротчайшее время с минимальными затратами. Извините, но ваша фраза попахивает снобизмом.
>> Провокационный вопрос: А к goto вы как относитесь? _>Когда сам пишу, стараюсь обходить его использование. И это всегда удаётся без каких либо проблем. Когда читаю чужой код _>- пофиг — есть или нет.
ZevS wrote:
> _>Да, куча языков, которые называются "васик", это не > компиляторы/интерпретаторы. Разницу понимаешь? > Говоря о *языках* — разницы ни какой.
Если ты будешь всегда работать под одним и тем же компилером C++, то ты не скоро столкнёшься с проблемами UB.
> Кстати VB6 — такой же компилятор, как и C#.
Это не важно. Важно то, что для VB6 есть всего один продукт (и фактически только одна версия), который с ним работает.
> _>Попробуй-ка один исходный файл выполнить как VBScript, VBA и QBasic. > Если там написано: > i = i + 2 > — результатом всегда будет увеличение i на 2.
И что? В C++, не поверишь, тоже.
> _>А о чём? С учётом того, что С++ никогда не рекомендовался для юных > программистов. > А кому он рекомендован? Что вообще означает — рекомендован? Мне надо > сделать качественный продукт в кротчайшее время с минимальными > затратами. Извините, но ваша фраза попахивает снобизмом.
"Качественный" в данном случае расплывчатое понятие. Или ты сразу можешь сказать, какой язык
подойдёт при таких требованиях?
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
...
>> _>Попробуй-ка один исходный файл выполнить как VBScript, VBA и QBasic. >> Если там написано: >> i = i + 2 >> — результатом всегда будет увеличение i на 2. _>И что? В C++, не поверишь, тоже.
На васике нет неоднозначностей, на C++ — есть. Я хотел сказать это. На васике выражение a+++b трактуется всегда однозначно.
>> _>А о чём? С учётом того, что С++ никогда не рекомендовался для юных >> программистов. >> А кому он рекомендован? Что вообще означает — рекомендован? Мне надо >> сделать качественный продукт в кротчайшее время с минимальными >> затратами. Извините, но ваша фраза попахивает снобизмом. _>"Качественный" в данном случае расплывчатое понятие. Или ты сразу можешь сказать, какой язык _>подойдёт при таких требованиях?
Мое исходное сообщение было про синтаксис языка, а не язык/библиотеки и что на чем надо...
Согласитесь что неоднозначный синтаксис — плохо. Примените двоемыслие, когда С++ — хорошо, а его неоднозначный синтаксис — плохо.
ZevS wrote:
> На васике нет неоднозначностей, на C++ — есть. Я хотел сказать это. На > васике выражение a+++b трактуется всегда однозначно.
Ах, если бы только это сказывалось на качестве языка....
> Мое исходное сообщение было про синтаксис языка, а не язык/библиотеки и > что на чем надо... > Согласитесь что неоднозначный синтаксис — плохо.
Чем больше выразительность языка, тем сложнее синтаксис. Вот у русского языка такой сложный синтаксис, это плохо? Да,
для безграмотных, но для грамотных людей — возможность писать выразительно.
> Примените двоемыслие,
А вы не пытайтесь всё делить на хорошо и плохо, это религиозные понятия.
> когда С++ — хорошо, а его неоднозначный синтаксис — плохо.
Ладно, тогда можно раскрыть понятие "рекомендован". Кто не обращает внимание на синтаксис языка, тому рекомендован.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
ZevS wrote:
> Кстати, почитайте статью Вирта в последнем RSDN-е. Интересная статейка.
Странная у него там критика. Теоретик он. Не принимает простое правило "если это глупо, но работает, значит это не глупо".
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай