swift-2.0编译器是自托管的吗?

时间:2015-08-19 22:11:48

标签: swift compiler-construction

编写Swift 2.0编译器的语言是什么? C ++?

自托管swift会更强大吗?更理想吗?

Swift的编译器API如何与F#或https://github.com/dotnet/roslyn进行比较?

1 个答案:

答案 0 :(得分:5)

  

编写swift-2.0编译器的语言是什么? C ++?

我们还不能确定它是否完全用C ++表示,因为苹果还没有发布消息来源。我们知道它建立在LLVM之上,所以很大的部分是C ++。可能有些部分是用Swift编写的,但Apple没有透露任何Swift / C ++集成,所以我有点怀疑它。

  

自托管swift会更强大吗?

不太可能。所有图灵完备语言在输出方面同样“强大”。有些算法在语言X中比在语言Y中更容易实现,但是gcc(用C和C ++编写)和clang(用C ++编写)已经实现了许多复杂的优化,所以这不是一个强有力的论据。

  

更可取吗?

也许。在实现某些目标的方便性方面,某些语言比其他语言更“强大”。例如,ML和Haskell等语言中的模式匹配支持在编译器实现中非常有用,但我不知道Swift的模式匹配是否特别有用。

  

Swift的编译器API如何与F#或https://github.com/dotnet/roslyn进行比较?

不可能说,因为Swift还没有公共编译器API。