Re[5]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: LaptevVV Россия  
Дата: 10.05.04 13:42
Оценка: -1
Здравствуйте, unintruder, Вы писали:

U>Послушай передачу Троицкий и Ф.М. Достоевский. Артемий предоставлял зрителям альбомы человека, который всю жизнь живет в Финляндии, в лесу, то что он делает надо слышать, или альбом индуса, датированный 1976 годом, электроная музыка "продиджи+Моби" в одном флаконе, саунд более чем современный. Они не профессионалы, в том смысле, как ты это понимаешь, но результат на лицо. Я хотел сказать, что это слишком категоричное заявление, вот если бы ты привел в пример бокс — любительский против профессионального, это наверное более близко выразило твою мысль.

Композиторы, панимаешь!!!!
Обрати внимание: в так называемых творческих профессиях много зависит от таланта. В программировании — совершенно не то положение. Программисты гораздо больше похожи на исполнителей. чем на композиторов. Даже самая творческая элита — архитекторы — должны МНОГО учиться. Просто наша область СИЛЬНО СПЕЦИФИЧЕСКАЯ.
Просто у меня под началом работали программисты-любители (без образования). Извините, но человек, имеющий даже то образование, которое есть, в целом пишет лучше — это мой опыт. Конечно, феномены есть во всякой области, но это все-таки исключение из правил. А вирт ведет речь о массовой подготовке ПРОФЕССИОНАЛОВ, а не про отдельную индивидуальную подготовку. Тут я с ним полнорстью согласен.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[6]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Kh_Oleg  
Дата: 10.05.04 13:49
Оценка: +1
Здравствуйте, bkat, Вы писали:

B>Что как раз иллюстрирует, что проблемы куда глубже,

B>чем ошибки, не выловленные компилятором.
Естественно!
Поэтому давайте займемся теми проблемами, которые компиляторы не умеют выявлять, а то, что они могут найти — пусть находят по полной, а не заставляют терять время в многочасовых code review.
Re[6]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.05.04 14:58
Оценка: +2 :)
Здравствуйте, bkat, Вы писали:

B>Но в реальной жизни на преодаление ограничений, накладываемые компилятором,

B>могут быть потрачены такие усилия, что вся надежность будет перечеркнута
B>и даже будет еще хуже.

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

B>Почему придется преодалевать эти ограничения? Да просто жизнь такая

B>Можно почитать форумы тут на RSDN и проследить, как много усилий тратиться на разные
B>хаки и трюки, которые, кстати говоря, очень часто вызывают восхищение и
B>считаются "красивыми" решениями.

Не те фору мы читаешь
... << RSDN@Home 1.1.3 beta 2 (mobile station) >>
AVK Blog
Re[2]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Зверёк Харьковский  
Дата: 10.05.04 15:44
Оценка: 108 (11) +6
Здравствуйте, LaptevVV, Вы писали:

LVV>Здравствуйте, LaptevVV, Вы писали:


LVV>>http://www.inr.ac.ru/~info21/greetings/wirth_doklad_rus.htm



LVV>

LVV>...и сами пали перед лицом самого недостойного из соперников — C.LVV>


