2015-04-07 24 views
5

Mam problemy z przekazywaniem funkcji matematycznych (procs) w Nim (wersja 0.10.2).przekazywanie funkcji w nim

import math 

var s1 = @[1.1, 1.2, 1.3, 1.4] 
var s2 = map(s1, math.sqrt) 

pojawia się błąd

Error: 'sqrt' cannot be passed to a procvar 

Gdybym napisać funkcję otoki dla sqrt, to działa dobrze.

proc fxn(x: float): float = math.sqrt(x) 
var s2 = map(s1, fxn) 

Używam pierwiastek kwadratowy i map jako przykłady, ale w końcu będę przechodzącej sqrt (i innych procs matematycznych) do innego proc. Czy istnieje sposób, aby to zrobić bez pisania funkcji opakowania?

Odpowiedz

Powiązane problemy