从我对语言设计的讨论来看,似乎很多人认为不存在也永远不会是“一种真正的语言”。根据这些人的说法,另一种选择是熟悉几种语言并为工作选择合适的工具。 这在整个项目或大型子项目的级别上非常有意义,只需通过非常狭窄、定义明确的界面与项目的其余部分进行交互。
另一方面,当试图优雅地解决许多小子问题时,使用许多不同的语言似乎是一件非常尴尬的事情。换句话说,恕我直言,在所有方面都不错的通用语言仍然很重要。作为一个简单的示例,假设您需要执行以下操作:
- 从文件中读取一些任意格式的数据。检查它是否有错误等(最好在 Perl 之类的东西中完成)。
- 将此数据加载到矩阵中,对其执行一堆核心矩阵操作(最好在 Matlab 之类的东西中完成)。
- 在其上运行自定义的计算密集型例程,该例程必须快速且节省空间(最好在 C 或 C++ 中完成)。
这是一个相当简单的项目,除了编写计算密集型的自定义矩阵处理例程之外,但关于使用什么语言的唯一好答案似乎是一个通用的,在所有方面都不错。
我在这里想念什么?一个人如何有效地使用多种语言来充分利用它们的每一种优势?