Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
类型推理机haskell_Haskell_Type Inference - Fatal编程技术网

类型推理机haskell

类型推理机haskell,haskell,type-inference,Haskell,Type Inference,我正在从事一个项目,该项目要求我用Haskell编写自己的类型推理机 为什么统一算法对构建推理机很重要 我可以用C语言创建这种类型的推理机吗# 非常感谢 关于这个主题的一个很好的参考是马克·琼斯的“在哈斯克尔中键入哈斯克尔”。还有一个由克里斯·道恩转录的,也可以找到。此外,还解释了经典算法W(底层Haskell和ML风格的类型推断)并证明了其正确性 请记住,类型推断作为一个问题在很大程度上取决于您正在键入的源语言,而语言级别上的微小更改会严重影响语言。例如: 你有出租汽车吗 类型类 值还是单态

我正在从事一个项目,该项目要求我用Haskell编写自己的类型推理机

  • 为什么统一算法对构建推理机很重要
  • 我可以用C语言创建这种类型的推理机吗# 非常感谢

  • 关于这个主题的一个很好的参考是马克·琼斯的“在哈斯克尔中键入哈斯克尔”。还有一个由克里斯·道恩转录的,也可以找到。此外,还解释了经典算法W(底层Haskell和ML风格的类型推断)并证明了其正确性

    请记住,类型推断作为一个问题在很大程度上取决于您正在键入的源语言,而语言级别上的微小更改会严重影响语言。例如:

    • 你有出租汽车吗
    • 类型类
    • 值还是单态限制
    • 任何类型的模块
    对这些问题中的任何一个回答“是”或“否”,都将极大地改变您的类型推断算法。不过,你的问题需要更多的信息才能为你提供更具体的资源

    在Haskell中键入Haskell时,也没有试图处理真正的编译器可能必须处理的问题,比如生成带注释的AST版本,以便将来的编译能够知道某些内容是如何键入的,而不仅仅是它是如何键入的。如果您正在构建一个编译器,那么您几乎肯定会想要这样做