Le binding Python des EFL est objet par dessus le procédural, et franchement, c'est pas la joie.
Par exemple, le mapping entre les structures interne C d'Evas/Edje/Elementary et les objets Python sont chiants à gérer, parce que si on fait pas attention, le GC de python va te libérer ton objet s'il est plus référencé nulle part dans le code python, alors que la structure C existe.
De même dans l'autre sens : si tu utilise une instance python dont l'objet C se fait détruire automatiquement par du code C, ton objet python possède un pointeur qui pointe vers rien du tout. Et franchement, travailler avec des segfault en python c'est pas la joie.
Le binding Python n'a justement aucune doc, et on comprend pourquoi ; Hier, à cause d'un problème de callback C vers python (encore un problème de références C <--> Python), l'API de python-elementary à été complètement cassée (super cool quand on rend un projet utilisant les EFL deux jours plus tôt...). Aujourd'hui c'est utilisable, mais loin d'être aussi solide que l'API C. Faire une bijection 1-1, ça reste quand même bien plus simple à faire et plus solide.
[^] # Re: freebox HD et jeux
Posté par Batchyx . En réponse à la dépêche Enlightenment conquiert le monde. Évalué à 3.
Par exemple, le mapping entre les structures interne C d'Evas/Edje/Elementary et les objets Python sont chiants à gérer, parce que si on fait pas attention, le GC de python va te libérer ton objet s'il est plus référencé nulle part dans le code python, alors que la structure C existe.
De même dans l'autre sens : si tu utilise une instance python dont l'objet C se fait détruire automatiquement par du code C, ton objet python possède un pointeur qui pointe vers rien du tout. Et franchement, travailler avec des segfault en python c'est pas la joie.
Le binding Python n'a justement aucune doc, et on comprend pourquoi ; Hier, à cause d'un problème de callback C vers python (encore un problème de références C <--> Python), l'API de python-elementary à été complètement cassée (super cool quand on rend un projet utilisant les EFL deux jours plus tôt...). Aujourd'hui c'est utilisable, mais loin d'être aussi solide que l'API C. Faire une bijection 1-1, ça reste quand même bien plus simple à faire et plus solide.