我已经掌握了几种语言(按专业知识的粗略顺序排列):Python、C、C++、PHP、Javascript、Haskell、Java、MIPS、x86 汇编程序。但是自从我学会了一个新的已经快 2 年了,我开始感到痒了。我有几个标准:
- 必须(重复:必须)有一个免费的 Linux 实现
- 应该不同于我已经知道的语言。换句话说,它应该具有让我思考以新方式解决问题的功能。
- 应该有一定的实用潜力。它不需要成为下一个 Java,但这排除了 Brainf* 和莎士比亚 :) 我真的不在乎它有多少职位发布,但现实世界的应用程序和库是一个加分项。
- 至少应该有足够的免费学习材料让我开始学习。
我在想 Lisp(CL?别的东西?)或 OCaml。我已经有一些使用 Haskell 的函数式语言的经验(是的,我知道 Lisp/OCaml 是多范式)。我不是专家——例如来自 Real World Haskell 的部分代码仍然会扭曲我的大脑,但我了解基本概念和一些高级概念(函子、单子)。
选择哪一个?我忽略了任何其他语言?另外,能否请您包括一些有用的链接到好书/教程等。