タグ

ブックマーク / hayamiz.hatenadiary.org (4)

  • GDBで歴史をさかのぼれるように!なりました! GDB 7.0 の新機能Reverse Debuggingを使ってみた - 日記を書く [・w・] はやみずさん

    Twitter上で、@alohakun が言及していた GDB の reverse debugging の機能を使ってみました。 GDB にトレースと逆実行機能入ったのか。 http://www.gnu.org/software/gdb/news/reversible.html http://twitter.com/alohakun/status/4481139191 まずは簡単な使い方を説明したあとに、インストール方法を説明します。 こんなときに便利 「変なこと」が起きている大体の場所がわかっているとき デバッグ中に、大体どこで変なことが起きているかはわかっているけど、細かい場所は特定できていないとき、reverse debuggingが効果を発揮します。 GDBでステップ実行をしていて、「しまった!行きすぎた!」という経験はよくあると思います。こういうとき、今まではプログラムの実行を最

    GDBで歴史をさかのぼれるように!なりました! GDB 7.0 の新機能Reverse Debuggingを使ってみた - 日記を書く [・w・] はやみずさん
  • Emacsでサッとメモして自分専用辞書を構築するjot-modeを書きました - 日記を書く [・w・] はやみずさん

    なんか車輪の再発明っぽいけど、自分の用途にフィットしてミニマムなものがみつからなかったので作ってしまいました。 jot-mode とは "単語"と"自分が書いたメモ"を関連付けるためのマイナーモードです。 jot-modeを書こうと思った理由は、code readingをしているときに「あれ、この関数ってなんだっけ」と思うことが何度もあったからです。 gnu globalを使えば、Emacs上で目的の関数の定義にジャンプして調べることができます。しかし、こういうときに欲しいのは「関数の定義」ではなく、「関数の(自分の)理解」なわけです。関数の定義(実装)やその周辺のコメントも有用ですが、「よーするにこういう役割の関数」とか自分の言葉で書いたメモを即座に参照したい。 この問題を解決するためにjot-modeを書きました。jot-itコマンド(デフォルトではM-j)を実行すると、現在カーソルの

    Emacsでサッとメモして自分専用辞書を構築するjot-modeを書きました - 日記を書く [・w・] はやみずさん
  • OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん

    OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr

    OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん
  • 2008-02-01

    id:poco_ryun の似顔絵を想像しながら書いてみた。 節子それ似顔絵やない、ただの妄想や。 ポイント 大きくてクリクリした目 長いまつげ マスカラでおめかし アイラインのなんとか セクシーな唇 どうですか > テスト期間だし、なんか作っとかないとね。 ということで、最近話題のYコンビネータとかそこらへんの話に絡めて、ラムダ計算のインタプリタ作ってYコンビネータ動かそうぜ、っていう。前に書いたラムダ計算インタプリタは、データの形式を入力形式そのままで引き回していたので、割とカオスなことになったので、今回はパーサ、構文木、など適当に部品化してみた。 記法 λxyz. xz(yz) <==> '(λ (x y z) x z (y z)) Gaucheは全角文字がシンボルとして使えるのでスバラシイですね! β簡約 Pでラムダ式をパースして、BBでいけるところまでベータ簡約しつづける(発散す

    2008-02-01
  • 1