【发布时间】:2012-03-21 21:04:24
【问题描述】:
我有一个关于在 Haskell 中设计程序的最佳方式的问题。我正在编写一个物理模拟器,这是我在标准命令式语言中做过很多的事情,通常主要方法看起来像:
while True:
simulationState = stepForward(simulationState)
render(simulationState)
我想知道如何在 Haskell 中做类似的事情。我有一个函数step :: SimState -> SimState 和一个函数display :: SimState -> IO () 使用HOpenGL 来绘制模拟状态,但是我不知道如何在各种“循环”中执行此操作,因为我可以使用所有解决方案提出涉及某种可变性。当谈到 Haskell 时,我有点菜鸟,所以我完全有可能错过了一个非常明显的设计决策。此外,如果有更好的方法来构建我的整个程序,我会很高兴听到。
提前致谢!
【问题讨论】:
标签: haskell simulation