Fork

From J Wiki
< Help(Redirected from Help/Primer/Fork)
Jump to navigation Jump to search


<=   =>

A train of three verbs is a fork and is evaluated as follows:

  (f g h) y	evaluates as	(f y) g (h y)
x (f g h) y	evaluates as	(x f y) g (x h y)


A simple example of a fork is the sequence of three verbs +/ % # . The / adverb takes its left argument + and returns a verb, so there is a sequence of three verbs. Let's examine the use of this fork monadically.

   (f  g h) y	evaluates as	(f  y) g (h y)
   (+/ % #) y	evaluates as	(+/ y) % (# y)


This can be read as: sum over the argument divided by the count of the argument. This is the definition of the mean or average.

   (+/ % #) 5 9 12
8.66667
   (+/ % #) i.9
4


You can now define mean as a fork with +/ % # .

   mean =. +/ % #
   mean i.9
4


<=   =>

Primer Index               Hover to reveal titles   -   Click to access   -   Current page is highlighted
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
45 46 47 48
50 51 52 53 54 55 56 57
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
97 98 99 100 101 102 103 104 105 106