【问题标题】:Anybody tried the Crystal Programming Language (machine-code compiled Ruby)? [closed]有人尝试过 Crystal 编程语言(机器代码编译的 Ruby)吗? [关闭]
【发布时间】:2023-03-28 10:08:01
【问题描述】:

与许多其他人一样,我始终坚信“对于 Ruby 而言,永远不会存在纯编译器,因为该语言过于动态,静态编译器无法工作。”

但我最近偶然发现了这些:

The Crystal programming language at GitHub

Statically compiled Ruby

这两个项目似乎都很有趣。它们可以为我们提供本机编译语言的速度(以及编译语言的商业上经常需要的混淆代码),同时保持 Ruby 的所有(或大部分)优雅和灵活性。添加一个好的支持库(或者,更有可能是访问现有 C++ 库的可能性),您就可以很容易地理解为什么这些东西会很有趣。

有人试过水晶语言吗? (我还没有,因为 ruby​​-llvm 的编译问题)

他/她对此有何感受?

您是否认为,考虑到这些设计选择,是否真的有可能为 Ruby 开发本机代码(机器代码)编译器(通过合理的努力和合理的时间)?它会有意义吗?

【问题讨论】:

  • 如果编译器是正确的,怎么会失去意义?
  • 是否有意义(即:有用开发这样的编译器,当然。我怎么会傻到认为编译器本身没有意义(即:正确)。
  • 据报道,JRuby 的运行速度与任何其他 Java 应用程序一样快(重量比重量)。我曾经使用 Smalltalk,并认为它是 slow ...但是,确实是我们拥有的 IDE 是滞后的。实际的 Smalltalk 模块本身是从 C 和 C++ 运行时使用的。我要说的是深奥的语言可以很快;就是爱迪生提到的99%的汗水。

标签: ruby crystal-lang


【解决方案1】:

我是水晶的开发者。目前,并非所有内容都从项目符号列表中实现。事实上,类才刚刚开始实施。

我真的很喜欢这个主意。但我需要更多地考虑如何实现它。而且我还需要更多的时间,呵呵。

第二篇文章有一个完全不同的方法,因为它不会引入一种新语言:它只会尝试编译 Ruby 的一个子集,或者可能会被编译为本地代码,但仍然会带来一些性能成本的动态(几个月前我和那篇文章的作者谈过)。

我对这两种方法的感觉:我真的认为它可能会发生。我们需要一种快速的语言,它具有优雅、易读、易于使用的语法和库(就像 Ruby 提供的那样)。

【讨论】:

  • 如果你能正常工作会很棒。我很想继续磨砺和抛光我的宝石,然后直接在 CPU 玻璃上使用它们。
  • 如果你想关注它的发展:github.com/manastech/crystal
【解决方案2】:

我是 Foundry 的开发人员;第二篇是我的。

关于同一主题的最新文章是"A language for embedded developers";或者您也可以通过订阅foundry-lang.org 来跟踪开发进度。

但是请注意,我的项目是商业项目,(至少在最初)不是开源的,并且主要专注于嵌入式开发。当然,您仍然可以在台式机或服务器上使用它。

我也是 ruby​​-llvm 维护者之一;请将您遇到的问题作为错误报告到project page

【讨论】:

    猜你喜欢
    • 2011-09-23
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    • 1970-01-01
    相关资源
    最近更新 更多