I'm really new to Nim and started playing around with 0.17.0 on Linux.

I went to Rosetta Code: https://rosettacode.org/wiki/Category:Nim to get code examples to run.

The following code examples wouldn't compile with: $ nim -d:release c <file.nim>

montecarlo.nim

import math randomize() proc pi(nthrows): float = var inside = 0 for i in 1..int64(nthrows): if hypot(random(1.0), random(1.0)) < 1: inc inside return float(4 * inside) / nthrows for n in [10e4, 10e6, 10e7, 10e8]: echo pi(n)

rootsofunity.nim

import complex, math proc rect(r, phi: float): Complex = (r * cos(phi), sin(phi)) proc croots(n): seq[Complex] = result = @[] if n <= 0: return for k in 0 .. < n: result.add rect(1, 2 * k.float * Pi / n.float) for nr in 2..10: echo nr, " ", croots(nr)

How do you make these examples work with 0.17?

I keep them updated in https://github.com/def-/nim-unsorted but I'm too lazy to update all of those Rosetta Code entries manually.

https://github.com/def-/nim-unsorted/blob/master/montecarlo.nim

https://github.com/def-/nim-unsorted/blob/master/rootsofunity.nim