Hoʻokuʻu ʻia ka ʻōlelo hoʻolālā Nim 1.2.0

Waiho ʻia e hoʻokuʻu ʻōlelo hoʻolālā ʻōnaehana Nim 1.2. Hoʻohana ka ʻōlelo Nim i ka paʻi paʻa a ua hana ʻia me ka maka ma Pascal, C++, Python a me Lisp. Hoʻohui ʻia ka code kumu Nim i kahi hōʻike C, C++, a i ʻole JavaScript. A laila, hoʻohui ʻia ka code C/C++ i loko o kahi faila hiki ke hoʻohana ʻia me ka hoʻohana ʻana i kekahi compiler i loaʻa (clang, gcc, icc, Visual C++), hiki iā ʻoe ke hoʻokō i ka hana kokoke i C, inā ʻaʻole ʻoe e noʻonoʻo i nā kumukūʻai o ka holo. ka ʻohi ʻōpala. E like me Python, hoʻohana ʻo Nim i ka indentation e like me nā mea hoʻokaʻawale poloka. Kākoʻo ʻia nā mea hana metaprogramming a me nā hiki ke hana i nā ʻōlelo kikoʻī domain (DSLs). Code papahana hoʻolako ʻia ma lalo o ka laikini MIT.

ʻO nā loli koʻikoʻi i ka hoʻokuʻu hou ʻana:

  • Hoʻokō ʻia kahi ʻohi ʻōpala hou Kōkua (“-gc:arc”).
  • Ma ka module "kōpaʻa"Hoʻohui i nā macros hou e hōʻiliʻili, dup a hopu.
  • Hoʻohui ʻia ka macro hou "me".
  • Ua hoʻohui ʻia kekahi hapa nui o nā kelepona hou i ka waihona maʻamau, me 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, etc.
  • Hoʻohui ʻia nā modula hou std/stackframes a me std/compilesettings.
  • Ua hoʻohui ʻia nā koho "—asm" (no ka nānā ʻana i ke code hui i hana ʻia) a me "—panics: on" no ka puka koi ʻia ma IndexError a me OverflowError hewa i hoʻohui ʻia i ka compiler, me ka ʻole o ka hiki ke keakea ʻia e ka mea hoʻohana "hoʻāʻo".
  • Hoʻomaikaʻi ʻia ka ʻike ʻana i nā mea hoʻoheheʻe ʻia.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka