История изменений
Исправление KivApple, (текущая версия) :
STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.
Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).
Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.
Vala кажется подходящим вариантом, но как выпилить из него все зависимости от сторонних библиотек. Мне на самом деле мало надо - только наследование структур и виртуальные методы для них. Никаких исключений, множественного наследования и т. д.
Исправление KivApple, :
STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.
Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).
Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.
Vala кажется подходящим вариантом, но как выпилить из него все зависимости от сторонних библиотек. Мне на самом деле мало надо - только наследование структур и виртуальные методы для них.
Исходная версия KivApple, :
STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.
Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).
Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.