| MINERVAデバッガでは、プログラム実行の途中で、予め定義された条件のところで中断
することが可能です。
このデバッガは、単純に動作し、MINERVAバイナリの中にコンパイルされています。
(技術的に細かくなりますが、メタプログラムではありません。)
MINERVAデバッガを使ってプログラム部分を実行したい場合は、
minervac -debugを使って、プログラム部分をコンパイルして下さい。
以下の例では、ブレークポイントの使用の仕方と呼び出しについて例示
します。詳細は、このディレクトリの下のCompile、Go
他のファイルを参考にして下さい。
start :-
breakpoint(app/3), % Breakpoint
breakif((app(A,B,C) :- C = [c])), % Condition
debug(app([1,2], [ b,c], L)). % Invokation
app([],L,L).
app([E|L1],L2,[E|L3]) :- app(L1,L2,L3).
最初のステップとヘルプ画面は、以下の通りです。
MINERVA 2.1 Development Server (c) 1996,99 IF Computer
http://www.ifcomputer.com/MINERVA mailto:support@ifcomputer.com
MINERVA License for evaluation purposes only
?- start.
CALL app([1,2],[b,c],_554)
trace: h
s)tep single pass
n)ext pass over
f)ail force 'fail'
c)ont continue till next breakpoint
b)acktrace show stack backtrace (activation stack)
a)bort abort
e)scape call 'break/0'
h)elp show this help message
app([1,2],[b,c],_554)
trace:
|