题
R的编程范例是什么?
我相信自己熟悉不同概念范式的编程语言(在C ++,Java,Prolog和其他语言中具有编程,但虽然我已经写了自己的小r脚本,但我不确定哪个范例r应该代表。
解决方案
R支持面向对象和功能编程范式的混合。
在功能方面,它:- 具有第一类功能
- 对参数的懒惰评估
- 鼓励纯,副作用自由功能
但
- 它不实现尾呼叫递归
- ,它很容易创建非纯函数
-
它有三个内置OO范例:S3和S4,它们是不可变的,支持通用功能样式OO,以及可变的参考类(AKA R5),并支持更常见的消息传递样式OO。
-
S4受常见的含量的欧风格(clos)和达伦的影响。
-
还有许多贡献的包,提供了其他类型的OO:
proto
,mutatr
,R.oo
,OOP
。
但
- 内置OO工具在句法糖的方式提供。
其他提示
根据 wikipedia (重点添加),
R支持程序编程,具有函数和面向对象编程,具有通用功能。泛型函数根据它传递的参数类型而不同。换句话说,通用函数识别对象的类型,然后选择(调度)特定于该类型对象的函数(方法)。例如,R有一个通用的print()函数,可以使用简单的“print(ObjectName)”语法在r中几乎打印的几乎每种类型的对象。
不隶属于 StackOverflow