Comments 16
Безотносительно статьи, я правильно понимаю, что на КДПВ котик взламывает комп, бесконтактно передавая сигналы из лапы в клавиатуру и потом передавая полученные данные через хвост куда-то ещё?
И чем это лучше обычных плюсов?
И чем это лучше обычных плюсов?
Насколько я понимаю, основное преимущество C (с точки зрения разработчиков gtk+), над остальными языками это ABI.
C C++ проблема даже использовать библиотеку скомпилированную одним компилятором,
из библиотеки/программы собранной другим компилятором C++. А чего уж говорить о взаимодействии с другими языками программирования.
Сорри, у меня легкая степень PTSD, я писал плагины для GStreamer-а пару лет назад, до сих пор рябит перед глазами.
GStreamer плагины на нем хорошо пишутся, исходного кода раза в четыре меньше.
Да лучше уж С-шные обертки экспортировать, чем этот ужас.
А как сделать-то? Захочешь например чтобы могли наследовать объекты в других языках и вот вместо наследования C++:
struct Derive { struct Base base; };
захочешь чтобы виртуальные функции могли переопределять в других языках и вместо virtual у тебя указатели на функции, вместо неявного this передается
явно указатель на структуру, и сколько c++ от c++ останется?
Что касается Vala, тут вы сравниваете совершенно разнородные сущности. У Vala вполне конкретная ниша — прикладные десктопные приложения, в первую очередь для GNOME и GTK-based окружений. У Vala очень простой и дружелюбный синтаксис, обширная стандартная библиотека, делающая построение десктопных приложений простым и приятным процессом. Вне этой ниши использовать Vala большого смысла нет, в общем-то. Это не конкурент C++, скорее, его можно сравнивать со Swift — язык конкретный платформы и фреймворков.
GObject: основы