Tag: gadt

什么数据…在Haskell意味着什么?

我在omegagb的devlog上看到了这个片段: data ExecutionAST result where Return :: result -> ExecutionAST result Bind :: (ExecutionAST oldres) -> (oldres -> ExecutionAST result) -> ExecutionAST result WriteRegister :: M_Register -> Word8 -> ExecutionAST () ReadRegister :: M_Register -> ExecutionAST Word8 WriteRegister2 :: M_Register2 -> Word16 -> ExecutionAST () ReadRegister2 :: M_Register2 -> ExecutionAST Word16 WriteMemory :: Word16 -> […]

真实世界使用GADT

广义代数数据types的实际应用是否有很好的资源? 在haskell wikibook中给出的例子太短,不能让我了解GADT的真正可能性。 谢谢