Ревнители частоты языка часто нападают на С++. Они полагают, что высшее достижение современной цивилизации — язык, построенный исключительно из атомов и скобок. По мнению этих террористов от синтаксиса, если простую переменную с первого взгляда невозможно отличить от вызова функции или макроса — это вообще не язык, а шарлатанство для развлечения праздной толпы. К сожалению, теория расходится с практикой. В реальной жизни толпа платит лишь за то, чтобы видеть языки, в которых разные идеи выглядят по-разному. «Простые и последовательные» языки никогда не пользовались особым успехом за стенками академий, а языки с блочной структурой овладели массами. Стоит ли этому удивляться? Ведь компьютерные языки приходится изучать и запоминать, а для этого используется то же серое вещество, с помощью которого мы изучаем и запоминаем естественные языки. Попробуйте-ка назвать хотя бы один естественный язык без существительных, глаголов и скобок! Я бы не рискнул. Все наши познания в лингвистике говорят о том, что эти «плохие» особенности только ускоряют изучение компьютерного языка и делают его более понятным. i++ во всех отношениях действительно понятнее, чем i:=i+1, а x=17+29 читается лучше, нежели (setq(x(+17, 29)). Речь идет не о строении компьютерного языка, а скорее о нашем собственном строении. Все уродства С++ — это в основном наши уродства. Когда вы научитесь понимать и любить его странности, когда перестанете беспокоиться о математической стройности, будет сделан ваш первый шаг к достижению элегантности в С++.

(c) Элджер
FAQ — це мiй ай-кью!
Re: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Ka3a4oK  
Дата: 10.05.04 16:21
Оценка: +2
Здравствуйте, LaptevVV, Вы писали:

LVV>http://www.inr.ac.ru/~info21/greetings/wirth_doklad_rus.htm


Не пашет ссылка
Re[3]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Kh_Oleg  
Дата: 10.05.04 16:26
Оценка: +1 -5
Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>Ревнители частоты языка часто нападают на С++. Они полагают, что высшее достижение современной цивилизации — язык, построенный исключительно из атомов и скобок. По мнению этих террористов от синтаксиса, если простую переменную с первого взгляда невозможно отличить от вызова функции или макроса — это вообще не язык, а шарлатанство для развлечения праздной толпы. К сожалению, теория расходится с практикой. В реальной жизни толпа платит лишь за то, чтобы видеть языки, в которых разные идеи выглядят по-разному.


Если бы всегда решала толпа, то Земля бы до сих пор оставалась на трех китах!

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


Языки программирования приходится прежде всего читать. А для этого нужны именно простые и последовательные.

ЗХ>Попробуйте-ка назвать хотя бы один естественный язык без существительных, глаголов и скобок! Я бы не рискнул. Все наши познания в лингвистике говорят о том, что эти «плохие» особенности только ускоряют изучение компьютерного языка и делают его более понятным. i++ во всех отношениях действительно понятнее, чем i:=i+1,


Уверен? А если i — это указатель на структуру? Так уж прям и понятно, что при этом произойдет!

ЗХ>а x=17+29 читается лучше, нежели (setq(x(+17, 29)). Речь идет не о строении компьютерного языка, а скорее о нашем собственном строении. Все уродства С++ — это в основном наши уродства. Когда вы научитесь понимать и любить его странности, когда перестанете беспокоиться о математической стройности, будет сделан ваш первый шаг к достижению элегантности в С++.

...когда перестанете заботиться о читабельности, надежности и простоте ваших программ, вот тогда вы сможете сказать, что дейстивтельно изучили С++.
Re[4]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: bkat  
Дата: 10.05.04 16:31
Оценка: +2
Здравствуйте, Kh_Oleg, Вы писали:

ЗХ>>Попробуйте-ка назвать хотя бы один естественный язык без существительных, глаголов и скобок! Я бы не рискнул. Все наши познания в лингвистике говорят о том, что эти «плохие» особенности только ускоряют изучение компьютерного языка и делают его более понятным. i++ во всех отношениях действительно понятнее, чем i:=i+1,


K_O>Уверен? А если i — это указатель на структуру? Так уж прям и понятно, что при этом произойдет!


Ну тогда вообще надо предать анафеме идею полиморфизма.
Ато привыкли, понимаешь, символ + и для сложения int и double ипользовать.
Некоторые извращенцы перегружают + для строк и пытаются
таким образом конкатенировать строки
Re[5]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Kh_Oleg  
Дата: 10.05.04 16:59
Оценка:
Здравствуйте, bkat, Вы писали:

B>Здравствуйте, Kh_Oleg, Вы писали:


ЗХ>>>Попробуйте-ка назвать хотя бы один естественный язык без существительных, глаголов и скобок! Я бы не рискнул. Все наши познания в лингвистике говорят о том, что эти «плохие» особенности только ускоряют изучение компьютерного языка и делают его более понятным. i++ во всех отношениях действительно понятнее, чем i:=i+1,


K_O>>Уверен? А если i — это указатель на структуру? Так уж прям и понятно, что при этом произойдет!


B>Ну тогда вообще надо предать анафеме идею полиморфизма.

B>Ато привыкли, понимаешь, символ + и для сложения int и double ипользовать.
B>Некоторые извращенцы перегружают + для строк и пытаются
B>таким образом конкатенировать строки

Не надо впадать в крайности. "+" — это символ сложения. В повседеневной жизни мы обычно складываем числа.
А вот "++" — это операция инкремента. Еще нужно объяснять, что это за операция такая, и что для чисел она означает увеличение на единицу. Ну а перегрузка операторов — это вообще из серии "некоторое действие, которое выглядит как сложение, но делает то, что знаю только я!"
Re[5]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: SWW Россия  
Дата: 10.05.04 18:16
Оценка: 1 (1) +1
K_O>И здесь компилятор С++ заведомо проигрывает именно из-за невероятной сложности самого языка. И проще его сделать нельзя — стандрат однако!

Господа, вы как-то незаметно переместились с С на С++. Компилятор мог пропустить ошибку на С — как раз из-за его простоты. А С++ — да, сложный язык, но как раз благодаря этому его защищенность намногу выше, чем у Паскаля, что меня иногда даже раздражает. Особенно в этом преуспела STL — ее разработчики прямо-таки помешались на "безопасности". (слово-то какое — сразу вспоминаешь борьбу с терроризмом)

Так что давайте отделим мух от котлет и не будем путать С и С++ (а то, что у них одинаково пишется оператор сравнения вряд ли может быть причиной взрыва ракеты)
Re[2]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: SWW Россия  
Дата: 10.05.04 18:31
Оценка: 9 (1) +3 -2
LVV> Я вижу в своем воображении образцовый учебник в качестве подходящего исходного пункта. Он должен удовлетворять следующим критериям:

LVV>Начинаться сжатым введением в основные понятия программного проектирования.

LVV>Использовать лаконичную формальную нотацию, строго определенную не более чем на примерно 20 страницах.
<...>

Глупости. Это был бы худший учебник, какой только можно придумать. Он был бы понятен только тому, кто уже знает язык.
Практика же показывает, что лучший учебник — это Керниган-Ритчи, который безо всяких формальных нотаций с первой же страницы предлагает писать простую программу.
Re[2]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: SWW Россия  
Дата: 10.05.04 18:33
Оценка:
A>кроме того, излишнее погружение в формальную сторону программирования (нотации и т.п.) — это тоже излишество, т.к. эта штука способна напугать многих школьников, которым интересно писать программы, но не интересно читать

Re[6]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Vadim B  
Дата: 10.05.04 18:42
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Да, еще в 70-е годы все учебники про технологии программирования обошла знаменитая ошибка в программе на фортране, из-за которой тоже взорвалась ракета, стартовавшая с мыса Кеннеди. В Фортране можно было писать идентификаторы с пробелами (!!!!). Это приводило к таким супер-ляпам:


LVV>
LVV>do i=1,100      // это оператор цикла
LVV>do i=1.100      // это - оператор присваивания
LVV>

LVV>Оба — правильные операторы на фортране.

Ну, вообще говоря, на том фортране (70-х годов) первое не было оператором цикла. Надо было написать что-нибудь типа
do 10 i=1,100

где 10 — метка последнего оператора цикла.
Но сути сообщения это, конечно, не меняет .
Re[3]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Kh_Oleg  
Дата: 10.05.04 18:49
Оценка: +1
Здравствуйте, SWW, Вы писали:

LVV>> Я вижу в своем воображении образцовый учебник в качестве подходящего исходного пункта. Он должен удовлетворять следующим критериям:


LVV>>Начинаться сжатым введением в основные понятия программного проектирования.

LVV>>Использовать лаконичную формальную нотацию, строго определенную не более чем на примерно 20 страницах.
SWW><...>

SWW>Глупости. Это был бы худший учебник, какой только можно придумать. Он был бы понятен только тому, кто уже знает язык.

SWW>Практика же показывает, что лучший учебник — это Керниган-Ритчи, который безо всяких формальных нотаций с первой же страницы предлагает писать простую программу.
Только обучение по такому учебнику сродни обучению игры на фортепиано двумя пальцами — быстрый прогресс вначале и ступор при попытке сыграть что-либо серьезное.
Re[2]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.05.04 19:38
Оценка: 27 (2) +2 -1 :)))
Здравствуйте, LaptevVV, Вы писали:

