21. 動名詞與行程

英文法中,動名詞為帶有動詞動作的名詞,如同片語烹飪的藝術中的名詞烹飪;而行程 為一列等待執行的指令。 tie 連接詞 ` 用在使兩個動詞形成一個動名詞,而其原子可以作為執行的選項。故,若行程連接詞 @. 用在動名詞,其動詞之右引數的結果供用來選擇執行項。例如:
   g=: +`^
   a=:<
   2 a 3
1
  
   2 g@.a 3
8

   3 g@.a 2
5

   +:`-:`*:`%: @. (4&|@<.)"0 i. 10
0 0.5 4 1.73205 8 2.5 36 2.64575 16 4.5
由g@.a產生的動詞常常稱做一個定案案例敘述,因為該敘述選定動名詞中的某一案例來執行。

插入副詞 / 用在動名詞的方式同於用在動詞。例如:
   c=:3 [ x=: 4 [ power=: _1
   g/ c,x,power
3.25

   3+x^_1
3.25
動名詞的原子隨需要而重複。例如:
   +`*/1,x,3,x,3,x,1
125
上式相當於Horner的係數為 1 3 3 1 與變數為 x 的多項式的 efficient evaluation。

練習

21.1   Define a 函數 f such that (x=: 4) f c=: 1 3 3 1 得到 result used as 引數to +`*/ in Horner's method.

解答: f=: }.@,@,.


下個前個字彙索引主選單