エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント2件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
BrainScan - BrainF*ckプログラムを超高信頼化する - 数学猫の生活と意見
BrainScanというものを作ってみました。BrainFuck*1のソースコードモデル検査器です。プログラムがとり... BrainScanというものを作ってみました。BrainFuck*1のソースコードモデル検査器です。プログラムがとり得る全状態を探索し、異常が起きないか検査します。検査できるのは、ポインタがアンダーフローしないことバッファの値が0-255を越えないかどうか(-Rまたは--rangeオプションを付けたときのみ)コード中で!でマークされた位置に到達しないかどうか(したらエラーとみなす)です。エラーを検出すると、そこまでのトレースを出力します。アルゴリズムは単純で、深さ優先探索をするだけです。バッファの状態は区間の集合として保持されています。OCamlで書かれて、コンパイルするにはfindlibとextlibが必要です。例を見てみましょう。 $ ./brainscan '[]!' ! reached. 0: [ 2: ! BrainF*ckプログラムはコマンドライン引数として与えます。この例だと
2006/09/25 リンク