После трёх месяцев разработки проект Enlightenment представил (https://phab.enlightenment.org/phame/live/3/post/efl_1_12_is.../) выпуск набора библиотек EFL 1.12 (http://enlightenment.org/p.php?p=about&l=en) (Enlightenment Foundation Library), позволяющих создавать визуально привлекательные графические интерфейсы, отличающиеся компактностью, низким потреблением ресурсов и высокой производительностью. Несмотря на изначальное развитие в качестве базиса для окружения Enlightenment, компоненты EFL часто используются для построения интерфейсов потребительской электроники и мобильных устройств. Например, EFL является составной частью мобильной платформы Tizen, используются в бытовой технике Electrolux (http://www.opennet.me/opennews/art.shtml?num=28750), телефонах Samsung (http://www.opennet.me/opennews/art.shtml?num=24315), а также в продуктах компаний ProFUSION, Free.fr и Calaos.Кроме библиотек EFL выпущен набор виджетов Elementary 1.12, а также пакеты Emotion Generic Players 1.12 и Evas Generic Loaders 1.12. Emotion Generic Players включает реализации базовых компонентов для проигрывания медиаконтента. Evas Generic Loaders представляет собой коллекцию модулей, позволяющих организовать загрузку форматов svg, xcf, pdf, ps, ppt, doc, docx, xls, avi, mkv, wmv и т.д. Модули из состава Emotion Generic Players и Evas Generic Loaders выполнены в форме обособленных процессов, взаимодействующих с базовой программой через разделяемую память и неименованные каналы, что позволяет обеспечить продолжение работы программы на базе EFL, даже в случае краха обработчика медиаконтента.
Ключевые новшества:
- Серия улучшений, связанных с Wayland: Добавлена поддержка оболочки IVI Shell (https://wiki.tizen.org/wiki/Wayland_ivi-shell), используемой в версии Tizen для автомобильно-развлекательных систем. Обеспечена поддержка 4 версии протокола XDG Shell. Реализован новый GL DRM движок для системы рендеринга Evas.- Проведена ревизия документации по работе с библиотеками EFL;
- Продолжена работа по усовершенствованию Elua, runtime на основе LuaJIT, предназначенного для быстрой разработки приложений на языке Lua с использованием EFL. После завершения работки Elua позволит добиться высокой производительности и низких накладных расходов, сопоставимых с программами на языке Си. В новом выпуске налажен процесс корректной генерации Lua-биндингов. Реализована генерация файлов eo.lua на этапе компиляции EFL по аналогии eo.c и eo.h;- Проведена чистка кода библиотеки Eolian, объединён диблирующийся код, добавлены новые функции, улучшена система типов, добавлена поддержка вычисления выражений и определения глобальных выражений и констант.
- Реализована порция новых возможностей, связанных с поддержкой приложений, использующих OpenGL через Evas GL API. Обеспечена поддержка создания контекста OpenGL-ES 1.1, возможность использования EGL-расширений fence_sync, reusable_sync и wait_sync, в системе прямого рендеринга появилась поддержка прозрачности и вращения холста, добавлены EGL-подобные функции для получения текущего контекста или поверхности и формирования обращений к поверхности.
- Улучшена переносимость кодовой базы: добавлена поддержка OS X Eina spinlock и NSRunLoop, в библиотеку evil добавлена поддержка Windows-вызова strptime();
- Проведена работа по оптмизации производительности и сокращению потребления памяти. Устранены ошибки, выявленные в процессе автоматизированного тестирования в системе Coverity. Неисправленными остаётся только 40 дефектов.
Состав EFL:
- Eina (http://trac.enlightenment.org/e/wiki/Eina) - библиотека с реализацией различных типов данных (массив, хэш, список, дерево) и полезных инструментов (работа с логами, оценка производительности, преобразование форматов и т.д.).
- Eet (http://trac.enlightenment.org/e/wiki/Eet) - библиотека для записи произвольного набора блоков данных в файл и их последующего частого чтения в произвольном порядке.
- Evas (http://trac.enlightenment.org/e/wiki/Evas) - система рендеринга для организации вывода на экран. Evas оперирует содержимым экрана как сценой, на которой размещаются определённые объекты, состояние которых в последующем отслеживается. Подобный подход, абстрагированный от размещения экранных элементов, позволяет разрабатывать интерфейс пользователя с точки зрения дизайнера, а не программиста (в коде достаточно определить только логику и не думать о прорисовке и выводе на экран). Evas также абстрагирует метод вывода, что позволяет использовать один и тот же код в сочетании как с программным рендерингом, так и с OpenGL. При этом над сценой можно проделывать такие операции как масштабирование, вращение и 3D-трансформации. Evas обеспечивает замечательную производительность даже при использовании программных методов рендеринга, без задействования аппаратной акселерации вывода.
- Ecore (http://trac.enlightenment.org/e/wiki/Ecore) - библиотека для организации цикла обработки событий, имеющая в своем арсенале набор модулей для упрощения связанных с обработкой событий задач, таких как работа с X, Evas, нитями, сетевыми соединениями и т.п.
- Embryo (http://trac.enlightenment.org/e/wiki/Embryo) - библиотека для написания небольших компилируемых приложений для встраиваемых устройств.
- Edje (http://trac.enlightenment.org/e/wiki/Edje) - графическая библиотека, отделяющая внешний вид от кода (оформление задаётся в виде загружаемого из файла шаблона). По своей сути Edje занимает нишу где-то между HTML+CSS и Flash/PSD/SVG. При помощи данной библиотеки можно сформировать насыщенный пользовательский интерфейс, снабжённый анимированными визуальными эффектами и поддерживающий динамическое оформление (внешний вид можно полностью поменять просто сменив EDJ-шаблон и не трогая код, при этом, в отличие от визуальных тем, порядок расположения элементов может быть произвольно изменён).
- Efreet (http://trac.enlightenment.org/e/wiki/Efreet) - библиотека, позволяющая использовать в приложениях некоторые спецификации Freedesktop.org по работе с пиктограммами, Desktop-файлами и меню.
- Eeze (http://trac.enlightenment.org/e/wiki/Eeze) - библиотека для организации взаимодействия с внешними устройствами через udev, hal и другие механизмы.
- Expedite (http://trac.enlightenment.org/e/wiki/Expedite) - инструментарий для измерения производительности, который может тестировать различные движки Evas, такие как X11, XRender, OpenGL, SDL и DirectFB. Методика тестирования максимально приближена к реальным условиям.
- Evil (http://docs.enlightenment.org/auto/efl/evil_main.html) - реализация уровня совместимости для работы на платформе Windows.
- Eio (http://trac.enlightenment.org/e/wiki/Eio) - абстрактный интерфейс для доступа к файловой системе и реализации асинхронного ввода/вывода;- Emotion (http://trac.enlightenment.org/e/wiki/Emotion) - библиотека для интеграции в EFL-приложения поддержки проигрывания аудио и видео контента. Проигрывание видео может осуществляться с использованием Gstreamer, Xine или других внешних плагинов (например, VLC), при этом видео отображается как стандартный объект в Evas.
- Ethumb (http://trac.enlightenment.org/e/wiki/Ethumb) - библиотека для формирования эскизов изображений, соответствующих стандартам freedesktop.org. Ethumb реализован в виде сервиса dbus и клиентской библиотеки, взаимодействующей с данным сервисом.- Elementary (http://trac.enlightenment.org/e/wiki/Elementary) - набор виджетов с готовой реализацией разнообразных графических элементов (от кнопок и элементов управления, до календаря и модуля редактирования текста).
- Eldbus (http://git.enlightenment.org/legacy/eldbus.git/tree/README) - надстройкой над DBus API, заменившая собой ранее доступный модуль E_Dbus (http://trac.enlightenment.org/e/wiki/E_Dbus). Поддержка E_dbus пока сохранена, но больше не будет обновляться;
- Ephysics (http://docs.enlightenment.org/auto/ephysics/) - предоставляет средства для использования движка ...URL: https://phab.enlightenment.org/phame/live/3/post/efl_1_12_is.../
Новость: http://www.opennet.me/opennews/art.shtml?num=41038
Жаль, что нет питонячих байндингов для этой либы(.
Зачем Python если есть Lua?
Зачем компьютер, когда есть калькулятор?
Наоборот. Зачем юзать калькулятор (Python), когда уже есть компутер (Lua)?
> Наоборот. Зачем юзать калькулятор (Python), когда уже есть компутер (Lua)?А вот и сошлись две якодзумы...
https://www.youtube.com/watch?v=zChEQuhK09M
Вообще, обычному человеку эти две кучи сложно корреляционно идентифицировать. Вот Столлман может - он выбирает Lua. Но он не человек.
> Вообще, обычному человеку эти две кучи сложно корреляционно идентифицировать. Вот Столлман
> может - он выбирает Lua. Но он не человек.К чему это? Бог решил использовать авторитет как ЕС? Не аргумент. Программисты разные - средства разные. Нет единственного пути. Всякий идущий приветствуется.
Сам придумал? Столлман использует Emacs (Lisp), проекты GNU - Guile (Scheme).
Знаете, мне почему-то кажется, что большинство программистов Guile тоже используют Emacs. =)
> Зачем компьютер, когда есть калькулятор?Точно! Кичится интерпретарором... ?
> Зачем Python если есть Lua?Вы хотите об этом поговорить?
PS: с цитатой - понятнее
Скоро выпустят и для 1.12, а для старых версий EFL есть уже давно: http://download.enlightenment.org/rel/bindings/python/
1. создавать визуально привлекательные графические интерфейсы - это для хомячков. Вы хотите что-бы было больше хомячков?
2. Скрещивать хомячков с питончиками - это очень серьезный генетический эксперимент!PS: "Брат2" - форева! с 2,5 литрами пива . )))
>отличающиеся компактностью, низким потреблением ресурсов и высокой производительностьюНе сочтите за коммент, но три одновременно не бывает.
Видел я вашу Lua на вики. Примера достойного даже нет. Вырванный огрызок.
print("Hello World!")
точка входа и прочая обвеска?
дык оно популярность-то имеет в эмбедовке, в основном.
и немного "решений в себе" для индастриала.
никаких "комбайнов системы "помесь ужа с ежом" на базе - не делают, исторически.
Бедные. Пилят и пилят, наивно полагая, что их изделие кому-то нужно.
С учетом того, что их финансирует самсунг и использует эту либу - нужность проекта сильно больше многих других.
Тизень сейчас кому-то нужен? Ах да, в вашей матричке весь вымышленный мир уже затаил дыхание.
А вам тизен никто и не предлагает. Вам предлагают холодильники, телевизоры и т.п. вещи.
http://img0.joyreactor.com/pics/post/auto-fridge-twitter-306...
> А вам тизен никто и не предлагает. Вам предлагают холодильники, телевизоры и
> т.п. вещи.Кому принадлежит "Samsung"?
>> А вам тизен никто и не предлагает. Вам предлагают холодильники, телевизоры и
>> т.п. вещи.
> Кому принадлежит "Samsung"?Это важно?
конечно.
для четкого понимания - Что происходит.
и с кем вы ведете дела :)
что в сущности - одно и то-же.
> С учетом того, что их финансирует самсунгДа, давай я тебе подарю их 50-ти дюймовое гогнище - тормозное, с засветами, клаудингом и всем остальным по списку. Азиатский треш. Никогда больше!
>> С учетом того, что их финансирует самсунг
> Да, давай я тебе подарю их 50-ти дюймовое гогнище - тормозное, с
> засветами, клаудингом и всем остальным по списку. Азиатский треш. Никогда больше!Доставку до двери оплатишь? Давай!
> С учетом того, что их финансирует самсунг и использует эту либу -
> нужность проекта сильно больше многих друSsmsung не бог! Но китайско-Российская дружба навек!!
Это о мудрой фразе: Нам не нужны бумажки - нам нужна дружба!2к истории.
линукс тоже когда то бедный был...
А сейчас?
> А сейчас?О чем спор?
>> А сейчас?
> О чем спор?Да . Кто думает что он пуп.
- "Он входит как победитель"
- "А кого он победил...."
Если что-то не используется в твоей убунте, то это не значит, что оно не нужно. Когда уже школяры осознают, что не всё на свете делается для их десктопчика?Работал с EFL на встраиваемых системах - хорошая и вылизанная штука. Коммерческие тулкиты на её основе разительно отличаются по качеству кода в худшую сторону, даже по хедерам без труда заметно, где апстримовый код, а где проприетарный крап.
> Бедные. Пилят и пилят, наивно полагая, что их изделие кому-то нужно.Точно! Хомячки всем нужны!
Пилят и не подозревают в чью сторону пилят.
> Пилят и не подозревают в чью сторону пилят.продолжение пока демократия opennet не отрубила
Брат 2 достойный фильм. Не для.. Вернувшийся к себе - укрепляет себя
еще бы глобальное меню и одинаковость темы во всех приложених было бы оч круто
> еще бы глобальное меню и одинаковость темы во всех приложених было бы
> оч крутоВы о многом размечтались. "Глобальное меню...." ))))
>> еще бы глобальное меню и одинаковость темы во всех приложених было бы
>> оч круто
> Вы о многом размечтались. "Глобальное меню...." ))))А швабру... Как В Брюсе...
>> После завершения работки Elua:)
пробовал год назад - почти готово уже было (можно использовать, если бы не немногочисленные досадные вещи). обязательно ближе к новому году попробую еще раз.
> пробовал год назад - почти готово уже было (можно использовать, если бы
> не немногочисленные досадные вещи). обязательно ближе к новому году попробую еще
> раз.нормальная либа.
прикладуха - вещи в себе, а базово - можно вполне на равне с Vx и прочим, использовать.