Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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 Yesod书示例聊天和搭建_Haskell_Yesod - Fatal编程技术网

Haskell Yesod书示例聊天和搭建

Haskell Yesod书示例聊天和搭建,haskell,yesod,Haskell,Yesod,我试图从脚手架站点的工作中制作聊天示例 我想我已经纠正了几乎所有我必须纠正的地方,但所有这些对我来说都是全新的(这是我的第一个“真正的”Haskell项目),我对所有的修改都不是很有信心;此外,我真的被困在第7点。如果有必要的话,你能评论一下下面的几点吗?并帮助我完成第7步。(在粗体部分问题/备注中) 复制/粘贴我的网站根目录中的Chat.hs和Chat/Data.hs 将import Chat as import和import Chat.Data as import添加到import.NoFo

我试图从脚手架站点的工作中制作聊天示例

我想我已经纠正了几乎所有我必须纠正的地方,但所有这些对我来说都是全新的(这是我的第一个“真正的”Haskell项目),我对所有的修改都不是很有信心;此外,我真的被困在第7点。如果有必要的话,你能评论一下下面的几点吗?并帮助我完成第7步。(在粗体部分问题/备注中)

  • 复制/粘贴我的网站根目录中的Chat.hs和Chat/Data.hs
  • import Chat as import
    import Chat.Data as import
    添加到import.NoFoundation
  • 在Data.hs中添加IO、Bool、return、Maybe(Nothing)、($)的导入,因为扩展名NoImplicitPrelude在上看起来非常笨拙。。。我们是否必须导入每个新文件上的所有标准运算符?
  • 在Fundation.hs中,在
    App
    记录中添加
    getChat
    (在
    appHttpManager
    apploger
    之后)
  • 在Fundation.hs中,为App添加YesodChat实例:我必须修改
    Just-uid
    案例中的
    getUserName
    (在聊天的原始示例中,它只是
    Just-uid->return-uid
    ):


    我想我必须在
    appLogger>=makeYesodLogger
    appStatic之后写一些类似于
    getChat>=Chat
    的东西,实际上你几乎一路都到了那里。我想您只需要将线路更改为:

    getChat <- fmap Chat newChan
    
    Application.hs:60:36: Warning:
    
    Fields of ‘App’ not initialised: getChat
    In the expression: App {..}
    
    getChat <- fmap Chat newChan
    
    chan <- newChan
    let getChat = Chat chan