![]() |
1
3
让我们区分一下 语义学 哈斯凯尔和GHC的实施。主要是因为我们对语言语义使用的术语与汇编语言不同,但也因为其他一些编译器的工作方式可能与GHC不同。
每个Haskell程序定义
GHC使用启发式来决定内联什么,以获得最佳的运行时性能。它通常会内联非递归的小表达式。我相信运行时系统维护当前正在评估的函数的调用堆栈,这与用C或其他命令式语言编译函数调用的运行时结果没有什么不同。 GHC提供 many options for printing intermediate stages of compilation |