the same door, two samples — that is what a door is for.
=/ pins a named value (a face) into the subject for the lines below it.
name=value optionally declares the type.
=/(a 3 (add a a)) is 6.
|_ makes a door: a core carrying a sample, with many named arms.
~(arm door value) sets the sample, then pulls that arm.
a door is a gate with many named entry points.
=/ d |_ n=@ ++ inc (add n 1) -- ~(inc d 4)
is 5.
$= wraps a mold with a face, naming the value it produces.
$=(x @) is the mold x=@.
%: calls a gate with several arguments, gathering them into one sample.
%:(add 2 3) is 5.
irregular forms:
(gate a b c) is %:(gate a b c)
mul multiplies two atoms.
(mul 3 4) is 12.
add sums two atoms.
(add 2 3) is 5.
~() pulls an arm from a door, setting the door's sample: ~(arm door value).
~(wyt by (malt `(list [@ @])`~[[1 2] [3 4]])) is 2.