関数型言語SML#のためのネイティブコードレベルデバッグ環境の実現方式

書誌事項

タイトル別名
  • Implementation Method of Native Code Level Debugging Environment for SML#

この論文をさがす

抄録

本論文では,ネイティブコードにコンパイルされたSML#プログラムをデバッグする環境を提案する.SML#は,C言語との直接連携や並列に動くマルチスレッドのサポートを持つ関数型言語である.これらSML#特有の機能を駆使して書かれた関数型のプログラムの動作は,関数型言語としての記号的なプログラムの評価規則だけでなく,C言語などと同様に,オペレーティングシステムの振舞いや,ネイティブコードレベルでのレジスタやメモリの扱いにも依存しうる.このようなプログラムのデバッグを行うためには,単にSML#のソースコードレベルで実行を追跡するだけでなく,SML#コンパイラが生成したマシンコードの振舞いを直接追跡できることが望ましい.以上のようなデバッグ環境を関数型言語においても実現することに向けた第一歩として,著者らはGDB(the GNU Project Debugger)を用いてSML#プログラムをデバッグ可能にするための方式の検討およびコンパイラの改良を行った.本論文では,その詳細を報告する.

This paper proposes a debugging environment for SML# programs compiled into native machine code. SML# is a functional programming language equipped with the seamless interoperability with the C language and native multithread support. By using these features, the programmer can enjoy both the declarative programming with the full-scaled functional programming language and system programming exploiting the operating system functionalities including multithreads. To debug an SML# program with such features, it is helpful to check the behavior of its compiled machine code with respect to the usage of the low-level memory, registers, and operating system features, as well as to trace the control flow of the source code. Towards realizing a software development environment that assists such the machine code level debugging for functional languages, we extend the SML# compiler to make GDB (the GNU Project Debbuger) available for SML# programs as well as C. This paper reports the details of the development.

収録刊行物

詳細情報 詳細情報について

  • CRID
    1050565162955061376
  • NII論文ID
    170000149765
  • NII書誌ID
    AA11464814
  • ISSN
    18827802
  • Web Site
    http://id.nii.ac.jp/1001/00191336/
  • 本文言語コード
    ja
  • 資料種別
    article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