Autor Beitrag
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Di 23.08.16 18:18 
Hallo,

für eine Bibliothek mit COM-artigem interface (keine Automation/OLE, aber alle Objekte implementieren IUnknown) würde ich die Header gern in IDL schreiben, damit man das einfacher in andere Sprachen kompilieren kann.

Ich brauche dabei Interfaces mit Methoden (keine Properties), (globale) Konstanten, Enums mit bestimmter Byte-Größe ($PACKENUMSIZE) und records (und idealerweise sowas wie #include).

Welchen Dialekt sollte ma da nehmen? MIDL ist durch MS verbreitet und es gibt mit WIDL einen freien compiler, aber ist irgendwie etwas aufgeblasen und da ich nie Typelibs brauchen werde macht das irgendwie keinen Sinn. Mozillas XPIDL gefällt mir da schon besser, zumal XPCOM eigentlich genau das ist was ich abbilden will. Aber für welche Sprachen außer C++ gibts da compiler?

Wichtiger aber eigentlich: welche Tools nimmt man dann dafür? Die IDL2pas.jar von Borland (naja, Inprise) von Visibroker funktioniert ja nur für diesen schmalen Dialekt, und das Lazarus idlparser-Projekt sieht auch eher tot (und limitiert) aus, obwohl das immerhin auf XPCOM zielt und der Parser ganz gut aufgebaut ist (müsste man aber wohl erstmal weiterbauen). Also eigentlich alles nix.

Aktuell habe ich da ein selbstgebasteltes Programm für dass effektiv XSLT spielt, aber das möchte ich eigentlich nicht für alle Sprachen warten müssen. Was fertiges wär da schon besser.

Hat jemand da gute Ideen?

Viele Grüße,

Sebastian

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."