Nim програмчлалын хэлний хувилбар 1.4.0

Системийн програмчлалын хэлний 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

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster