sileのブログスマートフォン用の表示で見るsileのブログこの広告は、90日以上更新していないブログに表示しています。speedForthを触ってみたくなったので、試しにハノイの塔を実装してみた。lispとC++でも実装し、Forthとの処理速度を比較してみた。lispの処理系にはSBCLを、Forthの処理系にはgforth及びVFX-Forthを使用したForthでの実装(gforth)gforthはバイトコードタイプのForth実装。再帰数表示hanoi-printワードをコメントアウトしなかった場合の実行結果。okgforthでの計時。ワードの定義はgforthのそれと同様なので計時部分だけ掲載。lispでの実装(SBCL)実装及び計時結果。33554431)C++での実装(GCC)ソースコード。0.17秒user0m0.170ssys0m0.000sハノイの塔での処理速度比較した結果は、C++(0.17秒)、Forth-VFX(0.20秒)、lisp(0.40秒)、Forth-gforth(3.34秒)、の順となった。Forthも処理系によっては、C++と同程度の速度がでるみたい。末尾再帰部分を手動でループに変換したソースコードも書いてみたので、載せておく。この変換によって、gforthの場合は処理時間が短く(2.32秒)なったけど、VFX-Forthでは逆に長く(0.35秒)なってしまった。読者になる検索リンクgithub最新記事RustでMD5ハッシュを計算するRustとSBCLでのDAWG構築性能の比較メモEmacsのファイル保存時に自動的にrustfmtが適用されるようにする現在時刻をUNIXタイムスタンプ形式で取得するloglevelとseverityの使い分けメモ月別アーカイブ最新記事RustでMD5ハッシュを計算するRustとSBCLでのDAWG構築性能の比較メモEmacsのファイル保存時に自動的にrustfmtが適用されるようにする現在時刻をUNIXタイムスタンプ形式で取得するloglevelとseverityの使い分けメモ注目記事ブクログqiitasileのtips人気エントリーはてなブログをはじめよう!sileさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。