【发布时间】:2010-12-06 08:00:33
【问题描述】:
R 是a functional programming language,它的主要优点之一是它能够创建开放和透明的函数。
正如约翰钱伯斯所说in his excellent book "Software for Data Analysis: Programming with R":
计算是围绕函数组织的,这些函数可以封装特定的、有意义的计算结果,以及可以检查其正确性的实现。
“可重复的研究”和“可信赖的软件”等概念是 R 开发的核心。通常,只需键入不带括号的名称即可轻松检查函数。例如:
> which
function (x, arr.ind = FALSE)
{
if (!is.logical(x))
stop("argument to 'which' is not logical")
wh <- seq_along(x)[x & !is.na(x)]
dl <- dim(x)
...
我的问题是:如何在不下载R源代码的情况下实例化for()或if()等函数的内容?
编辑:顺便说一句,我知道这无助于查看可能从 R 调用的编译代码(例如 C、C++ 或 Java)。我真的想知道是否有一个输出 R 函数的 R 函数。
【问题讨论】:
-
But but but...
for和if是 R 语法的一部分,所以你不能只检查它们;它们是内置的。 -
(即它们本身不是函数,尽管视觉上相似。)
-
我明白了!它们不是函数。这就解释了。它们更像函数“函数”或其他符号,例如
-
但是您不能接受对错误问题的正确答案 :-) 您仍然希望来源看到解析器,您也可以在其中找到它。
-
:-) 我完全同意您对《钱伯斯》一书的评论。 《数据分析软件》强烈推荐阅读。