If I had the power
^: (if)
|
The power conjunction has the obvious use of applying a verb repeatedly. Thus, if double=.+: , then double 3 is 6. We can use the power conjunction to specify an arbitrary number of applications: thrice=.^:3: double thrice 5 40 The number of times a verb is to be applied can be zero. This suggests a way to apply a verb conditionally.
reverse=.|.
if=.^:
tlh=.{:<{. NB. tail less than head
reverse if tlh 4 0 1 3 2
2 3 1 0 4
reverse if tlh 2 1 0 3 4
2 1 0 3 4
halve=.-:
even=.-.@(2:|]) NB. not 2 residue
halve if even 19
19
halve if even 160
80
|