O matemático francés Fabrice Bellard, que fundou os proxectos QEMU e FFmpeg, tamén creou a fórmula máis rápida para calcular o número Pi e desenvolveu o formato de imaxe.
Implementación de JavaScript
bench-v8 está por diante do motor
Ademais da biblioteca para incorporar o motor nas aplicacións, o proxecto tamén ofrece un intérprete qjs, que se pode usar para executar código JavaScript desde a liña de comandos. Ademais, está dispoñible o compilador qjsc, capaz de xerar ficheiros executables de saída axeitados para a execución autónoma que non requiren dependencias externas.
Características clave:
- Compacto e fácil de integrar noutros proxectos. O código inclúe só algúns ficheiros C que non requiren dependencias externas para a montaxe. A aplicación compilada máis sinxela leva uns 190 KB;
- Moi alto rendemento e curto tempo de arranque. Superar 56 mil probas de compatibilidade ECMAScript leva uns 100 segundos cando se executa nun único núcleo dun PC de escritorio normal. A inicialización do tempo de execución leva menos de 300 microsegundos;
- Soporte case completo para a especificación ES2019 e soporte total para o Apéndice B, que define os compoñentes para a compatibilidade coas aplicacións web legadas;
- Superación completa de todas as probas do ECMAScript Test Suite;
- Soporte para compilar código Javascript en ficheiros executables sen dependencias externas;
- Un colector de lixo baseado no reconto de referencias sen limpeza cíclica, que nos permitiu acadar un comportamento previsible e reducir o consumo de memoria;
- Un conxunto de extensións para cálculos matemáticos en JavaScript;
- Un shell para executar código no modo de liña de comandos, que admite o resaltado de código contextual;
- Biblioteca estándar compacta con envoltorios sobre a biblioteca C.
O proxecto tamén está a desenvolver tres bibliotecas C acompañantes implicadas en QuickJS e adecuadas para uso individual:
- libregexp: implementación rápida de expresións regulares, totalmente compatible coa especificación Javascript ES 2019;
- libunicode - unha biblioteca compacta para traballar con Unicode;
- libbf - Implementación de operacións de coma flotante de precisión arbitraria e funcións transcendentais con redondeo exacto.
Fonte: opennet.ru