March 04, 2005 D Libraries and binary compatibility | ||||
---|---|---|---|---|
| ||||
I guess D also wants to support libraries written in D, of course exporting D language bindings (with classes and all). How does D do this? I hope it doesn't like C++, because there you have a big mess. I.e. you must be very careful in modifying existing classes to not to break binary compatibility to earlier versions of a library. Look on this: http://2f.ru/holy-wars/fbc.html Please note what braindead tricks these poor C++ developers have to do to keep it upwards compatible. I think these reserved virtual functions are especially funny... Now, with D this could get even worser, since the D manual says: > The D compiler is free to rearrange the order of fields in a class to > optimally pack them in an implementation-defined manner. So D libraries couldn't get ever compatible to anything, since the concrete layout could even depend from compiler switches. How is this solved? Is it solved at all? Btw: I also saw there seem to be "import modules". Hm, look like header files. My proposal would be to generate these modules from the library binaries, or better: let the compiler access these binaries instead of parsing the import module. Vincent |
March 05, 2005 Re: D Libraries and binary compatibility | ||||
---|---|---|---|---|
| ||||
Posted in reply to Vincent Lang | I think this is very important and convenient for developers. "Vincent Lang" <jvjgh@web.de> write :d0a6lk$1lqe$1@digitaldaemon.com... > Btw: I also saw there seem to be "import modules". Hm, look like header files. My proposal would be to generate these modules from the library binaries, or better: let the compiler access these binaries instead of parsing the import module. > > Vincent |
Copyright © 1999-2021 by the D Language Foundation