我先来:递归 -> Y 组合子 -> Monad
|      1010x90200      2024-09-04 10:38:28 +08:00 channel | 
|      1020x90200      2024-09-04 10:38:51 +08:00 go 中的 channel | 
|      103mosfet      2024-09-04 11:04:55 +08:00  1 多重指针吧 看的头痛 | 
|      104concernedz      2024-09-04 11:07:43 +08:00 DDD 这套理解不了 一直都还是用的 controller->service->impl->model | 
|  |      105pythonee OP 函数指针 左值右值 传值、传引用 虽然不难,但是也需要切换成计算机来思考 | 
|      106ninjashixuan      2024-09-04 11:15:04 +08:00 channel 不难吧, 甚至这个逻辑上把 async 改成 sync 模式了我觉得是更好理解吧。 | 
|      107echoechoin      2024-09-04 11:17:09 +08:00 @vfs #3 C 语言都可以返回函数。。。 | 
|      109bugmakerxs      2024-09-04 11:19:13 +08:00 箭头函数。。 | 
|  |      110macscsbf      2024-09-04 11:34:52 +08:00 1. atomic 2. yield 3. yield + 递归 | 
|      111yanyoo2000      2024-09-04 11:52:50 +08:00 上下文。刚学编程的时候困扰我很久 | 
|  |      112vfs      2024-09-04 14:03:31 +08:00 @ltyj2003 虽然说 c 语言的函数也能返回一个函数指针, 但是好理解。 类似 golang 之类的函数作为变量到处传,调用, 看着很乱 | 
|  |      113vfs      2024-09-04 14:05:25 +08:00 @superhot 其实我是不懂闭包和函数式编程, 我只是在说支持这样的 feature 会让代码的复杂度迅速上升, 不直观。 至于你说 java 怎么实现的, 那是编译器和虚拟机的事儿, 我的代码中不会出现把函数作为返回值或者参数到处传递(但是我在用 java1.8 , 如果新版本有其他特性, 我不知道) | 
|  |      114vfs      2024-09-04 14:07:34 +08:00 @DOLLOR 其实个人也写好几种语言(c++/c,java, golang), 其中 golang 就是支持这种设计的。 我没有说这种东西绝对是坏的, 只是说引入这样的特性, 很容易写出复杂度比较高的代码, 个人是不会写这种代码的(即使语言支持) | 
|  |      115vfs      2024-09-04 14:09:16 +08:00 @qW7bo2FbzbC0 是啊, 这种代码就不容易读, 调试的时候也会更重乱跳,太动态了。 | 
|  |      116vfs      2024-09-04 14:10:36 +08:00 @echoechoin 是支持, 但是真的在代码中大量写这种代码,感觉就会很复杂, 代码不容易读。 | 
|  |      117HkMuxxx      2024-09-04 14:10:41 +08:00  1 asyncio | 
|  |      118junwind      2024-09-04 14:11:49 +08:00 @Dcrclub 很有同感,就是故意为之,比如 laravel 框架,什么任务调度,不就是定时任务吗,什么事件监听,不就是一种埋点吗,有些东西,换个名词,就高大上,很多所谓的专家就是吃饱了撑了,故意让你看不懂,然后提升自己的逼格。 | 
|  |      120shijingshijing      2024-09-04 15:14:58 +08:00 @kinkin666 泛型还好,看到 C#后面的委托(Delegate)了吗? | 
|  |      121shiweifu      2024-09-04 15:16:16 +08:00 C++ 模板 可以看看 C++ STL 源码, iostream 、vector 之类的感受一下 印象中,还有虚指针、虚函数表啥的,C++ 语言特性太多了。当年知难而退,放弃了。 PS:在咖啡店写代码,对桌的哥们抱着一本砖头厚的 C++ Primer 在做笔记 | 
|  |      122kinkin666      2024-09-04 15:42:37 +08:00 @shijingshijing 当时没看明白,后面学 java 的时候认识了接口特别是 XxxxxxxListener 之类的事件接口的之后就没它位置了 | 
|      123Donaldo      2024-09-04 16:04:09 +08:00 rust 的宏展开。。 | 
|  |      125label      2024-09-04 17:43:59 +08:00 函数式编程 好久才弄明白这玩意, JAVA 仔 | 
|  |      126Fallever      2024-09-04 18:08:06 +08:00 @vfs 函数不能保存成变量有时候才别扭, c#发明了委托, 但它又关联参数类型, 比如你不能把重载函数赋值给原函数委托. 比如 Action<bool> a = Console.Write 它只能绑定 bool 参数的重载. 我想 a= Console.Write(int)啥的都不行... 还有就是 离开了类就没办法使用函数, 所有的函数都得定义在类里面. | 
|  |      127ysc3839      2024-09-04 20:15:47 +08:00 | 
|  |      128ysc3839      2024-09-04 20:18:10 +08:00 @inhzus C++ 的 coroutine 个人感觉挺好理解的,不涉及 promise type 的话,awaitable 对象其实就类似回调函数,对象被 await 时可以拿到 coroutine handle ,调用这个 handle 即可恢复执行。 至于 promise type ,很多时候并不需要自己实现,直接用现成的库即可。 | 
|  |      129tt67wq      2024-09-04 20:22:11 +08:00 python 的这个 async 和 yeild 这些卵子东西 | 
|      130shantongxu      2024-09-04 20:24:17 +08:00 yield, 至今没用过也不懂 | 
|  |      132snylonue      2024-09-05 11:21:46 +08:00 dependent type | 
|  |      133msg7086      2024-09-05 12:03:42 +08:00 点进来之前第一反应 monad 。点进来一看果然 monad 。看满离。 | 
|  |      134importmeta      2024-09-05 15:43:26 +08:00 阀值 阈值 | 
|      135sampeng      2024-09-05 17:10:50 +08:00  1 居然没人说面向对象本尊 OOP 。 诸如凭什么说我抽象的就没你抽的好。。。 诸如这什么💩抽象,难以理解,看我抽象到极致的抽象。。。 诸如什么垃圾,套这么多层闹呢。。 要碰巧看到合自己口味的 OOP 过的代码,简直是奢望。 一千人有一千种封装抽象。。 | 
|  |      136matate      2024-09-05 17:29:49 +08:00 最近正好写了几篇文章,方便从程序员角度理解 Monad  <https://www.vinoca.org/li-jie-dan-zi-shi-zi-han-zi-fan-chou-shang-de-yao-ban-qun-yi/> | 
|      137aliipay      2024-09-06 00:04:40 +08:00 go yield | 
|      138aguesuka      2024-09-06 09:02:37 +08:00 sound decidable consistent canonicity |