LVV>

LVV>и принуждая всех писать x = = y вместо обычного x = y.

LVV>Класссс!!!!!

Я конечно все понимаю, но докапаться до == и = не достойно серьезного человека. Ссылка твоя не работат, ты хоть бы назвал бы имя товарища, я в будущем относился к его словам с осторожностью.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.05.04 19:38
Оценка:
Здравствуйте, Зверёк Харьковский, Вы писали:

Вообще-то в посте Лаптева о кривости С в области нарушений правил безпастного программирования говорилось, а ты в качестве (видимо) контр-примера привел раезд на функциональные языки. Получается разговор глухого со слепым.
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.05.04 19:38
Оценка:
Здравствуйте, Kh_Oleg, Вы писали:

K_O>

K_O>Взрыв 4 июня 1996 г. ракеты Ариан-5, стоившей пол-миллиарда долларов, имел причиной программную ошибку, которую компилятор Оберона/Компонентного Паскаля просто не пропустил бы.


А вот интересно как можно определить от чего взарвалась ракета если ее бортовой компьютер был уничтожен взрывом?
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: AVM Россия  
Дата: 10.05.04 19:47
Оценка: +1
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Kh_Oleg, Вы писали:


K_O>>

K_O>>Взрыв 4 июня 1996 г. ракеты Ариан-5, стоившей пол-миллиарда долларов, имел причиной программную ошибку, которую компилятор Оберона/Компонентного Паскаля просто не пропустил бы.


