是否有现有服务来缩小R代码?似乎很容易找到JS minifier,我还没有找到类似于R的东西。我对Atom扩展或基于Web的服务感到满意
答案 0 :(得分:1)
您可以利用R的内部解析器来缩小代码。例如,如果您有一些文字,如:
myList <- list(a = 1,
b =2
,c = list( a = 1,
b = 2)
)
myOtherList <- list(a = 1,
#My comment
b = 1)
在名为myFile.R
的文件中您可以解析表达式,然后将其强制转换为某个字符,例如:
paste(as.character(parse(text = text)),collapse = "\n")
将每行输出一个表达式,不带注释:
myList <- list(a = 1, b = 2, c = list(a = 1, b = 2))
myOtherList <- list(a = 1, b = 1)
这是使用已解析代码并对其进行修改的有趣示例。解析作为一种工具为开发人员创造了一个全新的机会世界。我建议阅读Peter Norvig在python中的lisp解释器作为编码语法,解析和抽象语法树(AST)的入口点:http://norvig.com/lispy.html
如果您确实想要以符号方式缩小代码(例如,将myVarName
替换为a
)您将能够使用返回的AST并将所有变量重新分配给“缩小”版本,然后转储代码。
希望这有帮助!