У меня для кода микроконтроллеров чисто "сишная" часть получалась раза в полтора больше по объёму. Сейчас бы, я бы смог сделать получше и было бы больше процентов на 20. Причём, _только_ из-за синтаксиса. Если бы не поленился с Template Haskell, то можно было бы сделать так же или близко к тому. В контексте видеокодеков — не знаю, неохота смотреть-вспоминать. Посмотрю пример ниже. Да и тебе тут виднее.
При управлении пачками шаговых двигателей по определённому нетривиальному сценарию, именно "мета" в смысле имитации высокоуровневых конструкций особенно и не была нужна, признаю. Для этого, надо сильно другую специфику. Зато, было запросто строить свой EDSL с хорошими такими гарантиями корректности. И это было очень проще, чем в сишечке. И работать с получившимся было проще. Что (не) получится упростить в кодеке, посмотрю.
Да, вот корректность - это то, в чем реально тут можно хорошо выиграть. В недавнем моем проекте-кодеке самые частые баги были - забыл счетчик инициализировать, забыл где надо увеличить или увеличил не на ту дельту.
no subject
Сейчас бы, я бы смог сделать получше и было бы больше процентов на 20. Причём, _только_ из-за синтаксиса.
Если бы не поленился с Template Haskell, то можно было бы сделать так же или близко к тому.
В контексте видеокодеков — не знаю, неохота смотреть-вспоминать. Посмотрю пример ниже. Да и тебе тут виднее.
При управлении пачками шаговых двигателей по определённому нетривиальному сценарию, именно "мета" в смысле имитации высокоуровневых конструкций особенно и не была нужна, признаю. Для этого, надо сильно другую специфику.
Зато, было запросто строить свой EDSL с хорошими такими гарантиями корректности. И это было очень проще, чем в сишечке. И работать с получившимся было проще.
Что (не) получится упростить в кодеке, посмотрю.
no subject