Haskell 和 Visual Studio Code 错误

问题描述 投票:0回答:2

我开始学习 Haskel 编程语言并决定使用 Visual Studio Code。
我在 VS 中正确安装了所有 haskell 和 stack 以及一些 haskell 扩展。
当我创建项目并将 Lib.hs 导入 Main.hs 时,编译器会抛出错误,例如无法识别 Lib 模块。 代码可以执行,但 VS 中仍然出现错误,表明它们无法识别 Lib 模块中的函数。

在附件中我给出了一些例子和图片中的错误。

Lib.hs:

module Lib where

data Expr = Val Int | Add Expr Expr
                    | Mult Expr Expr


expr :: Expr
expr = Add (Mult (Val 2) (Val 5)) (Val 6) 

eval :: Expr -> Int

eval (Val n) = n
eval (Add x y) = eval x + eval y
eval (Mult x y) = eval x * eval y

Main.hs:

module Main where

import Lib

main :: IO ()
main =  putStrLn $ "Result is :   " ++ show (eval expr)

错误:

我知道这是初学者的问题,感谢您的帮助。 当然欢迎任何建议!

haskell visual-studio-code
2个回答
0
投票

import Lib ()
意思是“不要导入任何东西”。

删除

()
部分。


0
投票

这是 Haskell 发布者的 Haskell 扩展的一个小错误。顺便说一句,2024 年还没有解决。

我停用了它;还因为即使在数字化时它也会标记你的错误,这会分散我的注意力。

我只使用“Haskell 语法突出显示”,没有调试器,并且从终端进行编译。我不做大项目,这对我来说已经足够了。

© www.soinside.com 2019 - 2024. All rights reserved.