programming

もやもやするとき

プログラムを書いていて、ファイルにアクセスして何かを読み出すコードを書かなきゃいけないとき、もやもやする。標準出力に思った通りの出力結果を出させるために気を揉むときももやもやする。このもやもやは一体なんなんだろう、と考えてみたら、副作用が…

Common Lisp の処理系をインスコ

http://www.sbcl.org/Common Lispで一瞬だけ遊ぶ。SchemeもいいけどCLに浮気してみたい気もする。

ソートのアルゴリズムを動く絵で見る

The Sorting Algorithm DemoO-E Sort の動きが面白い。つーかShear Sort ってどんなアルゴリズムかしらねーけど速い。

東大はCもSchemeもやってたはず

404 Blog Not Found:Computer Science 向きの言語 Javaを「現場言語」としての特長は、Computer Scienceの授業においてはJavaを「使えない」ものとしている。(中略)Lambda Calculusや高階関数といった、抽象面においても、Javaというのは使い易い言語ではな…

いろいろあるぜ大域(ネスト)脱出

例外処理による大域脱出(複数のネストから脱出)が標準的な方法だと思ったら、じつはそんな面倒なことをしなくても各言語で色々と大域脱出の手法があるらしい、ということがわかったので、まとめてみる。 言語 脱出方法 説明 Java break [ラベル名]; ラベル名…

大域脱出ぐらい常識よねー

for とかループで深くネストしているときに、一気に目的のレベルまで処理を中断して脱出する、すなわち大域脱出をしたくなることってたまにあるよね。breakだと、1つ上のレベルまでしか脱出できないわけですが、昨年授業でJavaをやっていたときに何度かそれ…

コーディング規約とかコーディングスタイルとか

Pascalが好きこれは酷い。 マーチン・ファウラー氏は、「プロのプログラマというのは、チームのために自分のスタイルを曲げる覚悟がある」と言う(※1)。「覚悟」というと、ちょっと気負って聞こえるが、「自分のスタイルを曲げる」ということにストレスを…