Hi Kirill,
Thank you for offering your comments.
Among the three sub-topics in this thread (Handles, headers, NCollection & STL) this one has the least impact to the OCC users, so you have the most flexibility to eventually decide.
The major point I see in adopting STL vs home-made collections is reduced source code and hence maintenance efforts. For instance, instead of spending your efforts on designing "STL-compatible iterators" you could invest into something OCC-specific. In the past, lack of a hasher argument in the DataMap led to impossibility to mix various shape maps in one compilation unit. Lack of allocator in the array class does not allow to use IncAllocator. To retrieve an object from a map you have to ask twice (e.g. IsBound() and operator()), where you would retrieve an iterator from STL std::unordered_map just once. And so on and so forth. So you have to spend your precious time on this generic stuff.
Secondly, using STL machinery you could write more compact code (e.g. using std::find, ::count_if, ::for_each,...).
Breaking the source compatibility (your point #2) is indeed the greatest argument why NCollection will likely stay for foreseeable future.
The compiler support (your point #4) is also valid, although all supported compilers (http://www.opencascade.org/getocc/require/) seem to support all or most relevant containers (not certain about VS2005 though).
Performance is certainly likely on par, indeed. Unless you write a linked list implementation is some weird way, all implementations should be good ;-). However the above point on search in the DataMap vs unordered_map can be an example where STL usage might be more efficient.
I don't get the point on 'terrifying syntax' and compliance to OCC coding conventions. The former is subjective (many people will unlikely share your observation). The latter just does not apply - STL is *the* international standard, it does not need to obey to any proprietary coding styles.
Anyway, as stated in the beginning - this is rather your internal matter. So please consider all this with grain of salt. Just my 2 cents.
Thank you,
Commenter-3