VD>А вот интересно как можно определить от чего взарвалась ракета если ее бортовой компьютер был уничтожен взрывом?

Обычно, все "логи" дублируются на Землю через телеметрию
Re[3]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.05.04 19:57
Оценка: :)
Здравствуйте, VladD2, Вы писали:

VD>ты хоть бы назвал бы имя товарища, я в будущем относился к его словам с осторожностью.


Н.Вирт
... << RSDN@Home 1.1.3 beta 2 (mobile station) >>
AVK Blog
Re[5]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: VladD2 Российская Империя www.nemerle.org
Дата: 10.05.04 20:12
Оценка:
Здравствуйте, AVM, Вы писали:

AVM>Обычно, все "логи" дублируются на Землю через телеметрию


И как ты себе видишь логирование действий процессора? Это ж каую нужно информацию передавать и чем?

ЗЫ

В сообщении раядом есть ссылка на теру где сказано, что они сделали эмуляцию полета на компьютере. Т.е. по русски говоря написали полноценные тесты, тольк сделали они это после попытки ввода в эксплуатацию. А в их деле если с первого раза спутник не запустился, значит спутниковый спорт не для них...
... << RSDN@Home 1.1.3 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: Читать всем!!!! ОБЯЗАТЕЛЬНО!!!!
От: Дм.Григорьев  
Дата: 10.05.04 21:27
Оценка: -2
Здравствуйте, Kh_Oleg, Вы писали:

K_O>Ну а перегрузка операторов — это вообще из серии "некоторое действие, которое выглядит как сложение, но делает то, что знаю только я!"


Во-во!!! В этом смысле i=i+1 ничуть не лучше и не хуже, чем i++. Это уже проблема семантики, но корень ее — в слишком фривольном синтаксисе. Без базару, C++ — очень красивый и очень выразительный язык, но какова цена! Перегрузка операторов — это частный случай запредельной фривольности C/C++ в части преобразований типов и арифметики. Если, скажем, запретить в C++ для обхода массивов пользоваться чем бы то ни было, кроме STL-итераторов, а в самих итераторах заменить operator++() на next(), читабельность кода только улучшится.

Пусть бросит в меня камень тот, кто ни разу не ошибался с диапазонами массивов и величинами инкремента указателей, забыв про тип этих указателей. И кто ни разу не копался в исходниках, написанных другим (квалифицированным, ответственным) программистом. Это свобода на грани анархии. Вспоминаю свои ощущения в процессе изучения Java после нескольких лет юзанья C++: просто счастье, что есть автоматические финалайзеры, есть сборщик мусора, зато нет перегрузки операторов и нет множественного наследования. Все просто, строго и красиво, программеры с шаловливыми руками — руки за спину!
http://dimgel.ru/lib.web — thin, stateless, strictly typed Scala web framework.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.