๋‹˜ 1.2.0 ๋ฆด๋ฆฌ์Šค

Nim ์‹œ์Šคํ…œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ์ƒˆ ๋ฒ„์ „์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋” ๊ฐ•๋ ฅํ•œ ์œ ํ˜• ๋ณ€ํ™˜์œผ๋กœ ์ธํ•ด ๋ฒ„์ „ 1.0๊ณผ ๋ถ€๋ถ„์ ์œผ๋กœ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜์ด ๊ฒฝ์šฐ -useVersion:1.0 ํ”Œ๋ž˜๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ํ˜์‹ ์€ --gc:arc ์˜ต์…˜์œผ๋กœ ํ™œ์„ฑํ™”๋œ ์ƒˆ๋กœ์šด ๊ฐ€๋น„์ง€ ์ˆ˜์ง‘๊ธฐ์ž…๋‹ˆ๋‹ค. ์–ธ์–ด์˜ ์ €์ž Andreas Rumpf๋Š” ARC์˜ ์ด์ ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๊ธฐ์‚ฌ๋ฅผ ์ž‘์„ฑํ•  ์˜ˆ์ •์ด์ง€๋งŒ ์ง€๊ธˆ์€ ๋‹ค์Œ์„ ์ฝ์„ ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ทธ์˜ FOSDEM ๊ฐ•์—ฐ์œผ๋กœ, ๋ฒค์น˜๋งˆํฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

  • ์ด์ œ ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์ƒ์„ฑ๋œ ์–ด์…ˆ๋ธ”๋Ÿฌ ์ฝ”๋“œ๋ฅผ ๋ณด๋‹ค ์‰ฝ๊ฒŒ โ€‹โ€‹๊ฒ€์‚ฌํ•  ์ˆ˜ ์žˆ๋„๋ก --asm ์˜ต์…˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • align pragma๋Š” C/C++์˜ alignas์™€ ์œ ์‚ฌํ•˜๊ฒŒ ๊ฐœ์ฒด ๋ณ€์ˆ˜ ๋ฐ ํ•„๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • =sink ์—ฐ์‚ฐ์ž๋Š” ์ด์ œ ์„ ํƒ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์ด์ œ =destroy์™€ copyMem์˜ ์กฐํ•ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ฒด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ถ€ํ˜ธ ์—†๋Š” ์ •์ˆ˜๋กœ์˜ ๋ณ€ํ™˜์€ ๋Ÿฐํƒ€์ž„์— ํ™•์ธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์„ธ๋ถ€ ์ •๋ณด https://github.com/nim-lang/RFCs/issues/175
  • lvalue์˜ ์ƒˆ ๊ตฌ๋ฌธ: var b {.byaddr.} = expr, import std/decls๋ฅผ ํ†ตํ•ด ํฌํ•จ๋จ
  • ์ปดํŒŒ์ผ๋Ÿฌ๋Š” IndexError ๋˜๋Š” OverflowError์™€ ๊ฐ™์€ ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๋ฅผ try๋กœ ํฌ์ฐฉํ•  ์ˆ˜ ์—†๋Š” ์น˜๋ช…์ ์ธ ์˜ค๋ฅ˜๋กœ ๋ฐ”๊พธ๋Š” ์ƒˆ๋กœ์šด --panics:on ์˜ต์…˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋Ÿฐํƒ€์ž„ ํšจ์œจ์„ฑ๊ณผ ํ”„๋กœ๊ทธ๋žจ ํฌ๊ธฐ๋ฅผ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ƒ์„ฑ๋œ JS ์ฝ”๋“œ๋Š” ๊ณต๋ฐฑ๊ณผ ํƒญ์ด ๋’ค์„ž์ธ ๋Œ€์‹  ๊ณต๋ฐฑ๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ํ˜„์žฌ Nim ๋ชจ๋“ˆ์—์„œ ์ƒ์„ฑ๋œ C(++) ํŒŒ์ผ์— ๋Œ€ํ•œ ํŠน์ˆ˜ C(++) ๋ฐฑ์—”๋“œ ์˜ต์…˜์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” .localPassc pragma์— ๋Œ€ํ•œ ์ง€์›์ด ์ปดํŒŒ์ผ๋Ÿฌ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Nimpretty๋Š” ๋” ์ด์ƒ ๋“ค์—ฌ์“ฐ๊ธฐ์— ๋Œ€ํ•ด ๋ถ€์ •์ ์ธ ์ธ์ˆ˜๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํŒŒ์ผ์ด ์†์ƒ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ๊ฐ€์ ธ์˜ค๊ธฐ ์„คํƒ•์„ ํ†ตํ•ด ์—ฐ๊ฒฐ๋œ ์ƒˆ ๋งคํฌ๋กœ(collect, dup, capture)๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋งŽ์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ ๋งŽ์€ ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : linux.org.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€