VectorN

/=

defn

(λ [a, a] Bool)

=

defn

(λ [(Ref VN), (Ref VN)] Bool)

VN

module

Module

add

defn

(λ [(Ref VN), (Ref VN)] VN)

add-

defn

(λ [&a, &a] a)

angle-between

defn

(λ [(Ref VN), (Ref VN)] Double)

anti-parallel?

defn

(λ [(Ref VN), (Ref VN)] Bool)

dist

defn

(λ [(Ref VN), (Ref VN)] Double)

div

defn

(λ [(Ref VN), Double] VN)

dot

defn

(λ [(Ref VN), (Ref VN)] Double)

init

defn

(λ [Int, (Array Double)] VN)

lerp

defn

(λ [(Ref VN), (Ref VN), Double] VN)

mag

defn

(λ [(Ref VN)] Double)

mag-sq

defn

(λ [(Ref VN)] Double)

mul

defn

(λ [(Ref VN), Double] VN)

normalize

defn

(λ [(Ref VN)] VN)

parallel?

defn

(λ [(Ref VN), (Ref VN)] Bool)

perpendicular?

defn

(λ [(Ref VN), (Ref VN)] Bool)

random-sized

defn

(λ [Int] VN)

square-

defn

(λ [&a] a)

sub

defn

(λ [(Ref VN), (Ref VN)] VN)

to-string

defn

(λ [(Ref VN)] String)

unit-random

defn

(λ [] Double)

zero-sized

defn

(λ [Int] VN)

zip

defn

(λ [(λ [Double, Double] Double), (Ref VN), (Ref VN)] VN)

zip-

defn

(λ [(λ [a, b] Double), (Ref (Array a)), (Ref (Array b))] VN)