我正在开发一个建立在Rexx上的代码解析器。它是一个包含大约5000行或更多代码的单一文件脚本。我以前从未在Rexx上工作过。除此之外,可读性问题让我的生活变得更加艰难。所以,
有没有工具可以调试和理解Rexx代码?
发布于 2012-05-29 18:16:09
使用trace语句?最简单的跟踪模式是'A‘。这会使每条指令在执行前显示。您的指令将显示一个行号和前面的三个字符,以便您可以将其标识为脚本中的一行。
发布于 2012-05-30 17:57:56
维基百科有一个pretty good article on Rexx,它可以帮助你理解Rexx语法和程序结构。而且几乎所有的Rexx书籍都适用于您的环境,因为Rexx是非常跨系统的(在这方面与较年轻的Perl和Python语言类似)。在线书籍并不多,因为几乎所有关于Rexx的文章都是在web出现之前编写的,但Regina implementation的reference manual是这样写的,它是一本特别好的参考书。
发布于 2018-02-02 00:14:09
这个问题已经过时了,但我会分享我发现的对下一个提出这个问题的人有帮助的东西。前面已经提到了TRACE选项。我发现,在一小段代码中这可能是压倒性的,更不用说5000行或更多行了。
下面是我发现的一些有用的选项:
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
测试人员选择返回代码,方法是使用X键输入或退出程序以编辑源代码。
在例程标签后面的行上临时插入return将允许您在不删除所有调用的情况下不中断地运行代码。
我已经为z/OS编写了一个编辑宏,它在每个例程标签之后插入一个say *routine name*。它使用包含易于识别的短语的/* comment */插入代码,以简化清理。
这方面的受众很少,所以我不会在这里包含代码。
希望这对某些人有帮助。
https://stackoverflow.com/questions/10797018
复制相似问题