使用erlang构建C++编译器

mez*_*hic 2 c++ compiler-construction erlang

您是否认为使用Erlang构建非商业C++编译器可能是一个人(平均C++经验),可能专注于优化?

我不确定这是否完全不现实?人们有什么建议吗?

erlang是最好用的语言吗?我认为由于它的模式匹配会很好.我不确定它的并发性是否有助于编写编译器?

编辑:原因是我不能在工作中编写C++代码,我想了解更多关于语言的知识,因为我对低延迟工作很感兴趣.我认为通过编写编译器来了解输入和输出是最好的方法吗?

Ale*_*son 9

C++编译器有很多工作要做.不,真的,很多工作.C++是解析中最难(如果不是最难)的生产语言之一.即使只是前端.只是尝试阅读标准,它是超过一千页的密集文本.

你想用它做什么?LLVM具有Clang C/C++前端和非常友好且记录良好的中间表示.我建议你使用这样的东西(来自Erlang,适当调整或以其他方式)并专注于优化阶段 - 将解析留给其他人.

模式匹配确实是一个很好的编译器.所以Erlang/F#/ Scala/Ocaml/Haskell将在这里大放异彩.

  • @fast_code在Erlang中构建编译器既不会帮助你学习也不会提高你的C++能力,就像做爱不会帮助你学习或提高你的孩子抚养技能一样.它当然可以是一个有趣的过程,但它不符合您的既定目标. (13认同)
  • @DavidRodríguez-dribeas:我同意,标准表达方式的问题在于,角落案例并不总是与他们反对的原始陈述交叉引用,这使得在阅读陈述时很难知道它是否适用对你目前的情况.关于标准的任何稍微困难的问题引用2或3个不同段落的碎片:( (2认同)