Как стать автором
Обновить

Комментарии 13

Нуу, так уж и портит… Я в статье сам отметил, что дефайны не гуд, но в данном кейсе он упрощает настройку пользователю.
Это микроконтроллеры. Скорее всего даже исключения поддержать не смогут. Не факт, что STL доступен. Вы ещё вызовы в джаву вставить предложите. И хром туда встроить чтобы запросы в интернет делал.
Вы бы прошли по ссылке и посмотрели что это вообще такое и что генерит компилятор при использовании boost sml для MK. (https://godbolt.org/z/Y983h4)
У вас был опыт поднять boost::sml на МК? Моя предыдущая статья почти об этом. Я там пробовал как раз альтернативу sml от чародея из Яндекса — отъела сразу 200Кб + typeid + exceptions. Для МК это перебор. Предполагаю, что у boost::sml будет схожий результат. Если ошибаюсь, поправьте меня.

Смл… я рантайм выкидывал и самостоятельно лайт внрсию делал, иначе не лезло.

У меня опыта не было, но сам интерфейс FSM, как по мне, у boost sml удачный — логика не размазана по коду, нет define-ов, комилятор генерит хорошо оптимизированный код.
Вы случайно не аналог ladder logic изобрели? На котором станки уже лет 50 как работают.

Ох уже эта странное любовь заказчиков к чистым сям. Не понимают, но требуют, аж бесит.

Их можно понять, Си в умелых руках — напалм. Вот только лучше компилятора умеют писать единицы, а грамотный плюсовой код даст ассемблерный выхлоп подчас эффективнее, чем на Си. Не уверен, что мне это удалось, но стараться надо — камни становятся мощнее/ жирнее, программы сложнее и уже нужен новый уровень абстракции.

Я бы даже сказал, дело не в производительности. Как раз плюсовой код вполне может быть и чуток медленнее. В плюсах главная фишка это наглядность и масштабируемость.

Про наглядность временами очень даже можно поспорить. Но по скорости вполне себе не медленней Си. Нюанс в том, что без оптимизатора С++ можно сказать и не С++ вообще. А с оптимизатором бывает адово прорываться через терни к звёздам во время отладки.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории