Dear all, As I mentioned in previous mail, I'm writing a Vala binding generator, but I found our naming rule for namespaces a litte awkward. That is, we connect all tokens in namespace with period, it seems to be not appropriate in meaning of namespace.
For example, "Elm.Layout" and "Elm.Layout.Internal.Part', they can be translated like the next. namespace Elm { *class Layout* { namespace Internal { *class Part *{} } } } Nested namespace "Internal" cannot be put under class in Vala. It can be just a limitation in specific programming language, but even in eolian_cxx, they are translated into the next. namespace elm { *class Layout* {} } namespace elm { namespace layout { namespace internal { *class Part* {} } } } It seems to be used mixed upper and lower case name in namespaces to avoid above namespace conflict issue. However, I think "Elm.Layout.Internal.Part" should be able to access the parent class' ("Elm.Layout" in this case) protected members, so it should be placed in "Elm.Layout" class block. (Of course, I know in our "C" file, we only need to put #define XXX_PROTECTED in the top of the file to access protected members.) To solve this problem, "Elm.Layout.Internal.Part" can be named as "Elm.Layout.Internal_Part", and its translation will be: namespace Elm { *class Layout* { *class Internal_Part* {} } } This can be done by binding generator, but I think that well-arranged eo namespaces can make the binding writers approach Eo system with familiar perspective. Regards, Jee-Yong Um (conr2d) ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel