Hi all,

I'm working again on autogenerated python bindings for efl UnifiedAPI but
I'm quite blocked by the lack of namespace definitions in eo/eolian.

This is a noproblem in C and any other language without proper namespacing,
but for the langs that provide namespaces (like python and many others)
this need to be defined in some way.

First of all we need to define what a namespace is, and define some rules
for them. Then we should implement something in Eolian so that every
different bindings can be generated with the same namespace hierarchy.

Currently I'm assuming that the namespace of an object (class or typedecl)
is its full name without the last part, fe the Efl.Canvas.Object live in
the Efl.Canvas namespace. Is this correct? is this what we want?

As for the rules we should define some, I have two on my mind atm:
1. (definition) The namespace of an object is it's full name without the
last part (mybe lowercased?)
2. A namespace cannot have the same name of another eo object (classes,
enums, typedefs, aliases, etc)

The #2 is mandatory in python. I can workaround this in my generator by
lowercasing the namespaces (fe: efl.canvas.Object), but seems to me that
having 2 different things (a class and a namespace) with the same name is
confusing for everyone and probably will not work for languages/systems
without a case-sensitive filesystem (thinking about windoz here)

To better understand what I'm speaking about please give a look at:

Those pages are automatically generated, are NOT python related, and should
serve as a reference for the UnifiedAPI work in progess, they provide a
clean view of the current state of our new API.

waiting for comments and ideas
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

Reply via email to