Publication du moteur JavaScript embarqué Duktape 2.4.0

PubliĂ© Lancement du moteur JavaScript Duktape 2.4.0, conçu pour ĂȘtre intĂ©grĂ© dans le code de base de projets en C/C++. Le moteur se distingue par sa taille compacte, sa grande portabilitĂ© et sa faible consommation de ressources. Le code source du moteur est Ă©crit en C et sont distribuĂ©s sous licence MIT.

Le code de Duktape occupe environ 160 kB et consomme seulement 70 kB de RAM, et en mode faible consommation de mémoire, 27 kB de RAM. Pour intégrer Duktape dans le code C/C++ sont suffisants ajoutez les fichiers duktape.c et duktape.h à votre projet, et utilisez Duktape API pour appeler des fonctions JavaScript depuis le code C/C++ ou vice versa. Un ramasse-miettes avec finaliseur est utilisé pour libérer les objets inutilisés en mémoire, basé sur une combinaison de l'algorithme de comptage des références et de l'algorithme de marquage et balayage (Mark and Sweep). Le moteur est utilisé pour exécuter JavaScript dans le navigateur NetSurf.

Il assure une compatibilité complÚte avec les spécifications Ecmascript 5.1 et partielle avec la prise en charge Ecmascript 2015 et 2016 (E6 et E7), y compris le support de l'objet Proxy pour la virtualisation des propriétés, des tableaux typés, ArrayBuffer, Node.js Buffer, l'API d'encodage, l'objet Symbol, etc. Il comprend un débogueur intégré, un moteur pour l'exécution d'expressions réguliÚres et un sous-systÚme pour le support de l'Unicode. Des extensions spécifiques sont également fournies, telles que le support des coroutines, un cadre intégré pour la journalisation, un mécanisme de chargement de modules basé sur CommonJS, et un systÚme de mise en cache de bytecode permettant de sauvegarder et charger des fonctions compilées.

Dans cette nouvelle version sont implémentés De nouveaux appels duk_to_stacktrace() et duk_safe_to_stacktrace() pour obtenir des traces de pile, duk_push_bare_array() pour ajouter des instances indépendantes de tableaux. Les fonctions duk_require_constructable() et duk_require_constructor_call() ont été traduites en public. La compatibilité avec la spécification ES2017 a été améliorée. Le traitement des tableaux et des objets a été optimisé. Une option «--no-auto-complete» a été ajoutée à l'interface CLI duk pour désactiver la complétion automatique des entrées.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster