Haskell的核心语言非常简单。来自于面向对象的背景,主要的困难是适应纯粹的功能范式。
在学习“基本”Haskell时,我一直认为语言扩展是CS人的玩具,也是语言未来版本的实验(如python中的from future import ??? )。
然而,当我开始研究像Yesod这样的web框架时,我发现很多源文件都需要3到4个扩展名。有些看起来很简单(StringOverload)。其他是真正的恐吓(GADT,类型家族,模板Haskell)。他们的文档链接到研究论文,这对于那些想要学习一个新图书馆的人来说是很可怕的。
是否有必要学习GHC语言扩展以提高Haskell的生产力?如果你要雇用一个Haskell开发人员为一个生产应用程序,你会要求这样的知识吗?
发布于 2013-05-10 09:05:11
是否有必要学习GHC语言扩展以提高Haskell的生产力?
是。任何语言/工具都是如此。有了核心/基础知识,你就可以解决网上竞赛问题,可以是小规模的大学项目,但绝不是现实世界的应用。
如果你要雇用一个haskell开发人员为一个生产应用程序,你会要求这样的知识吗?
这取决于你是否有一个人能与你分享这些知识。如果是的话,那么那个人就可以增加新员工的人数。如果没有,那么你必须先得到这样一个有知识的人。同样,新技术也是如此。
当然,你也可以尝试雇佣在哈斯克尔拥有如此深厚知识的人。但是Haskell是一个相对较新的行业,考虑到在它周围做的商业项目很少,找到这样的人是很困难的。在Haskell建立一支专业团队的有效方法是雇佣熟悉基本知识并愿意在Haskell工作的人,然后对他们进行教育。
https://softwareengineering.stackexchange.com/questions/197624
复制相似问题