gpt4 book ai didi

programming-languages - Haskell 会是我的任务的好选择吗?

转载 作者:行者123 更新时间:2023-12-04 00:40:27 26 4
gpt4 key购买 nike

我正在开始一个新项目,但不知道要使用哪种语言。

我的“必备”要求是:

  • 能够以 native 方式在 Windows/LinuxMacO 上运行( native 可执行文件)——用户应该能够只运行 .exe(例如在 Windows 上时)并查看结果。
  • 没有运行时/解释器(没有 JVM、CLR 等)——一个文件下载应该足以运行应用程序。
  • 完整的 Unicode 支持。
  • 能够操作操作系统线程(创建它们,在多核 CPU 上并行运行多个任务等)
  • 相当快(Python级别的性能和更好)。
  • 拥有某种标准库来执行低级、平凡的任务。
  • 不是很利基,背后有一些社区可以提出问题。

  • 我的“很高兴”的要求是:
  • 语言应该是功能性的。
  • 它应该具有良好的字符串操作能力(不一定是正则表达式)。
  • 不是特别难学。

  • 我现在正在考虑 Haskell,但也要记住 OCaml。

    更新 :
    此应用程序旨在成为一个简单的语言解析和操作实用程序。

    请指教,如果我的选择是正确的。

    最佳答案

    haskell :

    1:它在 Linux、Windows 和 OS X 上运行,在许多情况下无需更改源代码。

    2:生成 native 二进制文件。没有虚拟机。

    3:完整的 Unicode 支持。支持所有 UTF 变体。

    4:全线程支持,加上如果您只想要并行化,那么您可以使用“par”并 100% 保证它只影响所用时间而不是语义。

    5:与 C 一样快,尽管可能需要进行一些调整,但所需的技能目前相当模糊,而且显然微小的调整会产生多个数量级的影响。

    6:包括标准库,“Hackage”有更多的包,包括一系列解析器库。

    7: IRC (#haskell) 和这里的友好社区。

    编辑:关于“很高兴”点:

    1:Haskell 是一种毫不妥协的纯函数式语言。

    2:它通常具有良好的字符串操作,如果你想要它们,可以使用正则表达式。正如有人在稍后的评论中所说,请注意内置“String”类型的效率(它将字符串表示为字符的链接列表),但 ByteString 和 Text 库将为您解决这个问题。

    3:难学吗?它远没有 C++ 复杂,而且可能比 Java 甚至 Python 简单得多。但它的纯函数性质意味着它与命令式语言非常不同。问题与其说是学习 Haskell,不如说是忘记了命令式思维模式。

    关于programming-languages - Haskell 会是我的任务的好选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4966552/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com