John Porter wrote: > Ken Fox wrote: > > I think one of the problems with C++ is that it's too high-level for > > implementing some critical features like dynamic module loading. > > If it's not too high-level for C, then it's not too high-level for C++. C++ provides many features that have unspecified implementations -- a mark of a high-level language. It is challenging to implement some Perl features, like dynamic module loading, and still be able to use some features of C++, such as static object initializers. Also, binary compatibility between releases becomes much harder because vtbl layouts and inlines have to be watched just as much as struct alignments. If we constrain ourselves to using C++ as a "better C", then the problems go away. I proposed such an implementation way back when Topaz was first starting, but Chip decided to go with an implementation more true to C++. Either way brings benefits and challenges and there's no clear superior solution -- community by-in IMHO is the most important architectural feature there is. - Ken