6

我正在学习 Python,因为它对我作为一名数学家很有吸引力,但它也有许多用于科学计算、图像处理、Web 应用程序等的有用库。

令我沮丧的是,对于我的某些兴趣(电子音乐或装置艺术),有一些非常特定的编程语言似乎更适合这些目的,例如 Max/MSP、PureData 和 ChuckK——所有这些都非常吸引人。

我的问题是,应该如何处理这些不同的语言?我应该简单地学习 Python 并通过在其中使用插件和 Python 解释器来管理其他的吗?是否有整合语言的好工具,或者只是学习所有语言的正确方法?

4

4 回答 4

8

我会说把它们都学起来。虽然许多语言确实可以做很多事情,但专业语言通常更具表现力并且更容易用于特定任务。典型的例子是,虽然大多数语言都允许 shell 交互和进程控制,但很少有人像 bash 脚本一样适合这项任务。

插件和库可以弥合通用语言和专业语言之间的差距,但根据我的经验,这并非总是没有缺点——无论是速度、稳定性还是复杂性。必须编译其他库或应用补丁或使用不受信任且支持不佳的模块并不少见。生成的界面仍然比原始语言更难使用也很常见。

我精通大约 15 种语言,其中一些非常精通。当另一种更合适时,我不使用我喜欢的语言。

于 2009-06-19T04:14:48.057 回答
4

这个线程有点老了,但我想指出大多数成熟的音频开发环境,例如 supercollider/max-msp/pure data 可以通过开放的声音控制来控制。您可以在 Google 上找到更好的 OSC 描述,但只要说它允许您将控制数据发送到在这些环境中构建的合成器,类似于 MIDI 的工作方式,但范围更广。这并不能解决在 python 本身中实际构建合成器的问题,但它允许您“驱动”这些其他环境,而无需了解语言的来龙去脉。

于 2009-11-11T17:30:02.380 回答
1

完全有可能构建从 Python 到此类专用语言的良好接口:一个恰当的例子是RPy,它可以让您从 Python(用于各种通用用途的东西)驱动 R(用于统计)。

当然,一个人必须精通两种语言——不幸的是,对于每一对给定的一种通用语言和一种专用语言,这种桥梁并不存在。“全学”,要全,还是王道!

于 2009-06-19T04:26:51.133 回答
1

Python 将是一门很好的学习语言,因为它可以与许多其他语言一起很好地工作。它既是一种出色的通用语言,也是一种“胶水”语言。花时间学习你感兴趣的语言,并保持 Python 知识的灵活性和强大。除非您真的有时间,否则我不建议您尝试全部学习它们。

您可能想知道 PureData 有一个python 扩展

于 2009-06-19T04:31:37.873 回答