Re: [boost] [contract] Contract Programming Library

I am thinking to submit a library for Contract Programming (a.k.a. Design By Contract (TM) ) for C++.
I have drafted some of the library documentation in Boost-like format: http://dbcpp.sourceforge.net/boost/libs/contract/doc/html/
Comments?
Hi, I would be very interested in trying such a library. I have one suggestion, which may be impossible to implement, but I think it would be worth at least looking at. The macros for defining assertions spoil function declarations. I know it is inevitable, etc., but.. read on. I know at least one library in Boost that also spoils function declarations in order to provide additional functionality: Concept Check library; they may be others too (MPL?). My suggestion is that if there are (or will be) libraries that require spoiling function declarations, they should all provide the same "spoiled" syntax. Otherwise I will be always asking "how do I declare a function in this library?". It would be very convenient if Boost provided one alternative function definition syntax that when used would enable all its libraries to work. Regards, &rzej

Hello Andrzej, On Fri, Feb 12, 2010 at 3:39 AM, Andrzej Krzemienski <akrzemi1@gmail.com> wrote:
I would be very interested in trying such a library. I have one
I am updating the documentation then I will release the library on SourceForge (as Contract++ not as Boost.Contract) for everyone to try it. I hope I will receive feedback!
it is inevitable, etc., but.. read on. I know at least one library in Boost that also spoils function declarations in order to provide additional functionality: Concept Check library; they may be others too (MPL?). My suggestion is that if there are (or will be) libraries that require spoiling function declarations, they should all provide the same "spoiled" syntax. Otherwise I will be always asking "how do I declare a function in this library?". It would be very convenient if Boost provided one alternative function definition syntax that when used would enable all its libraries to work.
I agree. However, in the past I did look into harmonizing my library API with the ones of Boost.ConceptCheck and/or Boost.Parameter but it did not seem feasible... I will double check it. Regards, Lorenzo
participants (2)
-
Andrzej Krzemienski
-
Lorenzo Caminiti