【问题标题】:VM for Scheme with support for parallelisationVM for Scheme 支持并行化
【发布时间】:2010-12-08 08:24:36
【问题描述】:

我用 Java 写了一个Scheme evaluator,它做了一些并行化技巧。目前除了我以外的任何人都无法使用它,但我得到了一些结果。

前端和中端对于我的目的来说还可以,是我想要专注的部分,但我的后端很糟糕。它未经优化,速度缓慢或缺乏适当的尾调用优化。

因此,我想以现有虚拟机为目标。有人知道这个候选人吗?它不必是企业级虚拟机,但至少应该是

  • (相对)容易从 Scheme 中定位
  • (合理地)便携
  • 支持开箱即用的并行构造

【问题讨论】:

    标签: compiler-construction parallel-processing scheme interpreter vm-implementation


    【解决方案1】:

    如果你能让你的 Scheme 在Erlang VM 上编译和运行,那就太好了。已经有人是thinking seriously about this,还有a project that does the reverse

    【讨论】:

      【解决方案2】:

      Microsoft CLR/.NET VM 支持并行性并具有尾调用指令。 Mono 实现是免费软件并且非常便携。

      或者,您可以定位Racket,它支持parallel constructs,并且可以很容易地从您的Scheme系统定位。

      【讨论】:

        【解决方案3】:

        Dybvig 的Three Implementation Models For Scheme 提供了一个非常简单的基于堆的编译器/虚拟机实现,具有适当的延续和尾调用优化支持。代码在 Scheme 但很容易翻译。我用它来实现Scheme in Javascript

        【讨论】:

          【解决方案4】:

          另一个明显的目标 VM 是 Java VM,它为您带来了 Hotspot JITter 的额外优势以及与其他 Java 程序的互操作性。

          Bigloo 将 Scheme 编译为 Java VM 字节码或 .NET cil。

          【讨论】:

            猜你喜欢
            • 2017-12-20
            • 1970-01-01
            • 1970-01-01
            • 2021-12-17
            • 1970-01-01
            • 2015-09-30
            • 2017-01-23
            • 2018-04-21
            • 2015-07-10
            相关资源
            最近更新 更多