Ohjelmointikielen Nim 1.2.0 julkaisu

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.

  • Otettiin käyttöön uusi roskakori ARC ("-gc:arc").
  • 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ä.
  • Parannettu mahdollisten puskurin ylivuotojen havaitseminen.

Lähde: opennet.ru

Lisää kommentti