O matemático francês Fabrice Bellard, fundador dos projetos QEMU e FFmpeg, também criou a fórmula mais rápida para calcular o número Pi e desenvolveu o formato da imagem
Implementação de JavaScript
bench-v8 está à frente do motor
Além da biblioteca para incorporar o motor às aplicações, o projeto também oferece um interpretador qjs, que pode ser usado para executar código JavaScript a partir da linha de comando. Além disso, está disponível o compilador qjsc, capaz de gerar arquivos executáveis de saída adequados para execução autônoma que não requerem dependências externas.
Características principais:
- Compacto e fácil de integrar em outros projetos. O código inclui apenas alguns arquivos C que não requerem dependências externas para montagem. O aplicativo compilado mais simples ocupa cerca de 190 KB;
- Desempenho muito alto e tempo de inicialização curto. Passar em 56 mil testes de compatibilidade ECMAScript leva cerca de 100 segundos quando executado em um único núcleo de um PC desktop comum. A inicialização do tempo de execução leva menos de 300 microssegundos;
- Suporte quase total para a especificação ES2019 e suporte total para o Apêndice B, que define componentes para compatibilidade com aplicativos web legados;
- Aprovação completa em todos os testes do ECMAScript Test Suite;
- Suporte para compilação de código Javascript em arquivos executáveis sem dependências externas;
- Um coletor de lixo baseado em contagem de referências sem limpeza cíclica, o que nos permitiu atingir um comportamento previsível e reduzir o consumo de memória;
- Um conjunto de extensões para cálculos matemáticos em JavaScript;
- Um shell para executar código no modo de linha de comando, com suporte para realce contextual de código;
- Biblioteca padrão compacta com wrappers sobre a biblioteca C.
O projeto também está desenvolvendo três bibliotecas C envolvidas em QuickJS e adequadas para uso individual:
- libregexp – implementação rápida de expressões regulares, totalmente compatível com a especificação Javascript ES 2019;
- libunicode – uma biblioteca compacta para trabalhar com Unicode;
- libbf - Implementação de operações de ponto flutuante de precisão arbitrária e funções transcendentais com arredondamento exato.
Fonte: opennet.ru