Nim 1.2.0 laidiens

Ir izlaista jauna Nim sistēmas programmēšanas valodas versija. Tam ir daļēja nesaderība ar versiju 1.0, piemēram, stingrākas tipa pārveidošanas dēļ. Bet šajā gadījumā ir karodziņš -useVersion:1.0.

Galvenais jauninājums ir jauns atkritumu savācējs, ko iespējo opcija -gc:arc. Valodas autors Andreass Rumpfs gatavojas rakstīt detalizētu rakstu par ARC priekšrocībām, bet pagaidām aicina izlasīt ar savu uzstāšanos FOSDEM, kas parāda etalona rezultātus.

  • Kompilators tagad atbalsta opciju --asm ērtākai saražotā montāžas koda pārbaudei.
  • Izlīdzināšanas pragmu var izmantot objektu mainīgajiem un laukiem, tas ir līdzīgs alignas C/C++.
  • Operators =izlietne tagad nav obligāts. Kompilators tagad var izmantot =destroy un copyMem kombināciju, lai efektīvi pārvietotu objektus.
  • Reklāmguvumi uz neparakstītiem veseliem skaitļiem izpildlaikā netiek pārbaudīti. Sīkāka informācija sadaļā https://github.com/nim-lang/RFCs/issues/175
  • Jauna lvalu sintakse: var b {.byaddr.} = expr, savienots, izmantojot importēšanas std/decls
  • Kompilators atbalsta jaunu slēdzi -panics:on, kas pārvērš izpildlaika kļūdas, piemēram, IndexError vai OverflowError par fatālām kļūdām, kuras nevar novērst, izmantojot mēģinājumu. Tas var uzlabot izpildlaika efektivitāti un programmas lielumu.
  • Ģenerētajā JS kodā tiek izmantotas tikai atstarpes, nevis jauktas atstarpes un tabulēšanas zīmes.
  • Kompilators ir pievienojis atbalstu .localPassc pragma, ko var izmantot, lai apstrādātu īpašas C(++) aizmugursistēmas opcijas C(++) failam, kas tiek ģenerēts no pašreizējā Nim moduļa.
  • Nimpretty vairs nepieņem negatīvus argumentus par atkāpes iestatīšanu, jo tas bija failu pārtraukšana.
  • Ir pievienoti jauni makro (savākšana, dupēšana, uztveršana), kas savienoti, izmantojot importa cukuru.

Turklāt standarta bibliotēkai ir pievienotas daudzas izmaiņas un daudzi kļūdu labojumi.

Avots: linux.org.ru

Pievieno komentāru