タグ

ブックマーク / qiita.com/nonstarter (2)

  • 『関数型プログラミングに目覚めた!』のレビュー(Day-2) - Qiita

    Day1のレビューからの続きです。Day3のレビューに続きます。 もう一度注意 私は計算機科学者ではありませんし、プログラミングについては単なる素人です。職業上の個人的な関心(文系の1,2年次学生に対する教育をどうするか)から書について思うところを記しているに過ぎませんのであまり技術的正確性を期待しないでください(そういう意味ではQiitaを利用すべきではなかったかもしれません)。以下で少しだけ書いたJavaScriptコードについてもJavaScriptをこの15年ほど触ってこなかったので大概なシロモノだと思いますが、問題があればお知らせください(一応どれも動作を確かめましたが)。 「0から999までの数を足すコードを書け」 Day2の主人公は悩み始めます(p. 44)。[0,1,2,...999]と手で並べ立てる気力はもちろんわかないし、なにより[0,1,2,3,4,5,6,7,8,

    『関数型プログラミングに目覚めた!』のレビュー(Day-2) - Qiita
  • 『関数型プログラミングに目覚めた!』のレビュー(Day-1) - Qiita

    var plus = function(a, b) { return a + b; }; var s = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] .reduce(plus); console.log(s); が対比されています。 [0,1,2,...,9]はダサいか? 書に対する感想として幾つか見かけたものに、「関数型コードの[0,1,2,...,9]という配列リテラルベタ書きの方が命令型コードよりダサいではないか!」というものがありました(0〜999まで足せと言われたらどうするつもりなのか!)。しかし、まさに0〜999まで足すにはどうしたらいいのだろう、という問いを書の登場人物自身が問い(p. 45)、配列リテラルではなくrange関数を使って配列[0..999]を生成するコード例が示されます(p. 109)3。ですので、何度も繰り返されるコード例[0,1,2,

    『関数型プログラミングに目覚めた!』のレビュー(Day-1) - Qiita
  • 1