我正在研究基于 Rexx 构建的代码解析器。它是一个包含大约 5000 行或更多代码的单文件脚本。我以前从未在 Rexx 上工作过。除此之外,可读性问题让我的生活更加艰难。所以,
是否有任何工具可以调试和理解 Rexx 代码?
使用跟踪语句?最简单的追踪模式是“A”。这会导致每条指令在执行之前显示出来。您的指令以行号和前面的三个字符-显示,以便您可以将其识别为脚本中的一行。
Wikipedia 上有一篇关于 Rexx 的很好的文章,它应该可以帮助您理解 Rexx 语法和程序结构。几乎所有 Rexx 书籍都适用于您的环境,因为 Rexx 是非常跨系统的(类似于较年轻的 Perl 和 Python 语言)。网上书不多,因为几乎所有关于 Rexx 的文章都是在网络出现之前写的,但是Regina 实现的参考手册是,而且是一本特别好的参考书。
这个问题的日期很旧,但我会分享我发现对下一个提出这个问题的人有帮助的内容。已经提到的是 TRACE 选项。我发现这在一小部分代码中可能会让人不知所措,更不用说 5,000 行或更多行了。
以下是我发现有用的一些选项:
if counter < 25 then trace "A"
else trace "OFF"
say
后跟pull
. 所说的内容将保留在屏幕上,直到您按 Enter 键。AskIt:
parse pull comment
say comment
say 'enter "X" to exit program'
pull continue
if Continue \= "X" then return
exit
call AskIt "In routine that loops, counter=" counter
In routine that loops counter='##
enter "X" to exit program
return
say *routine name*
/* comment */