Triple

is a tuple of length 3.

<

defn

(Fn [(Triple a b c), (Triple a b c)] Bool)

                        (< t1 t2)
                    

=

defn

(Fn [(Ref (Triple a b c) d), (Ref (Triple a b c) d)] Bool)

                        (= o1 o2)
                    

>

defn

(Fn [(Triple a b c), (Triple a b c)] Bool)

                        (> t1 t2)
                    

a

instantiate

(Fn [(Ref (Triple a b c) d)] (Ref a d))

gets the a property of a Triple.

b

instantiate

(Fn [(Ref (Triple a b c) d)] (Ref b d))

gets the b property of a Triple.

c

instantiate

(Fn [(Ref (Triple a b c) d)] (Ref c d))

gets the c property of a Triple.

copy

template

(Fn [(Ref (Triple a b c) d)] (Triple a b c))

copies a Triple.

delete

template

(Fn [(Triple a b c)] ())

deletes a Triple. Should usually not be called manually.

init

template

(Fn [a, b, c] (Triple a b c))

creates a Triple.

init-from-refs

defn

(Fn [(Ref a b), (Ref c d), (Ref e f)] (Triple a c e))

                        (init-from-refs a-val b-val c-val)
                    

initializes a Triple from member references.

prn

template

(Fn [(Ref (Triple a b c) d)] String)

converts a Triple to a string.

reverse

defn

(Fn [(Ref (Triple a b c) d)] (Triple c b a))

                        (reverse t)
                    

reverses a Triple by reversing its member positions.

set-a

template

(Fn [(Triple a b c), a] (Triple a b c))

sets the a property of a Triple.

set-a!

template

(Fn [(Ref (Triple a b c) d), a] ())

sets the a property of a Triple in place.

set-b

template

(Fn [(Triple a b c), b] (Triple a b c))

sets the b property of a Triple.

set-b!

template

(Fn [(Ref (Triple a b c) d), b] ())

sets the b property of a Triple in place.

set-c

template

(Fn [(Triple a b c), c] (Triple a b c))

sets the c property of a Triple.

set-c!

template

(Fn [(Ref (Triple a b c) d), c] ())

sets the c property of a Triple in place.

str

template

(Fn [(Ref (Triple a b c) d)] String)

converts a Triple to a string.

update-a

instantiate

(Fn [(Triple a b c), (Ref (Fn [a] a d) e)] (Triple a b c))

updates the a property of a (Triple a b c) using a function f.

update-b

instantiate

(Fn [(Triple a b c), (Ref (Fn [b] b d) e)] (Triple a b c))

updates the b property of a (Triple a b c) using a function f.

update-c

instantiate

(Fn [(Triple a b c), (Ref (Fn [c] c d) e)] (Triple a b c))

updates the c property of a (Triple a b c) using a function f.

zero

defn

(Fn [] (Triple a b c))

                        (zero)