แž€แŸ†แžŽแŸ‚แžแŸ’แž˜แžธแž“แŸƒแž—แžถแžŸแžถแžŸแžšแžŸแŸแžšแž€แž˜แŸ’แž˜แžœแžทแž’แžธ Nim 0.20

แž”แžถแž“แž€แžพแžแžกแžพแž„ แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž—แžถแžŸแžถแž€แž˜แŸ’แž˜แžœแžทแž’แžธแž”แŸ’แžšแž–แŸแž“แŸ’แž’ แž“แžนแž˜ 0.20.0. แž—แžถแžŸแžถแž“แŸแŸ‡แž”แŸ’แžšแžพแž€แžถแžšแžœแžถแž™แžขแž€แŸ’แžŸแžšแž‹แžทแžแžทแžœแž“แŸ’แž แž แžพแž™แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แžŠแŸ„แž™แž”แŸ’แžšแžพ Pascal, C++, Python แž“แžทแž„ Lisp แž€แŸ’แž“แžปแž„แž…แžทแžแŸ’แžแŸ” แž€แžผแžŠแž”แŸ’แžšแž—แž– Nim แžแŸ’แžšแžผแžœแž”แžถแž“แž…แž„แž€แŸ’แžšแž„แž‡แžถ C, C++, แžฌ JavaScript แžแŸ†แžŽแžถแž„แŸ” แž€แŸ’แžšแŸ„แž™แž˜แž€ แž€แžผแžŠ C/C++ แž›แž‘แŸ’แž’แž•แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž…แž„แž€แŸ’แžšแž„แž‡แžถแžฏแž€แžŸแžถแžšแžŠแŸ‚แž›แžขแžถแž…แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž”แžถแž“แžŠแŸ„แž™แž”แŸ’แžšแžพแž€แž˜แŸ’แž˜แžœแžทแž’แžธแž…แž„แž€แŸ’แžšแž„แžŠแŸ‚แž›แž˜แžถแž“ (clang, gcc, icc, Visual C++) แžŠแŸ‚แž›แžขแž“แžปแž‰แŸ’แž‰แžถแžแžฑแŸ’แž™แžขแŸ’แž“แž€แžŸแž˜แŸ’แžšแŸแž…แž”แžถแž“แž“แžผแžœแž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแž‡แžทแž C แž”แŸ’แžšแžŸแžทแž“แž”แžพแžขแŸ’แž“แž€แž˜แžทแž“แž‚แžทแžแž–แžธแžแž˜แŸ’แž›แŸƒแž“แŸƒแž€แžถแžšแžŠแŸ†แžŽแžพแžšแž€แžถแžšแŸ” แžขแŸ’แž“แž€แž”แŸ’แžšแž˜แžผแž›แžŸแŸ†แžšแžถแž˜แŸ” แžŸแŸ’แžšแžŠแŸ€แž„แž‘แŸ…แž“แžนแž„ Python แžŠแŸ‚แžš Nim แž”แŸ’แžšแžพแž€แžถแžšแž…แžผแž›แž”แž“แŸ’แž‘แžถแžแŸ‹แž‡แžถแžงแž”แž€แžšแžŽแŸแž€แŸ†แžŽแžแŸ‹แž–แŸ’แžšแŸ†แžŠแŸ‚แž“แŸ” แžงแž”แž€แžšแžŽแŸ แž“แžทแž„แžŸแž˜แžแŸ’แžแž—แžถแž–แž€แž˜แŸ’แž˜แžœแžทแž’แžธ Metaprogramming แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แž„แŸ’แž€แžพแžแž—แžถแžŸแžถแž‡แžถแž€แŸ‹แž›แžถแž€แŸ‹แž“แŸƒแžŠแŸ‚แž“ (DSLs) แžแŸ’แžšแžผแžœแž”แžถแž“แž‚แžถแŸ†แž‘แŸ’แžšแŸ” แž€แžผแžŠแž‚แž˜แŸ’แžšแŸ„แž„ แž•แŸ’แž‚แžแŸ‹แž•แŸ’แž‚แž„แŸ‹ แž€แŸ’แžšแŸ„แž˜แžขแžถแž‡แŸ’แž‰แžถแž”แŸแžŽแŸ’แžŽ MIT แŸ”

แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ Nim 0.20 แžขแžถแž…แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžถแžแŸ‹แž‘แžปแž€แžแžถแž‡แžถแž”แŸแž€แŸ’แžแž‡แž“แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แžŸแŸ’แžแžทแžšแž—แžถแž– 1.0 แžŠแŸ†แž”แžผแž„ แžŠแŸ„แž™แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžขแž“แŸ’แžแžšแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžถแžšแž‡แžถแž…แŸ’แžšแžพแž“แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž€แžถแžšแžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แž€แžพแžแžŸแžถแžแžถแžŸแŸ’แžแžทแžšแž—แžถแž–แžŠแŸ†แž”แžผแž„แžŠแŸ‚แž›แž“แžนแž„แžขแž“แžปแžœแžแŸ’แžแžŸแŸ’แžแžถแž“แž—แžถแž–แž“แŸƒแž—แžถแžŸแžถแŸ” แž€แŸ†แžŽแŸ‚ 1.0 แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžถแžแŸ‹แž‘แžปแž€แžแžถแž‡แžถแž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžšแž™แŸˆแž–แŸแž›แžœแŸ‚แž„แžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžแŸแžšแž—แžถแž– แžŠแŸ‚แž›แž“แžนแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž’แžถแž“แžถแžŠแžพแž˜แŸ’แž”แžธแžšแž€แŸ’แžŸแžถแž—แžถแž–แž†แž”แž‚แŸ’แž“แžถแžแž™แž€แŸ’แžšแŸ„แž™แž“แŸ…แž€แŸ’แž“แžปแž„แž•แŸ’แž“แŸ‚แž€แžŠแŸ‚แž›แž˜แžถแž“แžŸแŸ’แžแŸแžšแž—แžถแž–แž“แŸƒแž—แžถแžŸแžถแŸ” แžŠแŸ„แž™แžกแŸ‚แž€แž–แžธแž‚แŸ’แž“แžถ แžขแŸ’แž“แž€แž…แž„แž€แŸ’แžšแž„แž“แžนแž„แž˜แžถแž“แžšแž”แŸ€แž”แž–แžทแžŸแŸ„แž’แž“แŸแž•แž„แžŠแŸ‚แžš แžŠแŸ‚แž›แž˜แžปแžแž„แžถแžšแžแŸ’แž˜แžธแž“แžนแž„แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แžŠแŸ‚แž›แžขแžถแž…แž”แŸ†แž–แžถแž“แž›แžพแž—แžถแž–แž†แž”แž‚แŸ’แž“แžถแžแž™แž€แŸ’แžšแŸ„แž™แŸ”

