V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
tgfbeta
V2EX  ›  程序员

作为上进的程序员,范畴论是必备的么?

  •  
  •   tgfbeta · 2013-10-19 23:29:16 +08:00 · 10037 次点击
    这是一个创建于 4081 天前的主题,其中的信息可能已经有所发展或是发生改变。
    除为了弄懂Haskell的目的以外,这些抽象理论到底是仅用于装点门面还是居家旅行杀人灭口必备啊?
    14 条回复    2015-11-04 11:42:18 +08:00
    luikore
        1
    luikore  
       2013-10-20 00:00:32 +08:00
    看完可以更明白指令式和函数式的关系, 例如 Eric Meijer 说 C# 的分号可以态射成 >>= ...
    luikore
        2
    luikore  
       2013-10-20 00:01:07 +08:00
    呃, 是 >>> 不是 >>=
    pythonee
        3
    pythonee  
       2013-10-20 10:14:22 +08:00
    @luikore 求科普
    bleaker
        4
    bleaker  
       2013-10-20 13:01:27 +08:00
    读到过一篇文章里是这么说的:

    「自函子说穿了就是把一个范畴映射到自身的函子,
    自函子范畴说穿了就是从小范畴映射到自身的函子所构成的以自函子为对象以自然变换为态射的范畴,
    幺半群说穿了就是只有单个对象的范畴,给定了一个幺半群则可构造出一个仅有单个对象的小范畴使其态射由幺半群的元素给出而合成由幺半群的运算给出,
    而单子说穿了就是自函子范畴上的这样一个幺半群。

    这都不理解么亲连这种最基本的概念都不理解还学什么编程!」


    我的表情:
    Ricepig
        5
    Ricepig  
       2013-10-20 13:37:57 +08:00
    大概了解一下概念就好

    要是实在感兴趣,在投保了生命安全险以后可以适当从近世代数开始学起。
    Edward
        6
    Edward  
       2013-10-20 20:55:35 +08:00
    这……顿时让我感觉貌似白折腾了二十几年……
    tioover
        7
    tioover  
       2013-10-21 11:28:59 +08:00 via Android
    @bleaker 我也看过哈哈哈哈哈
    Golevka
        8
    Golevka  
       2013-10-21 15:44:35 +08:00
    作为一个奉行hack oriented programming好几年的猿, 我立志要在今年做一些改变.
    liwei
        9
    liwei  
       2013-10-22 11:17:43 +08:00
    我擦,没听说过的程序员飘过。。。
    luikore
        10
    luikore  
       2013-10-22 17:11:50 +08:00
    @pythonee 梅姐的科普节目里讲的, 有点久远忘记是哪个了 http://channel9.msdn.com/tags/Erik+Meijer/

    @bleaker 前两个是 endofunctor 的定义, 后两个是平凡的推论... 涉及的概念如 范畴, 函子, 态射, 自然变换, 小范畴(猫范畴), 单子(monad) 都解释完其实也小半本范畴论了.
    Golevka
        11
    Golevka  
       2013-10-23 00:28:06 +08:00
    (我勒个去... Erik居然也说过"Imperative" Programming is a tool for hacking)

    http://channel9.msdn.com/posts/Erik-Meijer-Functional-Programming-From-First-Principles
    indicator
        12
    indicator  
       2013-10-23 05:30:36 +08:00
    如果你有近世代数的基础,理解大多范畴的概念很轻松。如果没有,可以不用理会这个东西,没什么东西一定要非要用范畴中的概念来实现。
    kennedy32
        13
    kennedy32  
       2013-10-23 15:23:50 +08:00
    在看MIT的6系课程,其实是在看6.00和6.01,觉得实际的内容不多,主要是给人一种全局观。
    wuyinyin
        14
    wuyinyin  
       2015-11-04 11:42:18 +08:00
    顺手推一个,觉着可以稍微涉略以下。 http://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/ 《写给程序员的范畴论》
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2729 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 14:55 · PVG 22:55 · LAX 06:55 · JFK 09:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.