作者LCamel (LCamel)
看板PLT
標題Re: [比較] 我為何鍾情於用 Scala 做為兵刃(三)
時間Tue Sep 6 18:01:35 2011
※ 引述《brianhsu (墳墓)》之銘言:
: 舉例來說,在 Functional Programming 中,如果我們要試著對 (-1, -2,
: -3, 0, 1, 2, 3) 這個數列裡的每一個原素做平方,最後再找出大於 5 的
: 有幾個時,做法大致如下:
試著用 J 寫看看 ...
#(#~5<|)*: _1 _2 _3 0 1 2 3
2
+/5<|*: _1 _2 _3 0 1 2 3
2
過程:
a =: _1 _2 _3 0 1 2 3
*: a
1 4 9 0 1 4 9
5<| *: a
0 0 1 0 0 0 1
(#~ 5<|) *: a
9 9
# (#~ 5<|) *: a
2
空白縮縮變成 #(#~5<|)*: a
或上面第2步 0 1 0 1 直接加起來
+/ 5<| *: a
2
空白縮縮變成 +/5<|*: a
好吧.. 我承認我全部知道的 J 也只有這麼多了.....
詳情請參考 "Learning J"
http://www.jsoftware.com/help/learning/contents.htm
解開可跑
http://www.jsoftware.com/stable.htm
http://en.wikipedia.org/wiki/J_(programming_language)
http://en.wikipedia.org/wiki/APL_(programming_language)
LCamel
===
莫明其妙的 bonus:
(^ o^)/
(^ o ^)/
(^ o^)/ 42
42
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.192.192.55