Languages

Menu
Sites
Language
EFL info

Under the hood of Tizen lies a set of libraries called "EFL". These libraries cover things from rendering through to scene graph, opengl accelerated rendering, widget set, mainloop, thread helpers, layout handling, networking, and much more.

These libraries have been evolving, and Tizen 3.0 will have some new features that add interesting features and possibilities. These include far more robust object access via indirection, dynamic reference counted objects as a base class which leads to easy generation of C++ (EFL++) bindings, alongside the ability to generate OO bindings for other dynamic languages such as Javascript, LUA and Python, so a single consistent API can automatically be exposed in many languages.

This presentation covers these new features, how they work, what they bring in features and API accessibility, how they improve robustness and more.

slides PDF: http://download.tizen.org/misc/media/conference2014/slides/tdc2014-core-object-model-eo-efl.pdf

audio file: http://download.tizen.org/misc/media/conference2014/audio/tdc14-audio-june3-c5-1500-carstenhaitzler.ogg

Edited by: John Ixion on 10 Apr, 2015

Responses

14 Replies
John Ixion

EFL 1.12 is out: https://phab.enlightenment.org/phame/live/3/post/efl_1_12_is_out/

John Ixion

Related blog post: https://phab.enlightenment.org/phame/live/1/post/yet_another_c_object_model_but_better/

John Ixion

"So Eo now makes doing objects in C a breeze. It removes a lot of the footwork in C that would make doing objects painful (and which often drives developers to C++ or some other language). It allows you to build simple C APIs that are usable not just from C in an OO way, but in C++ as if they are native C++ APIs, and in other languages too. We're fleshing out the Lua support at the moment, and other languages will appear as time goes on. This isn't just useful in EFL, but for anyone wanting to make simple OO code in C, be it in embedded devices, phones, desktops, laptops or servers. We happen to be doing it so we can offer far nicer APIs for EFL in future as well as clean up lots of internals, provide far more call safety at runtime, but I am sure this may sole some other problems people have out there.

We invite people to test this out and if you're interested, provide a bindings generator for your favorite language or runtime. This then allows such a language to be a "first class citizen" when using EFL, and any other APIs written using Eo. Such binding generation is then automatic with no human intervention. That is the only sane way to support bindings for languages as manual binding eventually fails."

John Ixion

Multiple language support: C++, Lua, Python, ...

John Ixion

EFL Dev Day https://phab.enlightenment.org/w/events/enlightenment_developer_day_2014/

John Ixion

Python-EFL 1.12.0 release

https://phab.enlightenment.org/phame/live/3/post/python_efl_1_12_0_release/

John Ixion
Efl and Elementary 1.12.1 releases

https://phab.enlightenment.org/phame/live/3/post/efl_and_elementary_1_12_1_releases/

John Ixion

Samsung Dev Conference video http://youtu.be/-Q8eEJ8uoAQ?list=UUoBP0GkJ3jFpSejSnuRgl9Q

John Ixion

EFL 1.13 is out https://phab.enlightenment.org/phame/post/view/112/

John Ixion

Tutorial:

Organizer app: https://developer.tizen.org/documentation/articles/simple-custom-organizer-tizen-native-api-part-1

Other EFL tutorials: https://wiki.tizen.org/wiki/EFL_Tutorials 

John Ixion

High Level Application Development with Elua

https://phab.enlightenment.org/file/info/PHID-FILE-rx3kvnu7tc4nlczlp6sn/

John Ixion

Slides of the Developer Day 2015: https://phab.enlightenment.org/w/events/enlightenment_developer_day_us_2015/

John Ixion

The EFL API in Review

https://phab.enlightenment.org/file/info/PHID-FILE-rx43aawguhycdoayhbjr/

John Ixion

After three months of development work we are proud to announce the release of
version 1.14 of the EFL, Elementary, Evas Generic Loaders and Emotion Generic
Players. In these 12 weeks we got over 1200 commits from 77 authors in EFL alone.
The commit count almost doubled from last time (700). Elementary has another
313 commits by 51 authors. Great job everyone! Some highlights are listed below.

https://phab.enlightenment.org/phame/post/view/125/