Вот некоторые люди, не будем показывать пальцем, любят строить свою картину мира (в последнем абзаце) по рекламным листовкам типа таких:
https://www.techbriefs.com/component/content/article/tb/techbriefs/aerospace/28025
Так вот, немного оторвавшись от разгребания нагенерированного MATLAB Coder’ом говна, скажу — все эти заявления про торжество «model-based design» на основе MATLAB — чистая реклама, к реальности имеющая очень опосредованное отношение. Для тех, кто не знает — MATLAB — это такой весьма кривой и уебищный язык программирования в комплекте с не менее кривой и уебищной IDE, имеющий, впрочем, ровно два достоинства:
- На нем легко и непринужденно пишутся всякие сложные вычислительные алгоритмы;
- И даже их писать не обязательно, потому что на любой случай в матлабе предусмотрен соответствующий Toolbox.
Так вот, что мы имеем в процессе «кодогенерации» из матлаба? Во-первых — генератор местами тупит и требует писать код с «грязными хаками» для учета его особенностей. Во-вторых — нагенерированный код страшен и уебищен с точки зрения человека (нет, пресловутой readability из матлабовской же рекламы там не пахнет). В третьих… Нет, если вам нравится копаться в коде вроде такого (нет, ошибок в нем нет) — я не могу вас винить:
i100500 = b_mxA->size[0] * b_mxA->size[1]; b_mxA->size[0] = b_mxB->size[0]; b_mxA->size[1] = b_mxB->size[1]; emxEnsureCapacity_creal_T(b_mxA, i100500);
Ругаться закончил.
А ведь я видел как примерно так же ругались на выхлоп avr-gcc ассемблерщики…
Массаракш. Только оторвался от создания чудовищного кода в Матлабе, зашел в ЖЖ, а тут…
Алсо, я примерно 7 лет ковыряюсь в Матлабе, и впервые вижу оператор «->». Что за черную магию ты там творишь?
А это не матлаб, это выхлоп MATLAB Coder — транслятора с матлаба в Си.