我目前使用Perl、Python、C#、C、C++、Java等几种语言进行编程,现在正在寻找一种新的语言作为个人项目的主要语言。
我的当前标准如下:
- 可以作为解释性语言运行(即无需等待编译即可运行);
- 可以编译成本地代码;
- 具有强类型(即使是可选的);
- 支持宏/模板/代码变形/你想叫它什么就叫什么;
- 拥有相当数量的库,或者易于访问。
有什么想法?建议?
我目前使用Perl、Python、C#、C、C++、Java等几种语言进行编程,现在正在寻找一种新的语言作为个人项目的主要语言。
我的当前标准如下:
有什么想法?建议?
此外,听起来您已经了解了很多命令式/面向对象语言。在我看来,如果您学习另一种这些语言中的任何一种,它可能只是您已经在其他地方见过的功能的稍微不同的排列。将另一种编程范式(如函数式编程)添加到您的工具箱中可能是更好的学习体验。虽然我猜这是否是优势取决于您想要学习新东西还是快速提高生产力。
通用Lisp非常适合:它有可选的类型检查,可以进行高效本地编译,强大的REPL使它成为脚本编写的完美选择,并且有强大的宏元编程功能。
OCaml同样适用,使用CamlP4进行元编程。
Scala?它可以运行脚本,尽管它们首先会被编译(透明地)。我不确定您所说的代码变形等是什么意思,但它非常适合DSL。它满足您所有其他要求-与Java一样编译,强类型,并且具有相当数量的自己的库以及Java的所有库。我还是一个初学者,但到目前为止我很喜欢它。