ABCL/f システムでは,その移植性を保つためにも, ABCL/f コードを C++ コードに変換することで実現されている. デバッガシステムの実装にあたっても,この移植性を保つため, 既存の C/C++ プログラムのデバッガである gdb を用いた実装を行っている. この際, C/C++ コンパイラや gdb に対して ABCL/f 対応の内部拡張を行うのではなく, コンパイラやgdb には逐次 C/C++ プログラムへの対応のみを想定している. 一方,C/C++ コードと ABCL/f コードの差を吸収するためには, 我々のシステムがコンパイル以前の C/C++ コードに対して 適切なライン情報を付加したり, コンパイラ出力などに対してコード変換を加える事で, デバッガの実現をおこなう. これは, 我々が対象としている環境,特に並列・分散計算機環境においては, 種々の計算機環境のために内部拡張されたコンパイラ・デバッガを 持つ事も多く, このため,移植性を保つ為には計算機環境ごとに異なるかも知れない C/C++ コンパイラ・デバッガに手をいれるのを避けなければいけないからである. 例えば,我々の実装対象としている分散メモリ並列計算機AP1000,ap1000+では, コンパイラは通常のC/C++ プログラムに一部改変が加えられている. デバッガに関しては,各ノード上にgdb を立ち上げる事ができるが, 実際にはユーザはホストマシンから gdb を扱うため,そのために拡張された 環境が提供されている.
ユーザインターフェイスについても, 各計算環境におけるデバッガの扱われ方が わからないため, (1) コマンドライン上からも,(2) Emacs インターフェイスを通しても gdbを用いる事が出来ることにしておき, (1) コマンドライン上からしかgdbを扱えない場合でも, デバッガとして使用に耐える物であり, (2) Emacs インターフェイス を通して使う場合は,コマンドライン上では 吸収できなかった ABCL/f と C++ の差をEmacs lisp プログラムを用いて 吸収するようにしている.
この様な実装方針に基づいたシステムの実現を行う為には, 以下の様な点について考える必要がある.