Macros in my opinion should be only about selecting code portions dependent on current platform or "environment". I think there are better modern approaches to solving those issues. Some sort of "layer" based approach as found in Aspect Oriented software tools and languages comes to mind, where there are clear seperations between code intended as the "core logic" of an application and aspects of implementation, error trapping and platform specialisation.
I just have a bad feeling about macros. Just look at the mess in the Windows Win32 and MFC API. Not to mention typedefs. All used for good reasons. But if we can avoid them so much the better. I would prefer to see some sort of IDE functionality that some how hid platform specific code, according to some selector, rather than #if tests throughout the code, or macro functions. I would say though that I would welcome the ability to set any function/method as #inline - which could be argued to be just a type safe form of macro.... One would then be able to switch between different "views" dependent on platform or just a name. so there could be a "view" for debug, beta and release mode, as well as view layers for specific platforms. Have to admit I don't have any firm picture of how exactly this would be implemented, but then that's down to will and brain brawn. On 26/11/06 18:05, "Lars Jensen" <[EMAIL PROTECTED]> wrote: >> only a built in RB Assert syntax would allow us to include the test string > > So would macros, which would also allow you to make your asserts > zero-footprint as you like. As a bonus, they would allow you (and, > more importantly, me) to eliminate much duplicate code. They are a far > more general and useful response to the Assert impulse. > > lj > _______________________________________________ > Unsubscribe or switch delivery mode: > <http://www.realsoftware.com/support/listmanager/> > > Search the archives of this list here: > <http://support.realsoftware.com/listarchives/lists.html> > _______________________________________________ Unsubscribe or switch delivery mode: <http://www.realsoftware.com/support/listmanager/> Search the archives of this list here: <http://support.realsoftware.com/listarchives/lists.html>
