TriplePowersOf2=: (3&*)@(2&^)
TriplePowersOf2 0 1 2 3 4
3 6 12 24 48
CubeOfDiff=: (^&3)@-
3 4 5 6 CubeOfDiff 6 5 4 3
_27 _1 1 27
f=: ^@- 最右邊的函數先被雙邊執行,
若可行,第二個接著被單邊執行。
5 f 3
7.38906
f 3
0.0497871
g=: -@^
5 g 3
_125
g 3
_20.0855
連接詞,如同副詞,優先於動詞; 兩者的左引數都為其前方所有的動詞片語。因此,前面的定義中有些
(不是全部) 括號可以省略。例如:COD=: ^&3@- 3 4 5 6 COD 6 5 4 3 _27 _1 1 27 TPO2=: 3&*@(2&^) TPO2 0 1 2 3 4 3 6 12 24 48 tpo2=: 3&*@2&^ 錯誤,因為連接詞 @ 只定義給動詞右引數。 |domain error | tpo2=: 3&*@2&^
練習
| 8.1 | Cover comments on 右,與state effects of programs.
n cover programs與rewrite m from 英語statements:
mc=: (+/%#)@|: Means of columns of表格
f=: +/@(^&2) Sum of squares of list
g=: %:@f Geometric length of list
h=:{&' *'@(</) Map of 比較 (雙邊)
k=: i. h i. Map (單邊)
map=: {&'+-* %#$' 7-character map
MAP=: map@(6&<.) Extended domain of map
add=: MAP@ (i.+/i.) Addition 表格map
|