我很少(<1年专业)经验
我有限(<2年专业)
我有很好的经验(&gt; = 6年专业)
我有
的爱好经验所以我的问题是我接下来可以用什么语言(在我的空闲时间)给我一些关于编程和一般问题解决的新见解 - 我看着也许LISP - 这会是对我来说很陌生。我想从上面列出的语言中解决一些非常非常不同的内容。
编辑:我想我会调查Haskell - 感谢您的反馈!也许可能是Erlang,我真的很喜欢Adrian Kosmaczewski关于雪豹Mac App的想法。答案 0 :(得分:5)
Haskell,不久之后是Python。
答案 1 :(得分:2)
尝试函数式编程语言
答案 2 :(得分:2)
你可以尝试的两种非常不同的编程语言是Haskell和Prolog。
Haskell是一种纯函数式语言,您可以使用其他函数作为参数并修改它们。它使你的思绪更加清醒; - )
Prolog是一种逻辑语言,您可以在其中指定一组应该为true的条件,然后prolog可以找到合法的解决方案。该语言已被用于人工智能研究。
答案 3 :(得分:2)
我也投票支持功能语言:
鉴于the free lunch is over,跳到这个范例是一项很好的投资,恕我直言。
希望这有帮助!
答案 4 :(得分:1)
红宝石。 Ruby很棒,从那里你可以学习Rails,这是一个了不起的框架。
答案 5 :(得分:1)
Prolog,学习逻辑编程。 这可能会教你很多,但我认为这是一种爱好,因为我个人不知道任何非教育应用程序。
Haskell,或Erlang,用于函数式编程。
答案 6 :(得分:1)
这是用于学术或专业发展吗?如果是后者,请查看您想要工作的区域,并查看他们要求的语言。他们很可能是主流,例如C ++,C#或Ada(取决于域名),但如果这是为了学术兴趣,一些更深奥的语言可能会引起埃菲尔,Forth,Smalltalk和其他人提到的所有那些
对于专业发展,你可能会成为万事通,无所不能,我建议你可以更垂直思考并考虑学习设计和建模语言,如UML和相关分析/设计方法和模式。这些技能可以跨语言移植,语言的选择应该始终位于良好的规范和设计的第二位。
答案 7 :(得分:1)
我会说如果你对一种新的,非常“不同”的语言感兴趣并且考虑了几种选择,你应该首先查看社区。看看新闻组是多么活跃,如果人们看起来很好并且拥有良好的氛围。调查那种流行的项目是否倾向于引起你的兴趣。
Haskell似乎是个不错的选择。功能语言很重要,并且在解决问题方面表现出不同的一面。我一直在看Erlang,但还没有写任何东西,所以除了共同的好奇心之外我不能谈论它。
链接|标志
添加评论
Psssst ......在这里! Shhhhh!不要引起注意!我们清楚了?你确定没有人关注你吗?
所以你想“彻底改变你对编程的看法”,是吗?人们可能告诉你,你想要进行思维扩展的方法是去CS学校的功能性编程,或者像这样的东西。是的,我知道我说的是什么......关于“社区”的斗牛......那是为了让温和的警察放下我的背,老兄!
事实是我在这里得到了“心灵扩张”......编程的可卡因:[Rebol]
第一次免费。但如果有人问你从哪里得到它,那不是我!我们从未见过......我不存在。你有那个!??
:P
答案 8 :(得分:0)
的Clojure。你不会后悔的
答案 9 :(得分:0)
Javascript和python。
Javascript 是世界上最容易被误解的语言。但是不要接受克罗克福德的建议。拥抱它的缺点。不要在他们周围工作。请注意它们。 例如,不要为对象创建关闭。拥抱基于原型的继承。这很酷。
答案 10 :(得分:0)
基于您的简历,我建议您处理Python,因为它将为您提供一个很好的机会来处理一些CS基础知识,如OOP和函数式编程。 Python是一种很好的通用语言,可以在您的工具箱中使用,它可以用于各种各样的应用程序(Web,实用程序,脚本,服务器等),并且很容易学习并在短时间内提高工作效率
答案 11 :(得分:0)
LISP和FORTH是认真思考的好选择。
如果您真的想要伸展自己,请获取一份Abelson&amp; amp;苏斯曼的“计算机程序的结构和解释”,以及麻省理工学院计划系统的副本,并开始通过本书。 Scheme是LISP的一种方言(但你可能已经知道了。)(关于这个主题,请从麻省理工学院的Open Courseware下载课程6.001的副本。)
如果你想学习一种不同的心态,那将以有趣的方式为你提供良好的服务,谷歌和snarf一份Leo Brodie经典的“Starting FORTH”,然后选择一位FORTH翻译来玩。 (这本书是为polyFORTH编写的,FORTH,Inc。已不再提供,FORTH系统现在并不常见。)然后阅读同一作者的“Thinking FORTH”。