From: Michael D. C. <cra...@go...> - 2001-04-03 05:20:51
|
> Oh. I thought ZooLib was portable. ZooLib is portable, but it depends on the presence of atomic math, which is not something that is typically provided in high-level languages. If the ZAtomic stuff compiles at all without the use of assembler, it is simply incorrect, as you cannot do that sort of thing from C++. Some operating systems, like the BeOS, provide library routines with access to atomic math but ZooLib's author Andy Green says he has been unable to form a complete set of atomic operations from even the routines provided by the BeOS. Hence there is a small amount of assembly code for each supported platform. I would strongly disagree with you that there are logical errors in the C++; I have yet to meet a programmer who pays more slavish attention to detail and correctness of C++ code than ZooLib's author. I don't doubt that there may be some, but _I_ certainly have not had the pleasure of meeting them. You will find that there are only a few platform-specific files in the whole of ZooLib, and some of the classes have platform-specific members as implementation details that are not publicly visible. For example, there is ZOSWindow_Mac, there is the ZAtomic inline assembler, and there are the different kinds of platform-dependent bitmaps hidden inside a ZDCPixmap. ZooLib _is_ portable but that does not mean it has been _ported_ to every platform; because both threaded code and graphical user interface code are highly platform specific, effort is required to port to a new platform, it doesn't just compile out of the box. Imagine, if you will, implementing the ZAtomic and ZThread classes and operations on top of Solaris threads - you can certainly do that, and there would likely be advantages to you on your platform if you did. But you couldn't expect to do so without having to write some code which was native to the Solaris operating system. Mike -- Michael D. Crawford GoingWare Inc. - Expert Software Development and Consulting http://www.goingware.com/ cra...@go... Tilting at Windmills for a Better Tomorrow. |