Most useful and instructive functional-logic language to learn

自闭症网瘾萝莉.ら 提交于 2019-12-03 07:08:02

I can give you a (slightly) biased recommendation for Curry.

As you already mentioned, Curry is quite advanced and, while still experimental, definitely ready to be used. There are already applications in productive use. You won't find many reads on practical aspects since Curry is mainly a research language. However, there is a small but helpful community reading and answering the Curry Mailing List:

http://www-ps.informatik.uni-kiel.de/currywiki/documentation/mailing

Regarding interoperability, there seem to be two choices: The Münster Curry Compiler(MCC) supports a subset of the Haskell foreign function interface to call C code.

The most recent Curry implementation, the Kiel Curry System 2 (KiCS2), compiles Curry to Haskell. There is a schematic way to call Haskell Code from Curry when using KiCS2 (see the KiCS2 Manual, Appendix D). Unfortunately, I am not aware of a way to call Curry code from another language.

The most profoundly useful nexus of FP and LP has been, as far as I've found, Mercury + Erlang. Both are incidentally interesting from an academic point of view (you really do need to have your fundamentals straight if you want to do good things with either, or both), but both also place a premium on getting products to market and maintaining them as opposed to being research oddities.

I'm not really sure if the OP was weighting "useful" greater than "instructive", and I also don't know if "useful" means "code that usefully solves problems in the real world". But assuming that this is part of the criteria here, Mercury + Erlang is by far the most interesting combination of LP and FP to be had at the moment.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!