On Wed, 28 May 2003, Marcin Dalecki wrote: MD>Scott Long wrote: MD>> Q wrote: MD>> MD>>> Don't overreact. MD>> MD>> MD>> Heh. I live this hell every day with Linux in my day job. MD>> MD>>> I'm not suggesting taking the linux approach of MD>>> versioning every module. But rather allowing the loader or a module MD>>> (most likely a 3rd part or from a port) the ability to make a decision MD>>> based on some internal revision/date based "version" as to whether it is MD>>> safe to proceed to load. MD>> MD>> MD>> Ideally, every API would be versioned, and developers would be careful MD>> to architect their work so that the interfaces would be stable and MD>> gratuitous incompatibilities would be avoided. Alas, that is not always MD>> the case. MD>> MD>NO no and again no. This would repeat the same design mistake MD>that is already in Linux. On API level you DO NOT WANT versioning. MD>What you really want is: type signature cheking. Like for example MD>done through C++ symbol mangling rules. If you can't do it like that MD>then better leave it off as it is. Versioning in itself Type signature checking doesn't help you if the semantics of an API change without type changes. APIs should be semantically and syntactically stable in -STABLE. In -CURRENT they are expected to change. Managing a 3rd party driver for current is a nightmare, but may no be necessary once we have a -STABLE based on FreeBSD5. harti -- harti brandt, http://www.fokus.fraunhofer.de/research/cc/cats/employees/hartmut.brandt/private brandt_at_fokus.fraunhofer.de, harti_at_freebsd.orgReceived on Tue May 27 2003 - 23:49:59 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:09 UTC