незваный гость писал(а):
Для меня важнее другие аспекты языка: (1) Наличие компилятора для моего процессора для меня существенно важнее переносимости программ.
Ну это подразумевается, на мой взгляд... О какой переносимости может идти речь, если под целевую систему нет компилятора?
незваный гость писал(а):
Наличие людей, знающих язык и имеющих опыт работы с ним. И им Modula-2 не удовлетворяет.
Как и 90% остальных языков кроме Си и Паскаля
.
незваный гость писал(а):
Нельзя жить в обществе и быть свободным от общества. Точно так же нельзя работать в компании, которая Вам не принадлежит, и иметь полную свободу выбора языка. Но считать его приличным? Извините!
К счастью для меня, я имею полную свободу в выборе языка (пока). Но это частный случай.
А приличным Си я тоже уже давно перестал считать. Просто особой альтернативы (по приведенным Вами же аргументам) нет для моих задач.
Но именно благодаря его (Си) "неприличности" и возможны всякие неочевидный конструкции, которым посвящена данная тема.
незваный гость писал(а):
...я предлагал более простой тест: написать программу копирования строки...
А использовать библиотечные функции можно было?
незваный гость писал(а):
дальше было интересно — как человек реагирует на вопросы типа переполнения буфера и т.п.
Кстати, я вот тоже на этом месте задумался: а как должна реагировать функция копирования строки на переполнение целевого массива? Она либо о его длине ничего не знает, либо копирует
байтов,
передается ей как аргумент... Разве возможны другие варианты?
Или Вы имели ввиду, что в функции копирования строки должен создаваться промежуточный буфер и т.п.?
незваный гость писал(а):
В общем, тест себя оправдал (на мой взгляд)
Да, хорошее тестирование. А еще я встречал в одной компании следующий тест: определить, в какую сторону (уменьшается или увеличивается) изменяется адрес верхушки стека в некоторой неизвестной архитектуре, на которой будет запущена тестовая программа. Но все конечно крутится вокруг указателей...
незваный гость писал(а):
Post scriptum: наши точки зрения, видимо, очень близки там, где дело доходит до принятия практических решений. А оценка приличный/неприличный — да ну её.
Полностью согласен! Споры в данном вопросе - бесконечны
.
Кстати, хотел еще спросить:
незваный гость писал(а):
Например, потому, что уже к середине 70х было общеизвестно, что рамочной структуре программы должен соответствовать синтаксис языка, а не костыли фигурных скобок,
которые все забывают.
Рамочная структура - я так понимаю структура с вложенными блоками?
Чем плохи фигурные скобки?
И как принципиально можно их избежать? (ясно что begin... end - это то же самое).
Мне кажется, следующее упражнение будет довольно близко к содержанию темы:
Если мне не изменяет память, то кто-то когда-то высказал полушуточное мнение, что язык программирования только тогда может называться языком программирования, когда на нем возможно написание программы, печатающей свой собственный текст.
Найти в интернете такую программу на Си не представляется сложным. Гораздо интереснее попробовать придумать ее самому. Кто возьмется?