什么是Crystal编程语言?这是一种静态类型的,已编译的,面向对象的语言,其语法在很大程度上受到了Ruby的启发。
其网站上的承诺是该语言的速度与C一样快,与Ruby一样流畅。这句话听起来令人兴奋,并且使您想检查Crystal与Ruby相比有多快。当然,这不是一个公平的比较,因为一种是编译语言,另一种是解释语言)。
让我们用Ruby和Crystal编写一些代码,以生成给定数字的斐波那契数列。然后,我们可以看到在序列中找到第46个数字(即1,836,311,903)需要花费多少时间。您将在稍后看到我为什么选择此号码。
Ruby:
def fibonacci(n) |
Crystal:
def fibonacci(n) |
我的机器上的结果:
语言运行内存使用情况
Ruby 2.6.5p114(2019-10-01修订版67812)运行时间:1:54.46分钟 内存:16.10M |
Crystal版本快11倍。
其他资源
- 官方文件
- 红宝石Ruby主义者的Crystal水晶
- 水晶运动
- 水晶碎片的数据库 -就像水晶的Ruby Toolbox
- 很棒的Crystal-很棒的Crystal库,工具,框架的集合
- 编程水晶 -Ivo Balbaert和Simon St.Laurent的书