我了解到Coq是用OCaml编写的,但其规范语言为Gallina。除了它们都是功能性编程语言以外,这两种语言又有何关系?
答案 0 :(得分:2)
这是一个充满挑战的问题。
Gallina可以独立于OCaml而存在,尽管它是Lambda演算,但它具有一些构造和语义,并且已经在OCaml世界中进行了开发,还共享了一些具体的语法。但是OCaml可能不适合代替Gallina。
一些相似之处:
(主要)差异
实际上,从历史上看,ML(OCaml是它的某种变体)对LCF来说就像Ltac对Gallina一样! :-D(哦,天哪,由于此注释,我可能会收到一些愤怒的评论...)