The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от opennews (ok), 05-Авг-19, 10:11 
Опубликован (https://github.com/svaarala/duktape/releases/tag/v2.4.0) выпуск JavaScript-движка Duktape 2.4.0 (https://duktape.org/), ориентированного на встраивание в кодовую базу проектов на языке C/C++. Движок отличается компактным размером, высокой переносимостью и низким потреблением ресурсов. Исходные тексты движка написаны на языке Си и распространяются (https://github.com/svaarala/duktape) под лицензией MIT.

Код Duktape занимает около 160 kB  и потребляет всего 70kB ОЗУ, а в режиме низкого потребления памяти  27kB ОЗУ. Для интеграции Duktape в код на C/C++ достаточно (http://duktape.org/guide.html#gettingstarted) добавить в проект файлы duktape.c и duktape.h, и использовать Duktape API (http://duktape.org/api.html) для вызова функций на JavaScript  из кода  на C/C++ или наоборот. Для освобождения неиспользуемых объектов из памяти применяется сборщик мусора с финализатором, построенный на основе комбинации алгоритма (https://ru.wikipedia.org/wiki/%D0%A1%D0%...) подсчёта ссылок с алгоритмом пометок (Mark and Sweep). Движок применяется для обработки JavaScript в браузере NetSurf (https://www.netsurf-browser.org/).

  

Обеспечивается полная совместимость со спецификациями Ecmascript 5.1 и частичная поддержка (http://wiki.duktape.org/PostEs5Features.html) Ecmascript 2015 и 2016 (E6 и E7), в том числе поддержка объекта Proxy для виртуализации свойств, типизированные массивы, ArrayBuffer, Node.js Buffer, Encoding API, объект Symbol и т.п. В состав входит встроенный отладчик, движок для выполнения регулярных выражений и подсистема для поддержки Unicode. Также предоставляются специфичные расширения, такие как поддержка сопрограмм, встроенный фреймворк для журналирования, механизм загрузки модулей на основе CommonJS, система кэширования байткода, позволяющая сохранять и загружать скомпилированные функции.


В новом выпуске реализованы (https://github.com/svaarala/duktape/blob/master/RELEASES.rst...) новые вызовы duk_to_stacktrace() и duk_safe_to_stacktrace() для получения трассировок стека, duk_push_bare_array() для добавления независимых экземпляров массивов. В число публичных переведены функции duk_require_constructable() и duk_require_constructor_call(). Улучшена совместимость со спецификацией  ES2017. Оптимизирована работа с массивами и объектами. В CLI-интерфейс duk добавлена опция "--no-auto-complete" для отключения аводополнения ввода.


URL: https://github.com/svaarala/duktape/releases/tag/v
Новость: https://www.opennet.ru/opennews/art.shtml?num=51220

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –2 +/
Сообщение от proninyaroslavemail (ok), 05-Авг-19, 10:11 
Мне вот одно интересно, где эти самописные движки реально применяются.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним (3), 05-Авг-19, 10:22 
Во-первых, не самописные. Во-вторых, radare2.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +12 +/
Сообщение от trdm (ok), 05-Авг-19, 11:51 
Все движки - самописные.
Исключения - только программы, написанные искусственным интеллектом.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

11. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –10 +/
Сообщение от proninyaroslavemail (ok), 05-Авг-19, 12:05 
Имелось ввиду те которые разрабатывают на коленке, а не гуглами и фаирфоксами.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

17. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +11 +/
Сообщение от trdm (ok), 05-Авг-19, 12:29 
Вы что эбокситкой умываетесь? Когда научитесь различать суть и иллюзию?
Качество продукта зависит исключительно от профессионализма и добросовестности автора,
а не от его корпоративной принадлежности.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

19. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –3 +/
Сообщение от proninyaroslavemail (ok), 05-Авг-19, 12:33 
Вот мне и интересно кто пользуется этими продуктами (или велосипедами, как вам хочется), в эпоху электронов на движке хрома)
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

21. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от тщт (?), 05-Авг-19, 13:01 
Я пользовался, когда-то давно, в какой-то поделке, что это вам дает?
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

22. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от тщт (?), 05-Авг-19, 13:03 
И поделка загнулась, именно потому, что не было легковесного движка, а тот что был протух и разложился на атомы
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

49. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (49), 08-Авг-19, 01:10 
Используют:

1. Во встраиваемых системах где основной язык Си
2. Используют в системах развертывания этих же систем
3. Используют в системах тестирования - легко можно написать деяточек асинхронных тестов на базе каких-то сишных библиотек (экономия огромная времени)

В целом зависит от стека компании в компаниях где стек Linux почти в любой области может быть использовано.

Конечно много сейчас еще стеков Java и С#, но они все лезут в контейнеры и в Linux.

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

48. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Egor Mamontovemail (?), 06-Авг-19, 23:51 
вот тебе пример использования мною QScriptEngine (текущий нужно протестировать на скорость). Задача ставилась создать бэк для обработки большого кол-ва запросов и расчетов. Бэк писался на сpp, для асинхронных ответов (работа с потоками) применялся epoll. Особенно критичные вычисления писались на с++. для доработки функционала применил движок js. получился очень быстрый бэк с возможностью расширить функционал на js
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

31. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноим (?), 05-Авг-19, 14:59 
Это понятно. Вы объясните это манагеру из конторы уровня сотового оператора большой тройки.
Что вот эту прекрасную прогу можно включить в продакшн-среду и ничего не упадет или никто не сольёт данные на сторону. Пробовали такое сделать?
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

33. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним (33), 05-Авг-19, 15:54 
> и ничего не упадет

Мне кажется, оратор выше требует принести ему на блюдечке _доказательство отсутствия_.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

37. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от trdm (ok), 05-Авг-19, 18:50 
> Это понятно. Вы объясните это манагеру из конторы уровня сотового оператора большой тройки.

мне до них дела нет, у меня свои обязанности и компетенции.
мне за травлю чужих тараканов не платят.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

42. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от ETO KTO (?), 05-Авг-19, 20:12 
Кажется у корпораций собственный мирок и там принадлежность к гуглу действительно может иметь значение (я считаю).
Но не потому, что им важно как работает, людям просто важно найти крайнего (наверное), именно по этому (думаю) в корпорациях процветают (вроде бы) угрёбищные решения All In One втридорога.
Выбирая такое решение можно быть несколько более уверенным в том, что тебя не назначат виноватым за его выбор и положиться на поддержку, а так же одинаковость важна для заменяемости людей.

Но если им действительно захочется узнать, сольёт ли кто-то на сторону что-нибудь, а не просто полагаться на авторитеты, то им проще будет провести аудит именно маленькой штуковины.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

45. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Hewlett Packard (?), 06-Авг-19, 07:01 
Это зависит от того кто объясняет в большей степени.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

46. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от А (??), 06-Авг-19, 23:14 
> уровня сотового оператора большой тройки.

Те ещё быдло-кодеры. Не поголовно. Но работать туда не надо.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

43. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Человечек (?), 05-Авг-19, 21:52 
Справедливости ради, такие программы да, могут быть гораздо качественнее, безопаснее и надёжнее гугловых и прочих, но как-никак для написания документации, сопровождения репозиториев и архитектур, форумов для коммунити нужны большие ресурсы (в людях). К тому же коммерцию никто не отменял - помимо того чтобы ему доверился какой-нибудь билайн как сказали выше, довериться должны так же производители популярных фреймворков и ЯП, хостинги и тд.
Но и обратное справедливо - если он станет достаточно популярным и крутым то сможет сам закрутить маховик вот этой всей коммерции и юридической фигни.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

39. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от th3m3 (ok), 05-Авг-19, 19:32 
А чем это отличается от Гугла? Там так же, человек может взять запилить что-то. Возможно даже в нерабочее время. А тот же Гугл, может потом с ним договориться и завернуть так, якобы это разработка Гугла. Но код пишется конкретным человеком или несколькими. Чем это написанное на коленке, отличается от другого? У того же Гугла, куча проектов с приставкой Beta.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

47. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Egor Mamontovemail (?), 06-Авг-19, 23:25 
не удивляйтесь если услышите в свой адрес гадкие слова
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

53. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от otmuenbg (?), 09-Авг-19, 20:10 
скайнет, матрица?
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

40. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от забыл (?), 05-Авг-19, 19:37 
я знаю два места в системе где нужен джаваскрипт и где я бы не хотел видеть ни в8 ни спайдерманки:

1) правила полисикита. зачем-то пишутся на джаваскрипте.

2) парсинг файлов автоконфигурации прокси-сервера. исторически сложилось так что они на джаваскрипте.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –6 +/
Сообщение от Аноним (2), 05-Авг-19, 10:16 
Он мёртвый, к сожалению. Автор не хочет ковырять компилятор и доводить язык до ecma-2018
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +4 +/
Сообщение от Аноним (3), 05-Авг-19, 10:23 
Ничего, тут недавно Фабри Беллард движок выпустил ...
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

51. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (49), 08-Авг-19, 01:11 
Что за движек как называеться
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

52. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (52), 08-Авг-19, 01:13 
> Что за движек как называеться

https://bellard.org/quickjs/

Ответить | Правка | ^ к родителю #51 | Наверх | Cообщить модератору

5. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +6 +/
Сообщение от имя (?), 05-Авг-19, 10:41 
>мёртвый
>Выпуск встраиваемого JavaScript-движка Duktape 2.4.0

тебе не кажется, что здесь что-то не сходится?

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

10. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –1 +/
Сообщение от Аноним (10), 05-Авг-19, 12:01 
Хот фиксит можно хоть сколько времени а 2018 так и не появится.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

16. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Crazy Alex (ok), 05-Авг-19, 12:20 
а зачем?
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

23. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (-), 05-Авг-19, 13:12 
зачем развиваются яп? ясно, понятно
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

26. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –2 +/
Сообщение от Аноним (10), 05-Авг-19, 13:57 
Ну в данном случае это приведет к большим тормозам и больше размеру. Да и в других языках тоже.
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

36. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (-), 05-Авг-19, 18:50 
откуда это следует? развитие яп направлено в том числе на уменьшение потребления ресурсов
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

29. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Crazy Alex (ok), 05-Авг-19, 14:49 
Для встроенных скриптов это развитие на фиг не нужно. А ducktape - это ж тебе не V8, его дело - обеспечить простенькую автоматизацию.
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

38. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним (-), 05-Авг-19, 18:51 
для встроеных скриптов это как раз нужно - новые старндарты ecma позволяют использовать новые патерны, которые в свою очередь писать более компактный код, а его исполнение более эффективно
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

41. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Crazy Alex (ok), 05-Авг-19, 20:03 
Если вам надо хоть какое-то эффективное исполнение - это не к ducktape, а к V8 сотоварищи. И получите ускорение на порядок. А если надо просто воткнуть простой и компактный скриптовый движок - то это, как правило, не о скорости и не о написании хоть как-то сложного кода на этих скриптах. ТАм, по большому счёту, можно (и нужно) не добавлять фичи, а урезать. Вон, в том же lua проблема отнюдь не  в недостатке фич (собственно, единственная его беда - некторая инопланетность).
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

44. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним (-), 05-Авг-19, 21:59 
причем тут ускорение? речь идет возможностях языка, внедряемых через новые стандарты, что приводит к возможности более эффективного как написания кода, так и его исполнения без дополнительных затрат на ресурсы. встраиваемость - не обязательно функциональная ограниченность, как раз хотелось бы, например, иметь полную совместимость с современными движками, пусть и засчет более низкой скорости
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

27. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –1 +/
Сообщение от Аноним (10), 05-Авг-19, 13:57 
Зачем делать хотфиксы? Ну хотя бы для того чтобы делать вид что все ОК.
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

28. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –1 +/
Сообщение от Crazy Alex (ok), 05-Авг-19, 14:47 
Зачем фиксы - понятно, и они делаются. А вот зачем для встроенного движка поддержка распоследней версии ECMAScript - непонятно. Это ж не вебчик, применение совсем другое.
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

34. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним84701 (ok), 05-Авг-19, 16:20 
> А вот зачем для встроенного
> движка поддержка распоследней версии ECMAScript - непонятно. Это ж не вебчик, применение совсем другое.

Видимо, по примеру одной системной софтины [не будем называть имен, но название оканчивается на d], от Красной Шляпы.
Там тянется полноценный движок JS от мозиллы, mozjs 60.
> Rules files are written in the JavaScript programming language and interface with

[...]
> While the JavaScript interpreter used in particular versions [...] may support non-standard features [...] rules must conform to ECMA-262 edition 5 (in other words, the JavaScript interpreter used may change in future versions

И вообще, что-то они долго ждут с переходом на Electron. Стесняются наверное :)

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

50. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +/
Сообщение от Аноним (49), 08-Авг-19, 01:11 
Классы там появились вот зачем ж)
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

6. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +1 +/
Сообщение от Аноним (6), 05-Авг-19, 11:06 
к питону можно прикрутить?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

32. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  –1 +/
Сообщение от Аноним (32), 05-Авг-19, 15:49 
К гтк3, чтобы оно перестало жрать по 3гб озу, где qt жрет пару сотен мб, это прикрутить можно?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

35. "Выпуск встраиваемого JavaScript-движка Duktape 2.4.0"  +2 +/
Сообщение от alexgluckemail (?), 05-Авг-19, 18:21 
Этот движок в заббикс 4.2 впилили. Пока до ограничений не дошёл. Работает и ладно
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру