แแแแแแแแ แแแแก แแ แแ แฌแแแก แจแแแแแ, แแแแแฅแแแงแแแ แกแแกแขแแแแก แแ แแแ แแแแ แแแแก แแแแก Nim 1.6 แแแแแจแแแแ, แ แแแแแแช แแงแแแแแก แกแขแแขแแแฃแ แ แแแ แแคแแก แแ แจแแแฅแแแ Pascal-แแก, C++-แแก, Python-แแกแ แแ Lisp-แแก แแแแแแ. Nim แฌแงแแ แแก แแแแ แจแแแแแแแแแ C, C++ แแ JavaScript แฌแแ แแแแแแแแแแแแแจแ. แจแแแแแแแจแ แแแฆแแแฃแแ C/C++ แแแแ แแแแแแแแ แแแฃแแแ แจแแกแ แฃแแแแแ แคแแแแจแ แแแแแกแแแแ แ แฎแแแแแกแแฌแแแแแ แจแแแแแแแแแแก แแแแแงแแแแแแ (clang, gcc, icc, Visual C++), แ แแช แกแแจแฃแแแแแแก แแแซแแแแ แแแแฆแฌแแแ แจแแกแ แฃแแแแแก C-แกแแแ แแฎแแแก, แแฃ แแ แแแแแแแแแกแฌแแแแแ แแแจแแแแแก แฎแแ แฏแแแก. แแแแแแก แจแแแแ แแแแแแแ. แแแแแแแก แแกแแแแกแแ, Nim แแงแแแแแก แฉแแฆแ แแแแแแแก, แ แแแแ แช แแแแแแก แแแแแฏแแแแก. แแฎแแ แแแญแแ แแแแ แแแขแแแ แแแ แแแแ แแแแก แฎแแแกแแฌแงแแแแ แแ แจแแกแแซแแแแแแแแแ แแแแแแแก แกแแแชแแคแแแฃแ แ แแแแแแก (DSL) แจแแกแแฅแแแแแแ. แแ แแแฅแขแแก แแแแ แแแชแแแฃแแแ MIT แแแชแแแแแแ.
แแฎแแ แแแแแจแแแแแจแ แจแแกแแแฉแแแแ แชแแแแแแแแแ แแแแชแแแก:
- แแแแแแขแ iterable[T] แแแแกแ แแแแแแ แแแแก แขแแแแก แแแแฎแแ แชแแแแแแแ. แแแ แแแก แฏแแแ[T](a: แแแแแแแ แแแแแ[T]): T = var แจแแแแแ: T-แแกแแแแก ai a-แจแ: แจแแแแแ += ai แจแแแแแแก แแขแแแชแแแ แฏแแแ(แแแขแ(3)) == 0 + 1 + 2 # แแ 'แแแขแ( 3). แฏแแแ'
- แแแแแขแแแฃแแแ แแฅแกแแแ แแแแแขแฃแแ แแฎแแ แแแญแแ แ ".effectsOf" แแแแขแแชแแแแแกแแแแก แแคแแฅแขแแแแก แจแแ แฉแแแแแแ แแแแแงแแแแแแกแแแแก. แ แแแแกแแช แแแแแกแแแฆแแ แแแ (nimHasEffectsOf): {.แแฅแกแแแ แแแแแขแฃแแ: "strictEffects".} else: {.pragma: effectOf.} proc mysort(s: seq; cmp: proc(a, b: T): int) {.effectsOf: cmp. }
- แจแแแแแแแแแแแฃแแแ แแแแแ แขแแก แแฎแแแ แกแแแขแแฅแกแ โimport foo {.all.}โ, แ แแแแแแช แกแแจแฃแแแแแแก แแแซแแแแ แจแแแแแขแแแแ แแ แ แแฎแแแแ แกแแฏแแ แ, แแ แแแแ แแแ แซแ แกแแแแแแแแแแช. แแแแแฅแขแแแแก แแแ แแ แแแแแแแ แฌแแแแแแกแแแแก แแแแแแขแ std/importutils แแแแฃแแ แแ privateAccess API. แกแแกแขแแแแแแ {.all.} แ แแแแ แช system2 แแแแแ แขแ nil echo system2.ThisIsSystem แแแแแ แขแ os {.all.} echo weirdTarget
- แแแแแขแแแฃแแแ แฌแแ แขแแแแแแแ แแแแ แแขแแ แแแแก แแฅแกแแแ แแแแแขแฃแแ แแฎแแ แแแญแแ แ, แ แแแแแแช แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก แแแแแแแฃแ แ แแแแแแแก แแแแกแแฎแแ แชแแแแแแแแ. แแแแแ แขแ std/json แจแแแแแแ '.?'(a: JsonNode, b: untyped{ident}): JsonNode = a[astToStr(b)] แแแแแ j = %*{โa1โ: {โa2โ: 10}} แแขแแแชแแแ j.?a1.?a2.getInt == 10
- แแแแแขแแแแแ แแแ แแแแขแ แแแ แจแแแซแแแแ แแแแแแแแฃแแ แแงแแก แแแแแแก แแ แแฃแแแแขแแแจแ. แแแ แแ fn(a = 1, b = 2, body1, body2) = แแแฃแฅแแแแ fn(a = 1): bar1 do: bar2
- แแแแฎแแ แชแแแแแ แแแแฎแแแ แแแแแก แแแแ แแแแกแแแฆแแ แฃแแ แแแขแแ แแแแแแก แแฎแแ แแแญแแ แ (แแแแแแแแแ, "-128'bignum'"). func `'big'*(num: cstring): JsBigInt {.importjs: "BigInt(#)".} assert 0xffffffffffffff'big == (1'big shl 64'big) - 1'แแแแ
- แจแแแแแแแแแ แแฎแแ แชแแแแแแก แแ แซแแแแแแก โโeval:cmdโ, แ แแแ แแแ แแแแแ แแแฃแจแแแก Nim แแ แซแแแแแแแ แแ แซแแแแแแก แฎแแแแแแ, แแแแแแแแแ, โnim โeval: โecho 1โณ.
- แฃแแ แฃแแแแแงแแคแแแ แแฎแแ แแแญแแ แ แจแแฅแแแแ แแฅแแแแ แกแแแฃแแแ แ แแแคแแ แแแแแแแ nimscript backend-แแกแแแแก.
- แจแแชแแแแแก แจแแขแงแแแแแแแแแ แแแแจแแแแแแแแแ แแแคแแ แแแแแ แจแแชแแแแแกแแแ แแแแแแจแแ แแแฃแแ แแแแขแแฅแกแขแแก แกแแฉแแแแแแแแ. แแแแแ แแแแ แแแ แกแแแแแฃแ แ แจแแแแแแแแแ แแแคแ แแฎแแแแแแแ.
- แแแแจแแแแแแแแแ แแแฃแแฏแแแแกแแ "--gc:arc" แแ "--gc:orc" แแแแแแก แจแแแแ แแแแแแแแแก แแฃแจแแแแ.
- แงแแแแ backend-แแ แแแแฃแแฏแแแแกแ แแแแแก แกแแแฃแกแขแ แแ แจแแกแ แฃแแแแ แแแแแ แ แแชแฎแแแแแกแ แแ แแชแฃแ แแแ แฌแแ แขแแแแก แ แแชแฎแแแแแก แแแกแแแแแแแแแแแแ.
- JS, VM แแ nimscript backend-แแแแก แแแฃแแฏแแแแกแแแฃแแ แแแแกแแแแแแแ แแแแฃแแแแแแ, แ แแแแแแแช แแแ แ แแฎแแแแ C backend-แแแ แแฃแจแแแแแแแ (แแแแแแแแแ, std/prelude แแแแฃแแ). แแแแแแแแแแ stdlib แแแแฃแแแแแก แขแแกแขแแ แแแ C, JS แแ VM backend-แแแแ.
- แแแแแขแแแฃแแแ Apple Silicon/M1 แฉแแแแก, 32-แแแขแแแแ RISC-V, armv8l แแ CROSSOS แกแแกแขแแแแแแก แแฎแแ แแแญแแ แ.
- แแแแแขแแแฃแแแ แแแแฃแแแแ std/jsbigints, std/tempfiles แแ std/sysrand. แแแแจแแแแแแแแแ แแแฃแแฏแแแแกแแแ แแแแฎแแ แชแแแแแ แกแแกแขแแแแก, แแแแแแแขแแแแก, แจแแแแฎแแแแแแ, json, jsonutils, os, typetraits, wrapnils, แกแแแแแกแ แแ แฐแแจแแแแก แแแแฃแแแแจแ.
แฌแงแแ แ: opennet.ru