リストのジェネレータ
Mathematicaで単に Table[k, {k, 1000000}]
を評価させるとガリガリ言って戻ってこないけど Total[Table[k, {k, 1000000}]]
とか Take[Table[k, {k, 1000000}]]
は一瞬で答えが返ってくる.つまり単純にeagerな評価をしているのではない.まぁあれだけ成熟したCAS (Computer Algebra System) としては当たり前で,中ではさぞかし色々なことをやっているのだろう.
なお Table[f[k], {k, N}]
はリスト {f[1], ..., f[N]}
を返す関数(いわゆるジェネレータ)で,Total
はリストの要素の和を求め,Take
は先頭のn個を返す.
追記: ガリガリ言ってるのはGUIフロントエンドなんじゃないかという気がしてきた.うーむ...