Евгений Музыченко (emuzychenko) wrote,
Евгений Музыченко
emuzychenko

Categories:

Плюсовый минимализм :)

В фидошке теоретики опять завели дискуссию о том, насколько код на C++ по сути своей тормозной и неуклюжий. :) Вспомнил пору своей юности, когда ничего слаще TC++ 2.0 еще не было, и когда я думал так же. :) Сейчас достал из загашника и окультурил три примерчика.

Один - примитивная программка мигания светодиодом для AVR (под WinAVR и ATTiny13). Это мне приспичило на шаблонах и наследуемых классах сделать управление выходными линиями - получилось развесисто и коряво, но g++ из этого делает точно такой же по объему и скорости код, как и из обычного сишного текста.

Второй и третий - минималистические (каждый EXE - 1024 байта) программки под Win32. Там их две: вывод "Hello, world!" на консоль, и отображение окна с простым встроенным редактором. Каждая - на C (в последовательном коде) и C++ (через наследуемые классы). Тут MSVC сделал тоже идентичный код, отличающийся только порядком некоторых команд.

Я в своих ядерных драйверах такими фишками развлекаюсь уже лет пятнадцать, последние несколько лет у меня там наворочены многуровневые виртуальные классы с перегрузками, а код по-прежнему генерится предельно компактный, ибо оптимизатор у MSVC очень даже неплохой.
Tags: идиоты, инструменты, искусство, компьютеры, криворукие, программирование, программы
Subscribe

  • Масочный режим

    Прилетели с семьей в Россию - из Женевы в Шереметьево, оттуда в Новосибирск. Первое, что бросилось в глаза - большое количество людей без масок, и…

  • Французские названия :)

    Французы, как и мы, не заморачиваются придумыванием специальных названий: у нас - кондитерская, булочная, сливочная, у них -…

  • Плывет клипер, на клипере - шкипер, у шкипера - ... :)

    Внезапно сдал экзамен на лицензию International Bareboat Skipper и VHF Radio Operator. :) Учился у Sail Band (стандартный 10-дневный курс) в…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments