Системийн програмчлалын хэлний Nim-ийн шинэ хувилбар гарсан бөгөөд энэ оны есдүгээр сард нэг жилийн ойгоо тэмдэглэж байна. анхны тогтвортой хувилбарЭнэ хэл нь синтаксийн хувьд Python-той төстэй бөгөөд гүйцэтгэлийн хувьд бараг C++-тэй төстэй. дагуу тусламж Хэл нь (хувь нэмэр оруулах дарааллаар): Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon хэлнээс их хэмжээний зээл авдаг.
C/C++/Objective-C/JS хөрвүүлэх чадварын ачаар хаа сайгүй ажилладаг. Энэ нь дэмждэг макро, OOP байна, ерөнхий зүйл, үл хамаарах зүйл, халуун код солих болон бусад олон. Лиценз: MIT.
Хамгийн чухал өөрчлөлтүүд:
-
Шинэ хог цуглуулагч ORC нэмэгдлээ. Энэ нь ARC алгоритмыг ашигладаг боловч дугуй лавлагааг тусгай аргаар зохицуулдаг. Үүнийг --gc:orc сонголтоор идэвхжүүлж болно. ARC/ORC ялгаа Гайхалтай нийтлэл байна.
Функцийн хатуу тодорхойлолтын горимыг нэмсэн бөгөөд энэ нь объектын өөрчлөлтийг нэмэлт шалгах боломжийг олгодог. {.experimental: "strictFuncs".} прагма эсвэл --experimental:strictFuncs түлхүүрээр идэвхжүүлсэн.
from түлхүүр үгийг одоо оператор болгон ашиглаж болно.
.noalias прагма нэмэгдсэн. Энэ нь энэ түлхүүр үгийн өгч чадах үр ашгийг дээшлүүлэхийн тулд C хязгаарлах түлхүүр үгтэй харьцдаг.
Тусгай анхааруулгыг одоо --warningAsError[X]:on|off-оор алдаа болгон хувиргаж болно.
Шинэ команд: nim r main.nim [args…], үндсэн.nim-ийг эмхэтгэж ажиллуулдаг ба --usenimcache-г багтаасан бөгөөд үр дүн нь $nimcache/main$exeExt-д хадгалагдах бөгөөд эх сурвалж өөрчлөгдөөгүй үед дахин эмхэтгэхээс зайлсхийхийн тулд nim c -r-тай ижил логикийг ашиглана. Жишээ:
nim r compiler/nim.nim --help # анх удаа эмхэтгэсэн
echo 'import os; echo getCurrentCompilerExe()' | ним r — # энэ ч бас ажилладаг
nim r compiler/nim.nim --fullhelp # дахин хөрвүүлэхгүйгээр
nim r --nimcache:/tmp main # хоёртын файлыг /tmp/main-д хадгална
Хөрвүүлэгч хаана алдаа/анхааруулах мессеж үүсгэснийг харуулдаг hint:msgOrigin гэсэн шинэ зөвлөмж нэмэгдлээ. Энэ нь мессежийн гарал үүсэл нь тодорхойгүй үед тустай.
Арын төгсгөлийг өөрчлөхийн тулд --backend:js|c|cpp|objc (эсвэл -b:js гэх мэт) туг нэмсэн.
Nimcache руу хоёртын файлуудыг гаргахын тулд --usenimcache тугийг нэмсэн.
Устгасан түлхүүрүүд: --oldNewlines, --laxStrings, --oldast, --oldgensym
Nimsuggest хэрэгсэл нь одоо зөвхөн дамжуулалтын мэдэгдлийг төдийгүй def query-ийн хэрэгжилтийн байршлыг харуулдаг.
Үүнээс гадна стандарт номын санд олон өөрчлөлт орж, олон алдаа зассан.
Эх сурвалж: linux.org.ru
