论坛首页 综合技术论坛

为括号正名!

浏览 3081 次
精华帖 (0) :: 良好帖 (7) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-04-06  
FP
(教育用,大腕版,纯搞笑)

一定要爱上括号
Scheme 一个都不能省的那种
Vim、Emacs 都能自动高亮括号对
看一眼就知道表达式是在哪个参数位置上返回的
心里别提多舒坦
没那个我现在都不知道怎么写程序!
用 Python 的时候
括号逗号元组连一块儿
三四层的函数调用就看不出来哪儿对哪儿了
Perl 光括号就七八种,还能自定义
鬼能背得得那匹配规则
Ruby 倒好
只省括号,但要被算符优先级
不是没事儿找事儿嘛
你看人家 Haskell 都学 Scheme 的括号规则
想用 $ 省几个?
你不先把括号打全了怎么省?
于是你用 Lisp,想省俩开始、结尾那括号
你都不好意思跟人打招呼
括号这种东西
就要一个字:多!
你也不想想人家为什么都用 letrec 不用 define
就是为了多打三层括号呗!
表达式套个七八层
if、cond 加个三四层
let、lambda 再加两层
你说这么着写程序
一千行 Scheme,我看怎么着也得四五千括号吧?
四五千,还得成对!
你还别不乐意
你看看那些个用命令式语言编程的
写个相同功能的程序
光等号就得打这么多!
然后他们还管那叫 IT(Irritating Testing)!
怎么,你想去试试?
想想看他们用的那 IDE
宏变换就不提了
连函数式语言的词法作用域都测不出来
Continuation?还是省了这条心吧
你得研究 Schemer 的心理
只要最清晰的,怕括号的都不是 Schemer
所以说
咱们用 Scheme 的口号就是
括号最多,一个不省
   发表时间:2008-04-07  
armorking 写道
括号最多,一个不省
严重同意

我经常这样写:
    if (
        ( a == b &&
            a == c
        ) ||
        ( a == d &&
            a == d
        )
    ){
        //...
    }


眼睛会散光的。。。
0 请登录后投票
   发表时间:2008-04-17  
我眼镜早就散光了……
0 请登录后投票
   发表时间:2008-04-19  
不好玩,一点也没有大腕台词那个爽劲儿。牵强。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics