Hello all, Hopefully I won't get too burned by flames by jumping into the middle of the conversation like this.
I recently stumbled across your list talking about ICU and Unicode. I am not advocating that you should or shouldn't use ICU. Each group has their own requirements. As a person that actively works on the ICU implementation, I thought I should clear up some of your questions and misconceptions on ICU. I also have a question of my own for this mailing list later on. ICU 2.1 works on MacOS X, and has mostly worked in the past on MacOS 8 and 9 (project files for older Macs are not included). Some companies actively use ICU on the MacOS 8 and 9. The list of supported platforms that was quoted on your mailing list recently was old. Please take a look here http://oss.software.ibm.com/cvs/icu/~checkout~/icu/readme.html#HowToBuildSupported for the latest list of supported platforms. ICU does not work on PalmOS or VMS yet; however, ICU does work on Alpha based Linux, and ICU has been ported to the Tru64 (OSF) platform with Compaq's cxx compiler in the past. We do not have the resources to do this porting effort for every platform ourselves, and so we need other people to do the porting for us. As an open source project we always welcome contributions to make ICU work on other platforms. It is true that parts of ICU uses C++. Some parts of ICU are written in C++ with a C wrapper. Some other parts are written in C with a C++ wrapper. It depends on the API being used. Most of the functionality in the common library is written in C, and most of our i18n library uses C++. You can see some of the C/C++ dependencies here http://oss.software.ibm.com/icu/userguide/design.html under API dependencies. The vast majority of people that we encounter do have a C++ compiler, and we only use the most portable subset of C++. C++ features like templates, exceptions, run-time type information, STL and multiple inheritance are NOT used in ICU. All of our C code is ANSI C89 compliant according to gcc. Since ICU works with some old C compilers, I'm sure that there shouldn't be any concerns about our usage of the C language. Many questions about ICU can be answered on our icu4c-support list. You can go here http://oss.software.ibm.com/icu/archives/index.html to see how to subscribe to the list. On a side note, we have been thinking about putting regular expressions into ICU someday (no firm plans yet). Maybe we could do some collaboration with a regular expression engine in ICU. Would this group be interested in such a collaboration? Thank you for your interest in ICU. George