有没有单一的范式语言

时间:2013-06-28 17:07:57

标签: programming-languages paradigms

您总是会听到广告为多范式的编程语言。我想我明白这意味着什么,但我想知道是否有任何语言是严格的单一范式。

据我所知,四个主要范例是功能性,命令式,逻辑性和面向对象。

当然还有其他人。维基百科使用以下列表: 并发,约束,数据流,声明,分布式,功能,元编程,通用,命令式,逻辑,反射,面向对象,管道,视觉和基于规则。

或者我是否完全忽略了范式是什么意思?

1 个答案:

答案 0 :(得分:1)

将任何语言定义为“严格单一范式”的问题在于,通过图灵完整性的优点,理论上可以创建与创建语言不同的范式的语言。

示例:C没有对象,因此很难说C遵循面向对象的范例,但我可以在C中编写面向对象的语言。

许多语言都非常努力地成为严格的单一范式(参见:Haskell表示功能性示例,Javascript表示面向对象),但是当它完成所有这些并完成时,编程范例就是思维方式而不是语言的继承特征。 Python是我脑海中最好的例子,它可以互换地被视为功能或面向对象或命令式,取决于编写它的人的风格。

尽管如此,即使它满足了深层次的求知欲,但为了简化可读性和可维护性,通常不会在代码中混合使用范式。当然,有很多例外,但试图保持相同的范式思考你的代码。