แž€แŸ’แž“แžปแž„แž…แŸ†แžŽแŸ„แž˜แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแžŠแŸ‚แž›แž”แžถแž“แžŸแŸ’แž“แžพแžกแžพแž„แž“แŸ…แž€แŸ’แž“แžปแž„ Nim 0.20 แž‚แžบแŸ–

  • "แž˜แžทแž“แž˜แŸ‚แž“" แžฅแžกแžผแžœแž“แŸแŸ‡แžแŸ‚แž„แžแŸ‚แž‡แžถแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš unary, i.e. แž€แž“แŸ’แžŸแŸ„แž˜แžŠแžผแž…แž‡แžถ "แžขแŸ‡แžขแžถแž„ (แž˜แžทแž“แž˜แŸ‚แž“ a)" แžฅแžกแžผแžœแž“แŸแŸ‡แž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแž‰แŸ’แž‰แžถแžแž‘แŸ แž แžพแž™แž˜แžถแž“แžแŸ‚ "แžขแŸ‡แžขแžถแž„แž˜แžทแž“แž˜แŸ‚แž“แž‡แžถ" แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแž‰แŸ’แž‰แžถแžแŸ”
  • แž”แžถแž“แž”แžพแž€แž€แžถแžšแžแŸ’แžšแžฝแžแž–แžทแž“แžทแžแŸ’แž™แž™แŸ‰แžถแž„แžแžนแž„แžšแžนแž„แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แŸ†แž”แŸ’แž›แŸ‚แž„แž…แŸ†แž“แžฝแž“แž‚แžแŸ‹ แž“แžทแž„แž…แŸ†แž“แžฝแž“แž–แžทแžแž“แŸ…แžŠแŸ†แžŽแžถแž€แŸ‹แž€แžถแž›แž…แž„แž€แŸ’แžšแž„ แž–แŸ„แž›แž‚แžบแžงแŸ” แž€แž“แŸ’แžŸแŸ„แž˜ "const b = uint16(-1)" แžฅแžกแžผแžœแž“แŸแŸ‡แž“แžนแž„แž”แžŽแŸ’แžแžถแž›แžฑแŸ’แž™แž˜แžถแž“แž€แŸ†แž แžปแžŸ แžŠแŸ„แž™แžŸแžถแžš -1 แž˜แžทแž“แžขแžถแž…แž”แŸ†แž”แŸ’แž›แŸ‚แž„แž‘แŸ…แž‡แžถแž”แŸ’แžšแž—แŸแž‘แž…แŸ†แž“แžฝแž“แž‚แžแŸ‹แžŠแŸ‚แž›แž˜แžทแž“แž”แžถแž“แž…แžปแŸ‡แž แžแŸ’แžแž›แŸแžแžถแŸ”
  • แž€แžถแžšแž–แž“แŸ’แž›แžถแž“แŸƒ tuples แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžแŸแžš แž“แžทแž„แžขแžแŸแžšแžšแž„แŸ’แžœแžทแž›แž‡แžปแŸ†แžแŸ’แžšแžผแžœแž”แžถแž“แž•แŸ’แžแž›แŸ‹แž‡แžผแž“แŸ”
    แžงแž‘แžถแž แžšแžŽแŸ แžฅแžกแžผแžœแž“แŸแŸ‡แžขแŸ’แž“แž€แžขแžถแž…แž”แŸ’แžšแžพแž€แžทแž…แŸ’แž…แž€แžถแžšแžŠแžผแž…แž‡แžถ 'const (d, e) = (7, "eight")" แž“แžทแž„ "for (x, y) in f";

  • แž”แžถแž“แž•แŸ’แžแž›แŸ‹แž€แžถแžšแž…แžถแž”แŸ‹แž•แŸ’แžแžพแž˜แž›แŸ†แž“แžถแŸ†แžŠแžพแž˜แž“แŸƒแžŸแž‰แŸ’แž‰แžถ แž“แžทแž„แžแžถแžšแžถแž„แŸ” แžงแž‘แžถแž แžšแžŽแŸ แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž”แŸ’แžšแž€แžถแžŸ โ€œvar s: HashSet[int]โ€ แžขแŸ’แž“แž€แžขแžถแž…แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž—แŸ’แž›แžถแž˜แŸ— โ€œs.incl(5)โ€ แžŠแŸ‚แž›แž–แžธแž˜แžปแž“แž“แžถแŸ†แžฑแŸ’แž™แž˜แžถแž“แž€แŸ†แž แžปแžŸแŸ”
  • แž’แŸ’แžœแžพแžฑแŸ’แž™แž”แŸ’แžšแžŸแžพแžšแžกแžพแž„แž“แžผแžœแž–แŸแžแŸŒแž˜แžถแž“แž€แŸ†แž แžปแžŸแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž”แž‰แŸ’แž แžถแž‘แžถแž€แŸ‹แž‘แž„แž“แžนแž„แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš "แž€แžšแžŽแžธ" แž“แžทแž„แžŸแž“แŸ’แž‘แžŸแŸ’แžŸแž“แŸแžขแžถแžšแŸแž…แŸแž‰แž–แžธแž–แŸ’แžšแŸ†แžŠแŸ‚แž“แŸ”
  • แž€แžถแžšแž•แŸ’แž›แžถแžŸแŸ‹แž”แŸ’แžแžผแžšแž”แŸ’แžšแžœแŸ‚แž„แžแžถแžšแžถแž„แž€แŸ†แžกแžปแž„แž–แŸแž›แž’แŸ’แžœแžพแž˜แŸ’แžแž„แž‘แŸ€แžแžแŸ’แžšแžผแžœแž”แžถแž“แž แžถแž˜แžƒแžถแžแŸ‹แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