ついでにjavascriptだとおもしろいことができる
注意
spidermonkeyで実行しているので、ブラウザでの「print()」とは異なる動作をします。(rubyの「puts()」とほとんど同じような動作)
function strange(n){ if (n <= 0) { return } print(n); (function(s){ var n=s; print(n)})("strange") strange(n-1); (function(){ var n; print(n)})() print(n) } strange(2) // 2 // strange // 1 // strange // undefined // 1 // undefined // 2 // undefined
function f(a, str){ return a.map(function(e){return str+e}) } function g(str){ return function(a){return f(a, str);} } var a = [1,2,3,4,5] print(g("count is: ")(a)) // count is: 1,count is: 2,count is: 3,count is: 4,count is: 5