Lähettäjä järjestelmän ohjelmointikielen julkaisu Nimi 1.2. Nim-kieli käyttää staattista kirjoitusta, ja se luotiin Pascalia, C++:aa, Pythonia ja Lispia silmällä pitäen. Nim-lähdekoodi on käännetty C-, C++- tai JavaScript-esitykseen. Myöhemmin tuloksena oleva C/C++-koodi käännetään suoritettavaksi tiedostoksi millä tahansa saatavilla olevalla kääntäjällä (clang, gcc, icc, Visual C++), jonka avulla voit saavuttaa suorituskyvyn lähellä C:tä, jos et ota huomioon ajon kustannuksia. roskakoriin. Pythonin tapaan Nim käyttää sisennystä lohkon erottimina. Metaohjelmointityökaluja ja ominaisuuksia verkkoaluekohtaisten kielten (DSL) luomiseen tuetaan. Projektin koodi toimitetaan MIT-lisenssillä.
Huomattavia muutoksia uudessa julkaisussa ovat mm.
Moduulissa "sokeri"Lisätty uusia makroja kerätä, kopioida ja kaapata.
Lisätty uusi makro "kanssa".
Suuri osa uusista kutsuista on lisätty vakiokirjastoon, mukaan lukien strformat.fmt, strtabs.clear, browsers.osOpen, typetraits.tupleLen, typetraits.genericParams, os.normalizePathEnd, times.fromUnixFloat, os.isRelativeTo, times.isLeapDay , net.getPeerCertificates, jsconsole.trace, jsconsole.table, jsconsole.exception, sequtils.countIt jne.
Lisätty uudet moduulit std/stackframes ja std/compilesettings.
Vaihtoehdot "—asm" (luodun kokoonpanokoodin analysointia varten) ja "-panics:on" pakotettua poistumista varten IndexError- ja OverflowError-virheiden yhteydessä on lisätty kääntäjään ilman, että "try"-käsittelijä voi siepata niitä.