OberonCore https://forum.oberoncore.ru/ |
|
О популярности ООП в лице C++ https://forum.oberoncore.ru/viewtopic.php?f=27&t=1779 |
Страница 1 из 2 |
Автор: | Илья Ермаков [ Пятница, 21 Август, 2009 20:09 ] |
Заголовок сообщения: | О популярности ООП в лице C++ |
dvuugl писал(а): P.S. К слову, о популярности ООП в лице C++. В свободном п.о. на С приходится 40% кода, а на С++ до сих пор, не смотря на мощнейший пиар, только 13%. Если верить этой статистике. Так что если над человеком не стоят с дубиной.. ![]() Да, именно так. С - вполне себе язык. Дитя конкретных условий (ОС на PDP) для конкретных задач. С++ - бред воспалённого сознания, не понимающего ни законов проектирования формальных систем, ни законов инженерных (из которых первый - "Принцип Калашникова" (С) Инфо21). Если брать Оберон, то он по своей роли и положению как раз может быть назван "Си-Юниксом 89-го года". Его вообще в штыки принимают и многие недалёкие сишники (за налагаемую дисциплину и "паскалёвость"), и наоборот - всякого рода высокоуровщики (как раз за "низкоуровневость", хотя эта прозрачность, близость к физическому исполнению при полном его абстрагировании и герметичности - уникальное качество). А вот к сурьёзным юниксоидам Оберон вполне близок по духу, что и в общении с таковыми не раз проверялось. Plan-9, Inferno-Limbo (построен с опорой на Оберон)... Хотя они могут и отмахиваться "ну да, но мы-то и на Си..." - тут уже должен работать аргумент "мало ли что вы, а сколько непрограммистов, и скольких ещё учить надо". |
Автор: | Евгений Темиргалеев [ Суббота, 22 Август, 2009 11:46 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Вынесено. Инициирующее сообщение: viewtopic.php?p=33390#p33390 P.S. Если что, братцы, без фанатизму... а то придётся в отвлеченные переезжать... |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 12:48 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
На самом деле сторонникам С но противникам С++ в последнем больше всего не нравится более строгая система типов -- необходимость явного приведения типов. Ибо от этого уйти нельзя в С++, даже если его дополнительными высокоуровневыми возможностями и не пользоваться. Поэтому процветает симбиоз С + например Perl, или C + Python -- чтобы не заморачиваться с типами ни на низком уровне ни на высоком. |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 13:07 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Один из важных аргументов - язык столь сложен, что надёжного компилятора нет в природе и наивно ожидать, что будет (особенно при дальнейшем маразме новых стандартов). Тем не менее, в России в некоторых "очень специальных" вещах используют С++ (компилятор от "Интерстрона", либо нек. другие реализации). Однако "С++-снусность" вроде больше в вычислительных частях. Тот же реалтайм поверх юниксоподобной системы - там обычного С за глаза. |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 13:18 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Илья Ермаков писал(а): Один из важных аргументов - язык столь сложен, что надёжного компилятора нет в природе и наивно ожидать, что будет (особенно при дальнейшем маразме новых стандартов). Такой аргументации от сишников я не слышал. Да и в Си-подобном подмножестве С++ всё ну никак не сложнее чем в самом Си. И никто не заставляет использовать всё остальное. У сишников основные притензии именно к оному си-подобному подмножеству С++. Ибо более строгая типизация. Уже не напишешь так просто: Код: void foo(void* some) { int* n = some; } компилятор выдаст ошибку. И подобных "мелочей" просто море. |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 13:24 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Alexey Veselovsky писал(а): Илья Ермаков писал(а): Один из важных аргументов - язык столь сложен, что надёжного компилятора нет в природе и наивно ожидать, что будет (особенно при дальнейшем маразме новых стандартов). Такой аргументации от сишников я не слышал. Так заявил Торвальдс, когда спросили, когда в ядре начнёт использоваться С++ ) Его ответ был что-то типа "когда будет компилятор С++". ![]() Танненбаум тоже не станет использовать ++ по причине понимания ненормальности инструмента ![]() |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 13:36 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Илья Ермаков писал(а): Так заявил Торвальдс, когда спросили, когда в ядре начнёт использоваться С++ ) Его ответ был что-то типа "когда будет компилятор С++". ![]() Более того, Торвальдс и Си не хочет использовать. Он явно хочет использовть диалект Си который бы удовлетворял не ISO/IEC 9899:1990 а неким "понятиям" из головы самого Торвальдса. Цитата: Танненбаум тоже не станет использовать ++ по причине понимания ненормальности инструмента ![]() Оберон он тоже почему то не использует, не по той же ли причине? ![]() |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 13:52 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
По той причине, что у него всё прекрасно получается и на Си. Зачем конкретно ему Оберон? ![]() Оберон вытекает либо из "неберущихся" задач, либо из соображений масштаба пошире, чем один профессионал-одна фирма и подольше, чем один-два года... |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 14:03 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Илья Ермаков писал(а): По той причине, что у него всё прекрасно получается и на Си. Зачем конкретно ему Оберон? ![]() Вот поэтому же там и С++ не используется, ибо "а зачем, когда и так хорошо?". Тем более что промышленно эксплуатируемые ОС писаные на С++ таки есть. Между прочим существует тенденция (в тех же свободных проектах) перевода Сишных программ на С++. Пример: squid. Илья Ермаков писал(а): Оберон вытекает либо из "неберущихся" задач, либо из соображений масштаба пошире, чем один профессионал-одна фирма и подольше, чем один-два года... Гм. Примеры не приведете ли? Ибо у меня лично сложилоь строго обратное впечатление. Кстати, а кто тут пользуется именно что Обероном (пусть даже Обероном-2)? |
Автор: | Александр Ильин [ Суббота, 22 Август, 2009 14:09 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Alexey Veselovsky писал(а): Кстати, а кто тут пользуется именно что Обероном (пусть даже Обероном-2)? Я тут пользуюсь Обероном-2. И Димыч, который AGG портирует, насколько я понимаю, тоже им пользуется.
|
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 14:19 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Да, про вас я помнил. |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 14:20 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Я под Обероном имею в виду семейство (и личное моё мнение - КП, по факту, флагман). |
Автор: | Geniepro [ Суббота, 22 Август, 2009 14:26 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Однако на С++ были таки написаны BeOS (должен был стать наследником MacOS и Next) и большинство версий микроядер семейства L4... |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 14:30 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Alexey Veselovsky писал(а): Илья Ермаков писал(а): По той причине, что у него всё прекрасно получается и на Си. Зачем конкретно ему Оберон? ![]() Вот поэтому же там и С++ не используется, ибо "а зачем, когда и так хорошо?". Тем более что промышленно эксплуатируемые ОС писаные на С++ таки есть. Нет, тут рассуждения, у дальновидного спеца, должны быть совершенно разными. Уйти на С++ - это завязаться на неподконтрольный инструмент. Скорее всего, на частную реализацию (потому что для тех же спец. проектов альтернативы нет тому же "Интерстрону"). Воспроизвести самому - даже думать смешно. Использовать же что С, что Обероны - это безопасно, в плане контроля инструмента. Всё зависит только от тебя самого. Цитата: Илья Ермаков писал(а): Оберон вытекает либо из "неберущихся" задач, либо из соображений масштаба пошире, чем один профессионал-одна фирма и подольше, чем один-два года... Гм. Примеры не приведете ли? Ибо у меня лично сложилоь строго обратное впечатление. Я имею в виду, например, проблему подготовки кадров. Ещё шире, к примеру, - проблему подготовки кадров для программирования нового типа в масштабах целой страны. (Под новым типом я понимаю решение задач под рано или поздно сформирующийся реальный сектор; решение задач, оппозиционных Cloud-Computing и т.п. исходящего от МС-Гугл...) А "неберущиеся задачи" - это те, которые требуют именно пересечения хороших средств абстракции, динамики и безопасности с сишной прозрачностью до оборудования. Задачи написания традиционной POSIX ОС к таким как раз не относятся. При грамотной архитектуре, микроядре и аппаратной защите они вполне себе решаются на Си. |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 14:31 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Geniepro писал(а): Однако на С++ были таки написаны BeOS (должен был стать наследником MacOS и Next) и большинство версий микроядер семейства L4... BeOS -> Haiku. С++. Последнее живо, здорово и в сентябре будет таки релиз. Лицензия -- MIT. Но вы забыли одну сверхпопулярную ОС (по распространенности сравнима с Windows): Symbian. Писано целиком на С++, система реального времени. |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 14:45 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Кстати, говорят, что программировать под Симбиан не очень продуктивно. Цитата: Между прочим существует тенденция (в тех же свободных проектах) перевода Сишных программ на С++. Пример: squid Для того, чтобы завелась тенденция, обычно достаточно, чтобы кому-то just for fun стукнула некая жидкость в голову ![]() ![]() |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 15:01 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Илья Ермаков писал(а): Кстати, говорят, что программировать под Симбиан не очень продуктивно. Я под него пишу ![]() Но это собственно проблема в API, а не в ОС/ядре. И проблема довольно успешно решается нокией. Новые API весьма человечны и начиная с 9.4 всё это идет искаропки. Илья Ермаков писал(а): Для того, чтобы завелась тенденция, обычно достаточно, чтобы кому-то just for fun стукнула некая жидкость в голову ![]() ![]() Похоже вы не очень понимаете что движит разработку того же squid'a. Это ни разу не just for fan. Работает группа разработчиков, есть заказчики которые оплачивают те или иные изменение в продукте. У разных разработчиков разные заказчики естественно. Просто так just for fun никто перетаскивать squid на c++ не стал бы (кода там порядка 150 тыс. строк). Сил на это требуется много и никто за это не заплатит, ибо заказчикам всё равно на чем оно писано, им нужно чтобы оно работало, и работало так как им нужно. Перевод squid на с++ позволил например добавить поддержку ICAP'a и ряда других фич, за счет того что код стал более структурированый, стала лучше архитектура, система стала более обозримой. Меньше кода, больше смысла. Собственно я какое-то время работал над squid'ом. Поэтому всю эту кухню весьма неплохо знаю. Собственно основные свободные проекты разрабатываются также. Есть заказчики использующие этот продукт, есть разработчики. Вполне себе товарно-денежные отношения. |
Автор: | Илья Ермаков [ Суббота, 22 Август, 2009 15:07 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Цитата: Похоже вы не очень понимаете что движит разработку того же squid'a. Это ни разу не just for fan. Я не имел в виду сам проект Сквида. Я говорил исключительно про "тенденцию перевода на С++". Ну, положим, требуют заказчики - тогда причиной был "прилив жидкости" у заказчиков. Ну, положим, решили улучшить структуру проекта - опять же, миф, что С++ этому поможет ![]() Цитата: Собственно основные свободные проекты разрабатываются также. Есть заказчики использующие этот продукт, есть разработчики. Вполне себе товарно-денежные отношения. Это понятно. Однако некоторая система мифов пронизывает эти отношения начиная от заказчиков, и решения часто принимаются не на основе анализа, а просто потому что "все". |
Автор: | Info21 [ Суббота, 22 Август, 2009 15:14 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
Илья Ермаков писал(а): Alexey Veselovsky писал(а): Илья Ермаков писал(а): Один из важных аргументов - язык столь сложен, что надёжного компилятора нет в природе и наивно ожидать, что будет (особенно при дальнейшем маразме новых стандартов). Такой аргументации от сишников я не слышал. ![]() Вот что заявил Торвальдс: Linux: C++ In The Kernel? http://kerneltrap.org/node/2067 .. Linux creator Linus Torvalds: "In fact, in Linux we did try C++ once already, back in 1992. It sucks. Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA. "The fact is, C++ compilers are not trustworthy. They were even worse in 1992, but some fundamental facts haven't changed: 1) the whole C++ exception handling thing is fundamentally broken. It's _especially_ broken for kernels. 2) any compiler or language that likes to hide things like memory allocations behind your back just isn't a good choice for a kernel. 3) you can write object-oriented code (useful for filesystems etc) in C, _without_ the crap that is C++." |
Автор: | Alexey Veselovsky [ Суббота, 22 Август, 2009 15:39 ] |
Заголовок сообщения: | Re: О популярности ООП в лице C++ |
А если учесть что C++ в 1992 году по факту как такового ещё небыло... ![]() Действительно в 92 году было кто в лес кто по дрова. Стандарта то нету! Так что по факту тогда компиляторов для С++ действительно небыло, как и самого языка. |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |