So, a binding is an API. The C++ and Java Tango APIs are using CORBA under the hood natively.
The others are bindings, including PyTango. They are basically using cppTango (the Tango C++ API) under the hood.
I think, we should not say that JTango is the Java binding for Tango Controls. For me, it’s a TANGO Java API for Tango Controls.
Perhaps this could be clarified since today, I’m not sure this is ok for everyone.
I do not doubt wikipedia definition but at first, while talking with colleagues, we understand that Python is said API because it’s maintained up-to-date, while for example panorama is probably not.
Perhaps a way to clarify would be to clarify that Java, Python and C++ API are maintained to be up-to-date to be sure anyone could use last functionnalities with those languages if I understand well?
Python API, Java API and C++ API are displayed in Core libraries in Tango ecosystem
Somewhere should be specified why API are specifics in comparison to binding (I understand the native CORBA is the main difference for Java & C++ but I am not sure for Python).