Pidl - an IDL for GObject boilerplate and language bindings
Christian Berentsen <[email protected]> Tue, 12 Feb 2008 16:18:37 +0100
| Newsgroups | gmane.comp.gnome.gtk+.devel.general,gmane.comp.gnome.language-bindings |
|---|---|
| Organization | tandberg |
| Message-ID | <[email protected]> |
https://launchpad.net/pidl Pidl is an Interface Description Language for GObject C-code with automatic language bindings. The programmer mainly writes '.pidl' files and implementation in C. Much GObject boilerplate is hidden. Language bindings are automatically generated. (Currently for Python, C++ and C#) As we are developing a product relying heavily on GObject, we came to the conclusion that the risk of having every developer handling boilerplate code could become a big maintenance headache. Pidl is still in its infancy and is being evolved on a day to day basis. The system is developed in TDD fashion, with test coverage in Python. Could this be interesting for anybody else writing GObject based software? Current feature summary: Emits C++, Python and C# (and GObject front stubs in C) Supports classes, interfaces, properties, methods, and signals. Supports implementing interfaces in C++ and C# (not yet Python) Enums Errors/Exceptions on methods marked as throwing. (GError marshalled to language exceptions, modelled after dbus-glib) Weak references (Properties only) Inheritance and more. -- Jarl Christian Berentsen Ole Andre Vadla Ravnaas (Pidl core monkeys)