著者
根岸 純一 岩崎 英哉
雑誌
情報処理学会論文誌プログラミング(PRO) (ISSN:18827802)
巻号頁・発行日
vol.2, no.3, pp.48-56, 2009-07-10

遅延評価型関数型言語 Haskell で書かれたプログラムのデバッグは,処理系 GHC に組み込まれている GHCi デバッガを用いて,実行時の変数の情報を確認する等して行うことが一般的である.GHCi デバッガは,対話的な環境におけるコマンド入力により,ブレイクポイントの設定,ステップ実行,状況に応じた変数の評価や追跡機能等の機能を提供する.しかし,GHCi デバッガは,グラフィカルなユーザインタフェースによる,ステップ実行の可視化が必要であることが,開発者らにより指摘されている.そこで,本論文では GHCi デバッガに対して,デバッグ実行時の表示を追加し,操作を簡易化するための機構を,ウェブブラウザを利用したフロントエンドとして実装する.本フロントエンドは,GUI を用いてソースコードと評価順序を確認しつつ履歴を簡単に戻りながら遅延オブジェクトの内容を評価できるデバッグ支援環境を提供する.実装には,Python および jQuery ライブラリを用いた.本フロントエンドは,GHCi デバッガの出力を JavaScript を用いた動的 HTML として整形する機構とウェブブラウザの操作を GHCi デバッガのコマンドに対応付ける HTTP サーバの 2 つで構成されている.GHC とウェブブラウザが使用できる環境であれば,環境を選ばず簡単に導入が行えることが特長となっている.