Является ли последняя часть о C/C++ правильной?
Нет, это не так.
Некоторые языки компилируются в C, но это не относится к функциональным языкам. Если это более распространено среди функциональных языков, чем нефункциональных, то, конечно, это не так, что можно назвать этим свойством функциональных языков.
Далее, определенно, не так, что большинство языков функционального программирования реального мира скомпилированы в C (по их официальной и/или самой используемой реализации). Если я перечислю первые десять функциональных языков программирования/реализаций, о которых я могу думать (Haskell (GHC, Hugs), OCaml, F #, Scala, Clojure, Racket, Common Lisp (SBCL, CLisp)), ни один из них не компилируется с C (до насколько я знаю). В какой-то момент GHC имел поддержку C, но это было прекращено.
Два языка, о которых я могу думать, чьи основные реализации, скомпилированные в C, являются Vala и Haxe, ни один из которых не является функциональными языками. В одной из связанных нитей была упомянута «Куриная схема». Итак, это одна относительно известная реализация, использующая C. Этого недостаточно, чтобы оправдать утверждение о том, что это «обычно».
Да, C является популярным промежуточным форматом для языков более высокого уровня, потому что для каждой архитектуры существуют компиляторы C. От http://yosefk.com/blog/c-as-an-intermediate-language.html: «* Он чрезвычайно портативен, он компилируется в удобном режиме, прекрасно оптимизируется, и вы получаете возможность взаимодействия с множеством вещей. *« – Bergi
Это [не только функциональные языки] (http://stackoverflow.com/questions/6498850/programming-languages-that-compile-into-cc-source). Однако языки, использующие функциональную парадигму, обычно более высокого уровня, поэтому вы, скорее всего, найдете их в этой категории. – Bergi
См. Также межсайтовый дубликат [Когда имеет смысл сначала скомпилировать мой собственный язык с кодом C?] (Http://softwareengineering.stackexchange.com/q/257868/66652) на [SoftwareEngineering.SE] – Bergi