OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Среда, 26 Июль, 2017 19:39

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Критика С++
СообщениеДобавлено: Среда, 23 Ноябрь, 2016 18:12 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 947
Откуда: СССР v2.0 rc 1
Сидел, читал, и вот нашёл:https://ru.wikiversity.org/wiki/%D0%9A%D1%80%D0%B8%D1%82%D0%B8%D0%BA%D0%B0_C%2B%2B#.D0.9D.D0.B5.D1.84.D0.BE.D1.80.D0.BC.D0.B0.D0.BB.D1.8C.D0.BD.D0.B0.D1.8F_.D0.BA.D1.80.D0.B8.D1.82.D0.B8.D0.BA.D0.B0
Упоминаются Вирт, Шиперски, Дейкстра, Керниган, Торвальдс.
Короче, я угорал)))

Вообще, я искал релевантный ответ на вопрос "почему препроцессор -- зло". Но там эта тема, тоже малость затронута. Один из возможных ответов в этой статье:"Однако, само существование в спецификации языка препроцессора препятствует анализу исходных кодов программ (даже простому профилированию), а следовательно, и развитию функциональности интегрированных сред разработки, обеспечивающих поддержку разработки крупномасштабных]] ruen прикладных программ — из-за необходимости полного парсинга кода (на языке с неразрешимой грамматикой) с учётом возможности дублирования (не обязательно взаимозаменяемых) фрагментов[62][61][60][63]. Одной из основных функций, ради которых была придумана условная компиляция в Си, является повышение портируемости, но на практике именно портируемость она и снижает[62]."

Вот ещё вкусняшка:"Повышение быстродействия за счёт перевода управления памятью в ручной режим является заблуждением[72]."; "Ключевым свойством, гарантирующим небезопасность[93], является отсутствие и принципиальная невозможность реализации в С++ встроенного автоматического управления памятью"

"Для обеспечения безопасности мало статических проверок — безопасность в первую очередь является следствием простоты[80], так что сложность С++ сама по себе означает существенное снижение безопасности."

"Система проверки согласования типов С++ принимает программы, некорректность которых очевидна, за корректные, вызывая недоумение у сторонников статической типизации[97]. В дополнение, С++ предоставляет много способов вообще обойти систему типов, что приводит к внедрению ошибок, остающихся незамеченными до момента серьёзного отказа]] ruen"

А вот и возражения Кемету в давешней его аргументации по быстродействию:
"Более того, для ссылочно-прозрачных]] ruen языков возможен глобальный анализ потока управления, за счёт чего компилятор в принципе способен производить такие оптимизации программ, какие компилятор небезопасного языка в принципе не способен, что временами позволяет высокоуровневым языкам уверенно конкурировать в быстродействии с Си."

"Испытания показывают, что оптимизированная вручную реализация сборщика мусора средствами языка Си существенно отстаёт по эффективности от стандартного сборщика мусора, встроенного в язык[120][72][64], а в распределённых системах автоматическое выведение представления указателей компилятором высокоуровневого языка обеспечивает кратный прирост быстродействия по сравнению с решениями по их реализации, которые принимают живые программисты[121]."

"У С++ отсутствует то, что имеет большинство языков программирования — формальное определение грамматики[89]. С++ не проектировался как формальная система — вместо этого он рос и мутировал[89][143]. "

Вирт:"С++ — это нападение на человеческий мозг."

"Унаследованный от Си препроцессор предоставляет возможность буквально за минуту внедрить в гигантскую программу труднообнаружимую ошибку, приводящую к непредсказуемому поведению программы[60] (что принципиально невозможно на типобезопасных языках[264])."

Короче, тихий ужос. Мне жаль два месяца потраченных на изучение С++)))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Четверг, 24 Ноябрь, 2016 15:24 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 144
Цитата:
Короче, тихий ужос. Мне жаль два месяца потраченных на изучение С++)))))

Если после этого была сделана соответствующая запись в зачётке, то… ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Пятница, 25 Ноябрь, 2016 19:59 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 947
Откуда: СССР v2.0 rc 1
Моё программирование закончилось зимой на втором курсе института, экзамен зачтён автоматом.
Фортран-77 и GW-Basic. Как радиоинженер, занимаясь программированием, я давно перешагнул планку достаточности радиоинженеру))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Понедельник, 24 Июль, 2017 11:31 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 947
Откуда: СССР v2.0 rc 1
Зачётная статья на хабре по теме)) Илье понравится)
https://habrahabr.ru/post/333936/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Понедельник, 24 Июль, 2017 11:48 

Зарегистрирован: Пятница, 13 Март, 2015 16:40
Сообщения: 144
"IOCCC, International Obfuscated C Code Contest" и такое существует? Ж8-/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Понедельник, 24 Июль, 2017 14:45 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 413
Откуда: Киев
В этом одна из проблем. Недостатки языка являются точками отсчёта для всевозможной деятельности, как коммерческой, так и развлекательной, что в конечном итоге приводит к продвижению этих языков. И наоборот, простота и предсказуемость являются скучными и нерентабельными, а потому не способствуют продвижению.

Для Си есть конкурс поинтересней http://underhanded-c.org/, где предлагают нормально выглядящий код, но делающий не совсем то, что от него ожидают.

В принципе, конкурс 2-го типа мог бы быть полезен и для Oberon. Там есть, что копать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Среда, 26 Июль, 2017 11:30 
Аватара пользователя

Зарегистрирован: Воскресенье, 12 Апрель, 2015 18:12
Сообщения: 947
Откуда: СССР v2.0 rc 1
Ну, я правда сомневаюсь, что на Обероне можно сочинить конструкцию, которую можно трактовать как-то иначе.
Сам по себе язык обладает приличным запасом жёсткости внутри модуля. А межмодульное взаимодействие не менее жёстко регулируется (хотя динамика там гарантированно достаточная).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Критика С++
СообщениеДобавлено: Среда, 26 Июль, 2017 11:41 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 413
Откуда: Киев
Отнюдь, поведение при многих нештатных ситуациях не определены, а потому позволяют мутить воду. Посмотрите последний проведённый конкурс Unhandled C, там многие участники просто использовали значение неопределённости в double. Чем в этом плане Oberon отличается от C?
Конкурс для того и нужен, чтобы привлечь внимание и принять меры, а не ходить в розовых очках.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2017, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB