我正在尝试使用Gloss库的play函数,它接受一个事件处理函数,其第一个参数是类型Event(根据Hackage文档).我正在使用GHC 7.6.3和Gloss 1.8.0.1开发Windows.
这是我正在尝试做的草图:
import Graphics.Gloss
type GameState = [Int]
handleInputEvent :: Event -> GameState -> GameState
handleInputEvent _ = id -- Just stubbed in for now
Run Code Online (Sandbox Code Playgroud)
编译器错误是:
Not in scope: type constructor or class `Event'
Run Code Online (Sandbox Code Playgroud)
如果我进入WinGHCI并导入Graphics.Gloss并询问它的类型签名play,它看起来像这样:
play ::
Display
-> Color
-> Int
-> world
-> (world -> Picture)
-> (gloss-1.8.0.1:Graphics.Gloss.Internals.Interface.Event.Event
-> world -> world)
-> (Float -> world -> world)
-> IO ()
Run Code Online (Sandbox Code Playgroud)
我猜这与名称Event与其他模块发生冲突有关,因此不会以与Gloss中其他符号相同的方式导入.
我如何与Haskell谈论Gloss' Event?