有经验的程序员有哪些新的语言选择?

时间:2009-09-14 12:13:06

标签: programming-languages

我知道我开始的话题太主观了。但我只是 想要一些专家指导学习新语言。我有 一直在使用.NET语言(C#,VB.NET) 年(约4)。我停下来已经好几年了 在安顿下来之后尝试新的laguages。

几个星期前我刚开始研究我的个人生活 项目,我将在未来花费很多时间 个月。在分析过程中,我发现我不能 适应各种具有成本效益的语言, 程序和IDE。所以我计划进入广泛的领域 开源语言和工具。

当我看到当前的选择时,我只是 无语。数以百计的有前途的开放语言和 工具集,我发现很难选择。我甚至不能 想到自己评估每种语言(这是最糟糕的 恶梦)。目前我从Mono开始(为了... C#)。

我觉得这将是学习新课程的好机会 编程语言和模型。所以我对任何人开放 提供以下内容的语言:

  • 更具功能性
  • 动态语言功能
  • 更好的语言优雅(如lambdas,Haskel,如SQL语法或C#LINQ
  • 更好的社区支持
  • 必须打开
  • 轻松与网络互动
  • 支持并行性和并发性(易于线程化)
  • 表现更佳
  • 经过验证的网络框架
  • 更好的IDE支持(使用多年的MS工具后,我得到了这种易用性综合症)

我喜欢Haskel和Erlang语言编程方法。 但我对这些语言的网络堆栈没有任何线索 并发机制。

修改      我很感激你的选择几个原因。这将非常有帮助。

7 个答案:

答案 0 :(得分:7)

我认为所有这些都符合您的要求:

我敢打赌,您将获得使用Groovy的Groovy IDE体验(并且它是Groovy Eclipse Plugin)。

答案 1 :(得分:3)

学习OOP,DesignPatterns,理解算法......其余的是“正义”语言。你会发现,如果你学习第5 ...第8语言有一些相似之处,一些知识和缺点......你需要学习的是将业务需求转移到某个技术平台。

答案 2 :(得分:2)

怪异。我不敢相信没有人建议过Python。

答案 3 :(得分:2)

这些不是新语言,但我投票表示,如果你对它们有实验经验,那么无论你选择使用哪种语言,你都会成为更好的程序员:

  • Smalltalk(或Objective-C),否则你没有经历过OOP。
  • Lisp用于功能,反思,元编程。
  • 逻辑编程的Prolog。

所有这些都与您的基本C语言相差甚远,无论是概念还是语法。

Alan Kay发明了OOP和Smalltalk,他被引用为“C ++不是我想要的”,而C ++是当今大多数OOP语言的模仿。 C ++风格的OOP只是具有函数指针的结构的语法糖。 OOP可以更多。 Ruby是密切相关的,但你会错过交错的方法名称。

Lisp自1958年以来一直存在,并且粉丝们一直在说,任何添加到任何新语言的东西都只是从Lisp借来的东西。也许不是严格正确,但有些准确,Lisp在50年前收集了垃圾。今天最简单的体验方式就是用Clojure写一些东西。

Prolog基于形式逻辑。 Prolog是声明性的,您声明事实规则,并通过构造对这些关系的查询来执行。有点像某些杂志中的益智游戏:)。

答案 4 :(得分:1)

在.NET世界中,听起来你正在谈论F#IronRubyIronPython也可能适合您的需求。

答案 5 :(得分:0)

就个人而言,我将对Python,Ruby和Mono.NET进行投票。

当你说你看过Mono时,你可能走在正确的轨道上;这是C#(你以前有过这方面的经验),有很好的免费IDE可供SharpDevelop being one使它便宜,而且背后有一个真正坚实的社区。

答案 6 :(得分:0)

你并没有真正说出你想做什么样的节目。你已经了解C / C ++吗?如果没有,我真的建议学习那些而不是任何新的和花哨的东西。

然而,如果它是你想要的新的和想象的,并且你希望能够编写本机应用程序,那么我会看看:

D

它与C ++类似,但希望在很多方面更好。它的优点是可以在你的愿望清单上执行大多数其他新的和花哨的语言和大部分功能。