不思議なPerlリテラル

ちょっとパーサの実装の参考にするためにPerlの数値リテラルについて調べていたのですが、手元のPerl5.8.3では「1.1.1」のような式を正しく解析できないようです。 予想では「1.1.1」は数値「1.1」と文字列結合演算子「.」と数値「1」と解釈され、「1.1」と…

メタプログラミング

先日書いたC++のコードをコンパイルした場合、結果を静的に保持してるかどうかの検証です。 手っ取り早くobjdmpで見てみましょう。 ちなみに今回利用したコンパイラはgcc3.3.3のg++です。 値が3の場合(結果は8) 以下はmain関数の抜粋です。 08048684 : 80486…

続・Collatz予想

C++の特殊化されたtemplateは、KL1等のGHC(Guard Horn Clause)に基づく言語の条件付clauseに似ています。 (特殊化してない場合はguardが常にtrueのclauseでしょうか)試しに先日のCollatz予想のステップ数を求めるtemplateを、だいたい同じような形でKL1に対…

Collatz予想

キミならどう書く 2.0 - ROUND 2 - http://ll.jus.or.jp/2006/blog/doukaku2Collatz予想のステップ数を求めるコードを書こうかと思いましたが、私の気になる言語Scheme, Io, Ocamlは既に先を越されているようで無念至極、諦めかけたところC++で記述してる例…