使用LLVM实现Clean后端是否可行

时间:2012-12-26 22:04:31

标签: functional-programming clean-language

使用LLVM工具包为Clean实现后端是否可行?如果没有,绊脚石是什么?

另外,如果您碰巧知道Clean编译器用作IR的“ABC汇编程序”的良好参考,请将其包含在您的答案中。感谢。

2 个答案:

答案 0 :(得分:1)

如果没有任何关于ABC中级语言的文档,它将变得艰难(我一直无法找到任何东西)。

但是,这绝对是可能的。当你暗示自己时,你需要实现代码生成器来使用llvm - 其范围完全取决于ABC语言的复杂性。

Haskell的llvm-backend可能具有灵感:http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM

答案 1 :(得分:1)

您可能对以下文章感兴趣(因为ST部门搞砸了他们的服务器配置,我找不到它们):

Smetsers,J.E.W。编译CLEAN到摘要ABC-Machine Code,奈梅亨大学,技术报告89-20,1989年10月。描述如何将CLEAN翻译成(中间)ABC代码。

Koopman P.W.M.,Eekelen M.C.J.D. van,NöckerE.G.J.M.H.,Smetsers S.,Plasmeijer M.J.(1990)。 'ABCmachine: 基于序列堆栈的图形重写抽象机'。技术报告90-22,大学 奈梅亨。

另见http://clean.cs.ru.nl/ST_Publications