Ruby 是一种面向对象、指令式、函数式、动态的通用编程语言。在20世纪90年代中期由日本计算机科学家松本行弘(Matz)设计并开发。
遵守BSD许可证和Ruby License[11][注 1]。它的灵感与特性来自于Perl、Smalltalk、Eiffel、Ada以及Lisp语言。由Ruby语言本身还发展出了JRuby(Java平台)、IronRuby(.NET平台)等其他平台的Ruby语言替代品。
历史
Ruby的作者——松本行弘于1993年2月24日开始编写Ruby,直至1995年12月才正式公开发布于fj(新闻组)。之所以称为Ruby是取法自Perl,因为Perl的发音与6月的诞生石pearl(珍珠)相同,Ruby选择以7月的诞生石ruby(红宝石)命名。Ruby相较之下比其他类似的编程语言(如Perl或Python)年轻,又因为Ruby是日本人发明的,所以早期的非日文资料和程序都比较贫乏,在网上仍然可以找到早期对Ruby的资料太少之类的批评。
约于2000年,Ruby开始进入美国,英文的资料开始发展。 2004年,Rails框架诞生,Ruby更加广为人知,Ruby并于2006年为TIOBE获选为年度编程语言。此时为Ruby的全盛时期。 这一时期许多 GitHub 上有创意的项目以 Ruby 撰写,并且有 GitHub 与 Twitter 等重要网页选用 Ruby 编写。
2010年以后,Javascript 和 Python 这两个和 Ruby 定位类似的语言在 Google 等公司与一些社群的支持下越来越受到欢迎。 其中,V8引擎使得 Javascript 在同类型语言中有着突出的性能; NumPy 让 Python 可以更加优雅的进行科学运算。 2009年,以V8引擎制作的服务端平台 Node.js 发表。 2015年 机器学习知名项目 TensorFlow 发表,并选用 Python 作为官方 API 使用的语言。 Ruby 在多年被蚕食后走向衰微。 Ruby 现在仍为TIOBE编程语言流行排行前20名,但已经远远没有全盛时期受欢迎。
在 Ruby 逐渐失宠以后,开发团队开始有意的提升 Ruby 的性能。在 Ruby 2.X 版本后期提出“Ruby 3x3”项目,目标是希望 Ruby 3.0 版本能比 2.0 版本有 3 倍性能提升。 从 Ruby 3.0 开始,团队开始尝试在 Ruby 中加入 JIT 的功能。在 3.1 版本之后,Ruby 的团队与 Shopify 团队合作,尝试性地加入新的 JIT 编译器 —— YJIT。 并且 YJIT 在 Ruby 3.2 正式被引入。
Ruby 分类
因社区使用的 Discourse 是使用 Ruby 编写的。
有时候我们可能会对 Discourse 社区中的代码进行讨论,因此我们觉得有必要来创建一个 Ruby 语言分类。