为了账号安全,请及时绑定邮箱和手机立即绑定

Scala中惯用的表达“ s ***的平面图”从何而来?

Scala中惯用的表达“ s ***的平面图”从何而来?

LEATH 2019-11-11 13:04:51
平面图有什么功能如此强大,以至于在Scala民俗学中应有如此地位?
查看完整描述

2 回答

?
杨魅力

TA贡献1811条经验 获得超6个赞

我听到的故事是,当其中一位杰出的Scala程序员开始编写如下代码时,他们正在结对配对:


option match {

    case Some ...

对方在这时说:“这是什么?业余时间?该死的平面图!”


至于什么功能如此强大flatMap,那么……首先,它是基本的单子运算符。这意味着它是一种常见的操作,例如,由容器(如Option,集合等),延续,状态等共享。其次,虽然您可以解构一个,但与之Option相反flatMap,它不是一元运算,因此无法广泛应用。此外,它还需要有关您正在处理的数据的太多知识。


注意:之前我说过匹配速度慢flatMap-事实上,事实恰恰相反,直到撰写本文时最新版本的Scala 2.10.1。)


查看完整回答
反对 回复 2019-11-11
?
跃然一笑

TA贡献1826条经验 获得超6个赞

至关重要的flatMap是,它是Scala对Monadic绑定操作的表示。网络上有许多教程,它们解释了monad的用途以及它们为什么如此有用的原因。詹姆斯·伊里(James Iry)有一个细节。


查看完整回答
反对 回复 2019-11-11
  • 2 回答
  • 0 关注
  • 424 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信