【问题标题】:Is there a weakly typed / type unsafe lazy+functional programming language?是否有弱类型/类型不安全的惰性+函数式编程语言?
【发布时间】:2015-09-09 09:52:10
【问题描述】:

我想知道是否存在具有 JavaScript 样式类型的惰性+函数式语言。我见过的大多数惰性+函数式语言都非常安全。

有人可能会争辩说,可以在包含所有 JavaScript 类型的某些语言中定义一个类型。有没有人做过类似的事情?

【问题讨论】:

  • 我不知道你所说的 JavaScript 样式类型是什么意思。不过,也许你应该看看Lazy Racket
  • “可以在某些语言中定义包含所有 JavaScript 类型的类型”是什么意思?

标签: functional-programming weakly-typed


【解决方案1】:

我不认为“类型不安全”的语言可以是(纯)函数式的,因为纯函数式的一部分是表达式具有独立于机器表示的语义值。 (“类型不安全”通常用于表示一种语言,其中任何类型都可以通过识别具有相同机器表示的值来转换为任何其他类型——想想汇编或 C)。

不过,JavaScript 是非常类型安全的 --- 只是动态类型。没有理由不能拥有具有单一静态类型的纯函数式语言,例如 JavaScript。您可能真正想要搜索的是“纯功能 Lisp”。以下是一些结果:

【讨论】:

    【解决方案2】:

    希望我早点看到这个。如果“类型不安全”是指“动态类型”,那么是的,自 2011 年以来,我一直在研究一种动态类型、惰性、函数式语言,它具有强大的元编程支持,称为“休闲”。

    这是一个不完整的交互式功能概述,仅适用于 Chrome(因此请不要在 Firefox、Opera、Safari 等中打开此页面):http://zot.github.io/Leisure/?load=doc/LeisureFeatures.org

    项目页面在这里:https://github.com/zot/Leisure

    Leisure 编译为 JavaScript 并在 Chrome 和 Node.js 中运行。我现在也在开发一个基于 Leisure 的 shell :)。

    我还没有真正宣布这一点,因为我对堆栈跟踪不满意,但是——惰性语言需要特殊的堆栈跟踪支持。

    如果您对动态、惰性、函数式语言感兴趣,请查看并告诉我您的想法。

    【讨论】:

      猜你喜欢
      • 2013-02-03
      • 1970-01-01
      • 2011-02-03
      • 2012-12-12
      • 2023-03-11
      • 1970-01-01
      • 2016-05-10
      • 2019-07-04
      • 1970-01-01
      相关资源
      最近更新 更多