Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
А может быть за перенос проголосовать? 12.03.05 06:38 Число просмотров: 1962
Автор: Heller <Heller> Статус: Elderman
|
Всей этой ветки, начиная с "углубился я в дизассемблер".
Ладно, оставим в стороне вопрос оптимизации и кодогенерации, раз он так не нравится, но вот про статистику не могу молчать.
> Ты чего. Избыточность английского ВЫШЕ. А правила русского > языка, кстати, гораздо сложнее английского. Это ты чего. Ссылка: http://libbb.by.ru/lecmatlog10.htm?extract=1110591938 (двойной поиск по странице слова "избуточность" приведёт к конкретным цифрам). Конечно, не самый авторитетный источник, но это к сожалению всё что удалось найти.
И правила английского языка ТРУДНЕЕ (я имею ввиду только фонетику - остальное в данном случае не важно, именно поэтому я и говорил об органах речи). Любую букву русского языка я могу прочитать только одним способом (то что в слове "молоко" слышится буква "а" не есть значительно для восприятия - можно читать и с буквой "о"). Единственное, согласные могут быть мягкими и твёрдыми, но как именно читать в каждом конкретном случае - опять же доподлинно известно (либо "ь/ъ" нам об этом говорит, либо идущая вслед за согласной составная гласная). Теперь вспомни сколько правил чтения приходится в английском языке на каждую отдельно взятую букву, да плюс к тому если ещё исключения посчитать..
> > Что же касается языков, то вообще-то избыточность АСМа > > значительно выше, чем избыточность Си, но это не > делает АСМ > > более "прозрачным". Имхо, для нормального чтения, > понимания > > Избыточность асма ГОРАЗДО ниже, чем C. И еще ниже, чем C++ Да, блин, как же это? По определению, если на пальцах, то избыточность - это количество текста, которое можно выкинуть без ущерба для информации.
Пример на Си:
a=b+c
То же самое на АСМе:
mov ax, a
add ax, b
mov c, ax
И это я ещё не указывал в коде конкретных типов. Просто сравните объёмы c учётом того, что смысл здесь один и тот же. А в экзешнике получится так вообще девять байтов.
> > и написания кода вполне достаточно различных скобок, > > комментариев и возможности вставлять неограниченное (в > > разумных пределах :-)) количество пробелов/переходов > на > > новую строку. Статическая типизация указателей уже > лишняя. > > Ага, для "hello, world"-а достаточно. А для больших > проектов не хватает уже и статической типизации. Ну, не только "hello, world" мне писать доводилось. Если уж ТАКАЯ НЕОБХОДИМОСТЬ жёстко задать тип указателя, кто мешает сделать это в его имени? Например как-то так:
int a;
ptr xxx_int=&a;
ptr - это я "ввёл" такой тип нетипизированного указателя.
> > > Однако бОльшая часть людей изучает и программирует в > > последствии не по Стандарту, а именно по Страуструпу. > К > > Если они вдруг прочитают в страуструпе чего то, не > согласующееся со стандартом - это исключительно их > проблемы. > > > тому же, как показывает практика, ведущие разработчики > ПО > > далеко не всегда к стандартам прислушиваются. Ну и как > уже > > Это проблемы разработчиков. Если ты найдешь место, которое > не согласуется со стандартом, ты имеешь полное право сидеть > и долбить этих разработчиков пока они не сделают так как > НУЖНО Да ладно. А то прям так сразу в Майкросовте кинутся исправлять все несоответствия. Всять хотя бы ситуацию с вэб-буилдингом. Каждый браузер по-своему уникален и плевать все хотели на W3C. Особенно если вспонить давнишнее противостояние MS и Netscape, когда два браузера отличались вообще ПРИНЦИПИАЛЬНО.
> > > заметил Den, если стандарт и будет меняться, то > обязательно > > с оглядкой на прошлые версии. > Как уже заметил я, чего делать с NULL-ом в комитете еще не > решили и в следующих версиях все может СИЛЬНО измениться. В этом самом комитете, я думаю, понимают, что если уж вводить стандарт, то делать это надо так, что бы люди не пострадали. Поэтому лично я не вижу поводов для опасения. Да и потом, даже если комитет и разрушит мой код, то что мне мешает сделать глобальную замену во всех моих проетах NULL'а на упомянутый уже (void *) 0? Это займёт от силы пол часа.
|
|
|