QEMU жана FFmpeg долбоорлорун негиздеген француз математиги Фабрис Беллард да Pi санын эсептөөнүн эң ылдам формуласын түзүп, сүрөт форматын иштеп чыккан.
JavaScript ишке ашыруу
отургуч-v8 кыймылдаткычтан алдыда турат
Кыймылдаткычты тиркемелерге киргизүү үчүн китепканадан тышкары, долбоор ошондой эле буйрук сабынан JavaScript кодун иштетүү үчүн колдонула турган qjs котормочу сунуштайт. Мындан тышкары, qjsc компилятору бар, ал тышкы көз карандылыкты талап кылбаган, өз алдынча аткарууга ылайыктуу, аткарылуучу аткарылуучу файлдарды түзүүгө жөндөмдүү.
Негизги өзгөчөлүктөр:
- Компакттуу жана башка долбоорлорго интеграциялоо оңой. Код жыйын үчүн тышкы көз карандылыкты талап кылбаган бир нече C файлдарын гана камтыйт. Эң жөнөкөй компиляцияланган тиркеме 190 КБга жакынды алат;
- Абдан жогорку аткаруу жана кыска баштоо убактысы. 56 миң ECMAScript шайкештик сыноолорун өткөрүү кадимки рабочий компьютердин бир өзөгүндө аткарылганда 100 секундга жакын убакытты талап кылат. Иштөө убактысын баштоо 300 микросекунддан аз убакытты алат;
- ES2019 спецификациясын дээрлик толук колдоо жана эски веб тиркемелер менен шайкештик үчүн компоненттерди аныктаган В тиркемесин толук колдоо;
- ECMAScript Test Suite бардык тесттерден толук өтүү;
- Javascript кодун тышкы көз карандылыксыз аткарылуучу файлдарга компиляциялоону колдоо;
- Циклдик тазалоосуз маалымдамаларды эсептөөгө негизделген таштанды жыйноочу, бул бизге болжолдуу жүрүм-турумга жетишүүгө жана эстутумду керектөөнү кыскартууга мүмкүндүк берди;
- JavaScript'те математикалык эсептөөлөр үчүн кеңейтүүлөрдүн жыйындысы;
- Контексттик кодду бөлүп көрсөтүүнү колдогон буйрук сабы режиминде кодду аткаруу үчүн кабык;
- Компакт стандарттуу китепкана C китепканасынын үстүнөн оролгон.
Долбоор ошондой эле QuickJS менен алектенген жана жеке колдонууга ылайыктуу үч коштоочу C китепканасын иштеп чыгууда:
- libregexp - Javascript ES 2019 спецификациясына толук шайкеш келген кадимки туюнтмалардын тез ишке ашырылышы;
- libunicod - Юникод менен иштөө үчүн компакттуу китепкана;
- libbf - так тегеректөө менен эркин тактык калкыма чекиттик операцияларды жана трансценденттик функцияларды ишке ашыруу.
Source: opennet.ru