今日は午後から担当なのでそれまで家でケソキュウ。
数学は、暗算できるようになると脳内で全部完結するので、 コンピュータを使わないとできないプログラミングと違って、 いつでもどこでもできるわけで、 これはこれで非常に手軽で楽しい。
そういえばプログラミングでも、実際にコーディングしている時よりも、 コンピュータを使っていない時の方が生産性は高いかもしれん。
emacs にはキー「M-:」 で minibuffer にlisp表現を直書きして評価できる 機能があるが、この結果は minibuffer に表示されるだけで、 また minibuffer を使うと、ユーザの目からは失われてしまう。 しかも「結果を憶えなきゃ」と思うほど忘れる。そんなのわしだけ?
だから、せっかくの一行lispの結果がどっかに行ってしまうのは これは具合が悪い事で、きっとどうにかする方法があるに違いないと思っていた。 そこでこのほどちょっと調べてみました。
M-:で評価される関数は eval-expression だ。書式は以下のとおり
(eval-expression EXPRESSION &optional EVAL-EXPRESSION-INSERT-VALUE)
オプショナルな引数を non-nil にすると 結果を echo back するのではなく current buffer に書き込むことになっているのだ。 これが欲しかった機能だ。 このオプション引数は、実行前に prefix argment として 設定しておくと実行時に与える事ができる。 C-u のあとに何か数値を書けばそれが prefix argment として セットされるのはおなじみですな。
そんなわけで、さっそく 10 の階乗を計算してみた。3628800。 わしにはこんな出力、絶対に憶えられん。調べて良かった。 なお、階乗の計算自体は自分で勝手に作った関数を使った。
eval-expression のソースをみると、 values という変数に値をリストにして保存しているので、 昔の結果もこの変数をみれば参照できる。
values ((3628800 120) 3628800 120)
上は2回計算をしてから values を M-: で参照したあとの values。 ややこしくてすまん。
北岳のライチョウが居なくなってしまったのだそうだ。
ライチョウ。かつて私が山を始めた頃は、鳩と間違えるほど居たものだが。 そして、春には雛を連れて散歩しているのがよく見られたものだが。
デスマあけ関西旅行中の石田氏が拙宅に来訪。
浄瑠璃寺再び。
きれいで小さい謎の花。
加茂の 和菓子舗「小間安」のメレンゲ菓子。 たべたことのない味で、 しかも非常においしい。
海住山寺。恭仁からの登りがえげつない。
恭仁宮跡
石田氏出発
そのあとすぐに雨が降りだした さすが晴男