!!
puzzles
%. 2 |_ =@ ++ $ :(add a a a) ++ a (mul 2 atom) --

the sample

glossary

%. calls a gate with the argument first and the gate second - the reverse of %-.

%.(8 dec) is 7, the same as %-(dec 8).

|_ 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=@.

;: turns a two-argument gate into an n-ary one, folding it across all the arguments.

;:(add 1 2 3) is 6.

irregular forms:

:(gate a b c) is ;:(gate a b c)

add sums two atoms.

(add 2 3) is 5.

%: 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.