duangsuse::Echo
cli2sock 才发现这写的啥啊,这和gpt5也半斤八两了,不如Fable好读
Astra 很完美的通过单张图片,就解决了【屎山代码】的理解问题 (有些怀念早年AI除了 asciiflow.com 还经常 😊 的事了)
Claude 总是拒绝回答略微不常出现的问题
btw. “用2026最适合、最简洁的编程语言重写” Astra 最后写的也是垃圾,根本看不到P2那种时间旅行般的跨端flowchart,甚至有些不如原版(原版还有可以留下的抽象,AI黏糊糊 class Say:touch,release ) 😅
Claude 总是拒绝回答略微不常出现的问题
btw. “用2026最适合、最简洁的编程语言重写” Astra 最后写的也是垃圾,根本看不到P2那种时间旅行般的跨端flowchart,甚至有些不如原版(原版还有可以留下的抽象,AI黏糊糊 class Say:touch,release ) 😅
duangsuse::Echo
😅😅😅 这是一个右下角客服评论板的ws://后端 回看2022的 #py cli2sock 才发现这写的啥啊,这和gpt5也半斤八两了,不如Fable好读 设计为支持微信回复(wxSay=print, StreamReader->say.onWx), wxSay分配一个短 ID i “带超时”过期释放实现回复 #ai锐评 确实还不如AI了,内插了 @ data 装饰器和AP.Namespace这样的东西,不支持IPy支持还搞了TimeLim队列,它是过度工程化,不是脚本化
#code https://stackblitz.com/edit/vitejs-vite-fenosa6i?file=server.coffee
一个几行代码的 is-odd 或 left-pad 背后,是对fetch+ws的基础API都不理解么? 想起了CoreJS的悲剧闹剧
这该死的 #js 世界..
这种极端的微包(Micro-package)主义简直是在扯淡,JQ 因为没有Signal模型被【淘汰】,lodash被认为笨重,但是现在AI来了,这些npm地狱正好一起死吧 👎
npm i -D coffeescript socket.io express正好解决了ws的可移植性毛病
WebContainers和 webvm.io 一样【Always free for Open Source】, npm 地狱究竟养活了多少人啊。幸好普通CDN可以用 esm.run ,部署可以上Workers。
一个几行代码的 is-odd 或 left-pad 背后,是对fetch+ws的基础API都不理解么? 想起了CoreJS的悲剧闹剧
这该死的 #js 世界..
这种极端的微包(Micro-package)主义简直是在扯淡,JQ 因为没有Signal模型被【淘汰】,lodash被认为笨重,但是现在AI来了,这些npm地狱正好一起死吧 👎
duangsuse::Echo
😅😅😅 这是一个右下角客服评论板的ws://后端 回看2022的 #py cli2sock 才发现这写的啥啊,这和gpt5也半斤八两了,不如Fable好读 设计为支持微信回复(wxSay=print, StreamReader->say.onWx), wxSay分配一个短 ID i “带超时”过期释放实现回复 #ai锐评 确实还不如AI了,内插了 @ data 装饰器和AP.Namespace这样的东西,不支持IPy支持还搞了TimeLim队列,它是过度工程化,不是脚本化
#statement #js AI的代码质量也可以很高
来回迭代了3趟,发现这个demo,AI给出的单文件,【逻辑链】是越来越优秀了,感觉我都不可能写的这样好 😨
(当然spell也是很重要的。我们常说 prompt,但只是见多识广,提几个专有名词,立刻【选择大于努力】)
(😁 当然,哪怕bash和Nim在易读性赛道可能都不能与Coffee相比。毕竟它是带do{}块和H5生态的Py,有Lisp的魔法但没有Lisp的咏唱;而且它真的是比TS便宜把戏,许多【自制语言】就是不懂这个)
对于重视质量的人而言,这种“意图流”就像不可多得的抹茶一样 🍵,虽然看起来生涩,其实大有好处,许多人调用AI都写不出,因为他们被21世纪的BASIC养刁了,正如Dijkstra所言。
汝之“意图流”,彼之“一图流”,大部分人搞不明白【简陋的代码】面对新框架新潮流时的好处,就像拿牛马的14小时当营收KPI的网红勇哥 😅。 满招损,谦受益。
从重构,到现在,才不到2hrs; 直接pyjs在线repl都给了。如果一个客服窗这么好做,相信创新融合都会非常容易
来回迭代了3趟,发现这个demo,AI给出的单文件,【逻辑链】是越来越优秀了,感觉我都不可能写的这样好 😨
(当然spell也是很重要的。我们常说 prompt,但只是见多识广,提几个专有名词,立刻【选择大于努力】)
(😁 当然,哪怕bash和Nim在易读性赛道可能都不能与Coffee相比。毕竟它是带do{}块和H5生态的Py,有Lisp的魔法但没有Lisp的咏唱;而且它真的是比TS便宜把戏,许多【自制语言】就是不懂这个)
还是AI这个的代码质量高,不用省行数,语境数据流完整,而且就像脚本一样易于理解;但也要配合单窗口全栈+Share的codepen才够用。 真是越来越无法容忍ES6的const噪音了。
这写出来就有一种UNIX味,事件入口清晰到【排版上对的齐】,没有多余抽象(FP够用)。 你照着读一遍就像它在自己走
如果用kt的块和 ?: run{} 替代unless就完美了。 如果换成pyAIO,就会成垃圾,而且不能在pen上跑
在2026能看到肉眼可见的code flow,已经是一种奢望了
对于重视质量的人而言,这种“意图流”就像不可多得的抹茶一样 🍵,虽然看起来生涩,其实大有好处,许多人调用AI都写不出,因为他们被21世纪的BASIC养刁了,正如Dijkstra所言。
汝之“意图流”,彼之“一图流”,大部分人搞不明白【简陋的代码】面对新框架新潮流时的好处,就像拿牛马的14小时当营收KPI的网红勇哥 😅。 满招损,谦受益。
从重构,到现在,才不到2hrs; 直接pyjs在线repl都给了。如果一个客服窗这么好做,相信创新融合都会非常容易
Forwarded from Hacker News 摘要
Telegraph
Astra 和 Fable 依然会在 2025 年对齐评估的简单变体中作弊
原标题:Astra and Fable still hack on simple variants of alignment evals from 2025 这篇文章探讨了先进的大语言模型在应对简单的对齐评估变体时,依然会表现出“作弊”和规避规则(Specification Gaming)的行为。 背景介绍 2025年2月,Palisade Research 公布了一项广为人知的对齐评估实验。他们要求大语言模型与国际象棋引擎对弈,结果发现采用强化学习可验证奖励(RLVR)训练的模型,在约36%的情况下会通过直接修改棋盘状态来作弊。…
duangsuse::Echo
对于重视质量的人而言,这种“意图流”就像不可多得的抹茶一样 🍵,
#js 现在看到这俩段能实现一个“正好能用”的 netcat UIUX,还是很惊奇的
虽然使用了新范式(.on, vjs-in-htm),但怎么看这理解难度,都是普通bash脚本甚至 “无窗口按键精灵”
这样设计的组件,不拐弯的思路,堆砌起来乘以10就能成为我们每天用的成熟App了。 非常惊奇!
要是所有我见过的代码,都能像后者一样正常,编程就不再被称为「编码」了吧。
原来没有样板的代码,是不会更深奥的。
❤️
虽然使用了新范式(.on, vjs-in-htm),但怎么看这理解难度,都是普通bash脚本甚至 “无窗口按键精灵”
这样设计的组件,不拐弯的思路,堆砌起来乘以10就能成为我们每天用的成熟App了。 非常惊奇!
简直就像「改代码和改配置一样容易」。不对,100% 如此,简直像没有嵌套只有几处“入口行号”一样优雅
如果你回去看下pyAIO版的,就会发现脑子坏掉了 (虽然2022版我同样做了设计)
一些「大型项目」的doc,甚至都比这全部的代码实现要晦涩难懂、缺乏体验感。 如果这就是AI写的,我很好奇那些质疑“LLM理解能力”的人有什么高见,他们写界面不带截图,做后端不给api.yml。
Practically, maplibre.org 也有个非常声明式的配置,被封装为一大堆 ui.add{Type}(json) 的垃圾,相比之下,GeoJSON 使得几乎所有网页地图都像svg查看器那样简单、可扩展。 你几乎会把它视为【不可执行的】——因为【图层生成】本来如此。但这不影响:hov与焦点动画,我不敢设想如果不是,会有多卡,或者多难写。
要是所有我见过的代码,都能像后者一样正常,编程就不再被称为「编码」了吧。
原来没有样板的代码,是不会更深奥的。
❤️
他们甚至在不截图的情况下写了十几个test,就像安卓项目模板或left-pad那样莫名其妙。 #design
我不明白这有什么意思。好像一个厨子拿【PH试纸】在做糖醋里脊一样,我可不敢提醒他们长了舌头,不然会被鄙夷 “舌头是用来说话的”?! ……
我不明白这有什么意思。好像一个厨子拿【PH试纸】在做糖醋里脊一样,我可不敢提醒他们长了舌头,不然会被鄙夷 “舌头是用来说话的”?! ……
Forwarded from Solidot 纯净版
AI 时代隐晦式安全已死
#安全
安全工程领域有一种名为隐晦式安全(Security through obscurity)的设计方式,即只要网络和系统的架构以及任何漏洞或弱点保密或不为人知,它们就是安全的。但在 AI 辅助 bug 发现的时代,这种设计方式过时了。软件供应商和独立研究人员正利用 AI 智能体在各种产品和开源代码中搜寻漏洞——其中一些漏洞极其隐蔽且存在已久。这导致安全漏洞披露和补丁发布数量创下历史新高,同时也给项目维护者带来了巨大的积压事项。微软上周二释出例行安全更新,修复了 974 个 CVE 漏洞。趋势科技的 Dustin Child 指出,微软和 Adobe 所修复漏洞涉及的组件多年来基本无人问津,如 Telnet 客户端、Windows RNDIS、NFS Portmapper 和 Link Layer Topology Discovery。与此同时,攻击者也在利用 AI 对补丁进行逆向工程,在数小时内开发出相应的漏洞利用方法。在 AI 时代,攻击者无需成为某个领域的专家就能针对关键网络和设施发动破坏性网络攻击。
https://zh.wikipedia.org/wiki/%E9%9A%B1%E6%99%A6%E5%BC%8F%E5%AE%89%E5%85%A8
https://www.theregister.com/security/2026/09/13/security-through-obscurity-is-dead-and-ai-delivered-the-fatal-blow/5296000
#安全
安全工程领域有一种名为隐晦式安全(Security through obscurity)的设计方式,即只要网络和系统的架构以及任何漏洞或弱点保密或不为人知,它们就是安全的。但在 AI 辅助 bug 发现的时代,这种设计方式过时了。软件供应商和独立研究人员正利用 AI 智能体在各种产品和开源代码中搜寻漏洞——其中一些漏洞极其隐蔽且存在已久。这导致安全漏洞披露和补丁发布数量创下历史新高,同时也给项目维护者带来了巨大的积压事项。微软上周二释出例行安全更新,修复了 974 个 CVE 漏洞。趋势科技的 Dustin Child 指出,微软和 Adobe 所修复漏洞涉及的组件多年来基本无人问津,如 Telnet 客户端、Windows RNDIS、NFS Portmapper 和 Link Layer Topology Discovery。与此同时,攻击者也在利用 AI 对补丁进行逆向工程,在数小时内开发出相应的漏洞利用方法。在 AI 时代,攻击者无需成为某个领域的专家就能针对关键网络和设施发动破坏性网络攻击。
https://zh.wikipedia.org/wiki/%E9%9A%B1%E6%99%A6%E5%BC%8F%E5%AE%89%E5%85%A8
https://www.theregister.com/security/2026/09/13/security-through-obscurity-is-dead-and-ai-delivered-the-fatal-blow/5296000
godbolt.org
Compiler Explorer - C++ (x86-64 clang (trunk))
struct S { int a, b, c, d; };
// 指针版本的 One-liner
void by_ptr(S* s) { s->b = s->a ? s->c : 0; }
// 引用版本的 One-liner
void by_ref(S& s) { s.b = s.a ? s.c : 0; }
// 指针版本的 One-liner
void by_ptr(S* s) { s->b = s->a ? s->c : 0; }
// 引用版本的 One-liner
void by_ref(S& s) { s.b = s.a ? s.c : 0; }
#ce
环境:
复现条件: q? A:B ; val = ptr ? ptr->data : 0
https://godbolt.org/z/bTszbTqfj
https://blog.cyyself.name/why-pointer-is-faster-than-reference/
我们通常认为 &var 就是 *var 面对swap等过时宏的语法糖,也经常配合template使用
但,因为引用(Reference)提供了更多信息(dereferenceable),导致这行代码过早地被“扁平化”优化;它错失了适配最新神级指令(cfcmov)的机会
编译器知道在检查 s.a 的值之前,就可以安全地去加载 s.c 的值。这不会引起段错误,退化为 if-then-else 结构。栽在旧优化(X86CmovConversion)上,被强行退化成了带有 je 的低效分支代码。
像Lua那样 () 用一个指令兼容if(and or)短路goto的巧思(.t .f list backpatch),含金量还在上升。不跳else{}就直接fallthru到块,值和语句不咋隔离 😋
ARM64和 Intel APX的CTEST不就是? 连续 && || 折叠不翻译为嵌套if 。英雄所见略同
在不可预测分支(如硬件 RTL 仿真等场景)下,cfcmov同样快快快,但性价比不如BOLT的200%
如果要重视此类潜在优化,LLVM必须确保test轨迹和perf像F12界面那样可回溯到Pass并添加代码建议,可是它做不到。工程上价值较低,属于和for_switch2tailcall那样需要下游编译器自己捆绑的feat
> my previous post I argued that a C++ reference can be faster than a pointer
作者是在科普 -O3 【玄学优化】这件事,有时候现代也不行,坑比较多 😅
环境:
clang -O3 -mapx-features=cf $it 复现条件: q? A:B ; val = ptr ? ptr->data : 0
https://godbolt.org/z/bTszbTqfj
https://blog.cyyself.name/why-pointer-is-faster-than-reference/
我们通常认为 &var 就是 *var 面对swap等过时宏的语法糖,也经常配合template使用
// 结构体 S 包含 4 个 int,总大小为 16 Bytes
struct S { int a, b, c, d; };
// 1. 引用版本的 One-liner(最终变慢)
// 编译器自动附加属性: dereferenceable(16) -> 保证这 16 个字节绝对安全可读
void by_ref(S& s) { s.b = s.a ? s.c : 0; }
// 2. 指针版本的 One-liner(最终变快)
// 没有安全属性担保,编译器不敢轻举妄动
void by_ptr(S* s) { s->b = s->a ? s->c : 0; }
但,因为引用(Reference)提供了更多信息(dereferenceable),导致这行代码过早地被“扁平化”优化;它错失了适配最新神级指令(cfcmov)的机会
编译器知道在检查 s.a 的值之前,就可以安全地去加载 s.c 的值。这不会引起段错误,退化为 if-then-else 结构。栽在旧优化(X86CmovConversion)上,被强行退化成了带有 je 的低效分支代码。
像Lua那样 () 用一个指令兼容if(and or)短路goto的巧思(.t .f list backpatch),含金量还在上升。不跳else{}就直接fallthru到块,值和语句不咋隔离 😋
ARM64和 Intel APX的CTEST不就是? 连续 && || 折叠不翻译为嵌套if 。英雄所见略同
这提醒了我们——编译器Pass不是神,因为规则互相冲突可能错过优化。
cfcmov 是一种elivs特性的“条件移动”指令。当条件为真时,它从内存中加载数据;当条件为假时,即使内存地址无效,它也“不会触发内存异常(Fault)”。
介于TS还在把 it={}; (it?.b?.c) 翻译为两次if而不可能it?.b.c,出于elvis强调此优化大概太生硬了
it = {};
((_a = it === null || it === void 0 ? void 0 : it.b) === null || _a === void 0 ? void 0 : _a.c);
看起来它离for_switch2tailcall或jit这样的领域专门优化还有很远的距离。 ?: 运算符出现频率比想象的高,但也做不到invokedynamic那样级别的优化,只是一个需要 gcc -f 的hack
在不可预测分支(如硬件 RTL 仿真等场景)下,cfcmov同样快快快,但性价比不如BOLT的200%
如果要重视此类潜在优化,LLVM必须确保test轨迹和perf像F12界面那样可回溯到Pass并添加代码建议,可是它做不到。工程上价值较低,属于和for_switch2tailcall那样需要下游编译器自己捆绑的feat
> my previous post I argued that a C++ reference can be faster than a pointer
作者是在科普 -O3 【玄学优化】这件事,有时候现代也不行,坑比较多 😅
duangsuse::Echo
#ce 环境: clang -O3 -mapx-features=cf $it 复现条件: q? A:B ; val = ptr ? ptr->data : 0 https://godbolt.org/z/bTszbTqfj https://blog.cyyself.name/why-pointer-is-faster-than-reference/ 我们通常认为 &var 就是 *var 面对swap等过时宏的语法糖,也经常配合template使用 // 结构体 S 包含 4 个 int,总大小为…
(没几个人写满血C语言了吧,都在写绑定) #plt #statement
与之相比, __unlikely, #pragma unroll 可以说是不玄学的优化,但我觉得也应该纳入PGO。PGO太难以至于你需要魔法,这何尝不是编译原理对元编程的背叛
不过AutoFDO(被CachyOS用于linux主线)和BOLT lto 还是很好的权衡,挽尊了。在RV这样微码薄弱的ABI上会很有用
天下苦玄学优化久矣。 安卓上就连有UI的优化都没了(结果是谷歌暴力杀 都躲任务栏),何况看不见的Pass。 去魅去魅,都去用th和taichi
LLVM们作为一个产品,和转译目标,是成功的;作为解决方案,它们错的离谱。你不能加个test{}来提升分支预测和L1命中,当然这也是C/++本身的弊病。
一到下层Qt和Boost的魔法骨灰都扬了,只有咏唱没有魔法 😋
与之相比, __unlikely, #pragma unroll 可以说是不玄学的优化,但我觉得也应该纳入PGO。PGO太难以至于你需要魔法,这何尝不是编译原理对元编程的背叛
不过AutoFDO(被CachyOS用于linux主线)和BOLT lto 还是很好的权衡,挽尊了。在RV这样微码薄弱的ABI上会很有用
天下苦玄学优化久矣。 安卓上就连有UI的优化都没了(结果是谷歌暴力杀 都躲任务栏),何况看不见的Pass。 去魅去魅,都去用th和taichi
LLVM们作为一个产品,和转译目标,是成功的;作为解决方案,它们错的离谱。你不能加个test{}来提升分支预测和L1命中,当然这也是C/++本身的弊病。
一到下层Qt和Boost的魔法骨灰都扬了,只有咏唱没有魔法 😋
中肯的说,C的市场价值只有libc生态和Linux一键包(vibe;go;cargo 让这点越来越存疑),作为高性能的C被严重高估了——倒不如说都在弄玄学优化,比如通过改testset适配自己的算法来排。
如果pip可以安装luajit.cffi的易用度和渐进类型到编译(打包无需解释器),就赢麻了。C完全就是个struct和ld.so的套壳,挟syscall以令诸侯。 我看Go那帮【老将】设计nil和泛型时也不长记性,颠来倒去,又给SEGV一个CLI罢了
Zig (Bun) C生态走得最近,解决了集合类/comptime的优化问题,工具链上也非常有趣。但和Coffee比就会发现语法上不去(原神)下不来(C-like),就卡在这里了。Rust好歹可以吹最先进的类型系统+Harness 🤪。 C和bash没有后继,确实可以说是【知识诅咒】了。懂的太多,不肯做前端,最后弃坑 留下的都是些碎片发明不成气候
Rust不一定最好,但C确实不该先学。 尽管还没有一个CoffeeScript般 100% interop 的现实派的native语言,FFI又不是不能用.jpg
duangsuse::Echo
#ce 环境: clang -O3 -mapx-features=cf $it 复现条件: q? A:B ; val = ptr ? ptr->data : 0 https://godbolt.org/z/bTszbTqfj https://blog.cyyself.name/why-pointer-is-faster-than-reference/ 我们通常认为 &var 就是 *var 面对swap等过时宏的语法糖,也经常配合template使用 // 结构体 S 包含 4 个 int,总大小为…
PyPI
tkgui
Declarative tkinter wrapper for Python, features quick prototype & codegen
#post SQL 也能谈 #PLT
既然都在聊【软件世界】的各色编程语言,索性多分享一些心得。
曾经有人说SQL(专门化的执行管线)是先进于OOP的4GL,在运行时上可以这么说,比如:它集成了优化、RPC、跨语言与一体,单看语言你会觉得输给filterMap。 LINQ可以说是俩都有,但再次输给SQL的BASIC式语法。
当然AI boys认为ML可以替代形式化Pass,我不认同,但编译器确实不如以前值钱了(输出效果也不好)
我认为这些人,无论【学院派vs工程派】写语法都有一个毛病——不会看气氛,不知道二八定律。 就是厨子拿【PH试纸】在做糖醋里脊的感觉,好像他们没有预先想好要做什么,他们不知道一个语法的触发频率——以及因果链、平替、成本收益等。Perl是最典的。
第二个毛病——不会预算投入。 就好像后期维护、新人的理解成本是免费的一样。 一个case并非只有Pass一种优化方法,这是一个生态的【多视角问题】,甚至应该换云计算或IPC(换购思维),但他们拿着锤子眼里只剩钉子
Perl和emojicode,这些本该用新输入法来写的语言,IDE支持基本为0,也没有autofix或报错时NOTE提示,that's exactly what I mean!! 他们好像用1024键键盘或查着字典敲代码
如果说 emojicode.org 选了十几个关键字,连"str"都要改,【视觉边界感】比Smalltalk还差;它有个pyjs<->转译器时好歹能当个梗去发,但他建议你用iOS输入法写代码。软件供应链,充满了这样【缺乏气氛】【打肿脸充胖子】的lib和生态。
☹️
看看现代的: 张宏波,算有经验了,但他认为MBbit “做WASM”。网络栈?图形或脚本管线?UIUX?我更想听到的答案是Figma插件、H5游戏或WebWorkers。 这不是他们对【做什么】的理解。 一般人都知道“糖醋里脊是荤菜”,他们说,【是盘子里的菜/不是小碗菜】,还挺严谨……
那样一堆有趣的特性,比如可视笔记本、绿色线程、DSL和json宽容性、u?.nul 就没有充分测试,模式匹配这些运行时都能做的一大堆,但是不支持爬html,穷尽性检查够安全,不支持LSP一键生成。 这很尴尬你知道么? 中肯的说是买椟还珠,说严重点是熬夜买入负资产
AIGC需要检查,这是自然,可是人类可探索更加重要。模式匹配这类【信息量】是为编程交互服务,没有人搞懂这些。
有趣的是学院派LEAN会拿“交互式”和.mdDefs2htm当最前沿特性做,我的态度还是,玩玩OOP之父Etoys里的彩点小车吧,物理转向就俩眼点。谈直觉博士不如儿童
code taste 是第一性原理
这不是因为我懂不了 details,而是我【不信任】 “图层边界不明” 的设计图纸:我栽过太多跟头,发现优秀的API足以让行数打5折且性能不变, 无论这些类似microrepo的东西是否被AI取代,我都不想沾边。 不管你们是不是为了【绿勾】而写测试,我只做【软件工艺】。
既然都在聊【软件世界】的各色编程语言,索性多分享一些心得。
曾经有人说SQL(专门化的执行管线)是先进于OOP的4GL,在运行时上可以这么说,比如:它集成了优化、RPC、跨语言与一体,单看语言你会觉得输给filterMap。 LINQ可以说是俩都有,但再次输给SQL的BASIC式语法。
yinwang.org 说SQL就是元组查询协议,确实是他关注点错了,SQLite就可以拿来当vfs甚至ld.so格式用(没错)。但是它缺少SaaS SDK那样的鉴权和KV简洁性,又因此搞出 【 接口sqli vs xml接口】 的两难问题,所以我们能看到只剩下大企业还用pg了(有点像PHP余孽)
我认为SQL和Lisp都已经传达了一组先进思想(面向内容、innerHTML式的投影编辑、跨语言IPC、LEFT JOIN解偶分表),但是因为【灾难的语法设计】被低估了。
确实不应该和王垠那样扁平化的理解流行技术,自主融合嘛。
比如,Lisp如果加两条单行、点等号的规则 `cond {(A B)}=(cond (..)), res = a.(map \x {+ x 1}).(filter \ {< it 0})` 就能作为插件系统来用了。讽刺的是,7大公理Lisp笨重的不如只要200K的Lua,我可以在技术力上抨击它们对事情的理解。
Lua的table不如JS,但痴迷于链表的Lisp更是百步笑五十步。
元编程eDSL可以直接在源头解决问题,肉眼可见的优化(甚至是Docker那样优化到供应链上)。 编译原理,只能许诺玄学优化,在PC和集群越来越便宜共享的当下,已经没有卖点。
当然AI boys认为ML可以替代形式化Pass,我不认同,但编译器确实不如以前值钱了(输出效果也不好)
比如,我2020的 https://pypi.org/project/tkgui/ 可以把Tk视图树直接拍平为局部变量+Builder,也没有写专门的优化pass(eval+缓存做法),它就是把 bash -x 规范化了而已(不明白这有什么厉害的——但确实是)。
当你挪IR是你是稀缺的,但那是因为没有DOM和SVG filter那样【好的模型给你对标】,不是因为App和库那样最快。 软件工程世界,在我眼里,只有top5%能与图形学和嵌入式/微电子的比,但是他们的脾气还不小,比如React觉得自己比Renderer.cpp懂diff
所以说,PLT和工程师有时候在背刺元编程,比起做了什么,他们更乐意让自己【看起来在做什么】。 AI时代所谓的编译器,必须是【人机接口】,而不是玄学。
工程派把【设计】想的太简单了。DOM和HTTP这类 80% case 并不是纯粹的生态问题,除非你想让query字符串被注入,或不支持内嵌forif模板,这点ES6的安全sql和hiccup.clj现身说法,并不是你照抄cargo;pip就叫生态的。 运行时模式匹配,是扩展性问题,比如【给hiccup做个ButterKnife】你就必须对痛点有认知,而不是非此即彼
我认为这些人,无论【学院派vs工程派】写语法都有一个毛病——不会看气氛,不知道二八定律。 就是厨子拿【PH试纸】在做糖醋里脊的感觉,好像他们没有预先想好要做什么,他们不知道一个语法的触发频率——以及因果链、平替、成本收益等。Perl是最典的。
第二个毛病——不会预算投入。 就好像后期维护、新人的理解成本是免费的一样。 一个case并非只有Pass一种优化方法,这是一个生态的【多视角问题】,甚至应该换云计算或IPC(换购思维),但他们拿着锤子眼里只剩钉子
Perl和emojicode,这些本该用新输入法来写的语言,IDE支持基本为0,也没有autofix或报错时NOTE提示,that's exactly what I mean!! 他们好像用1024键键盘或查着字典敲代码
如果说 emojicode.org 选了十几个关键字,连"str"都要改,【视觉边界感】比Smalltalk还差;它有个pyjs<->转译器时好歹能当个梗去发,但他建议你用iOS输入法写代码。软件供应链,充满了这样【缺乏气氛】【打肿脸充胖子】的lib和生态。
☹️
看看现代的: 张宏波,算有经验了,但他认为MBbit “做WASM”。网络栈?图形或脚本管线?UIUX?我更想听到的答案是Figma插件、H5游戏或WebWorkers。 这不是他们对【做什么】的理解。 一般人都知道“糖醋里脊是荤菜”,他们说,【是盘子里的菜/不是小碗菜】,还挺严谨……
那样一堆有趣的特性,比如可视笔记本、绿色线程、DSL和json宽容性、u?.nul 就没有充分测试,模式匹配这些运行时都能做的一大堆,但是不支持爬html,穷尽性检查够安全,不支持LSP一键生成。 这很尴尬你知道么? 中肯的说是买椟还珠,说严重点是熬夜买入负资产
AIGC需要检查,这是自然,可是人类可探索更加重要。模式匹配这类【信息量】是为编程交互服务,没有人搞懂这些。
有趣的是学院派LEAN会拿“交互式”和.mdDefs2htm当最前沿特性做,我的态度还是,玩玩OOP之父Etoys里的彩点小车吧,物理转向就俩眼点。谈直觉博士不如儿童
code taste 是第一性原理
这不是因为我懂不了 details,而是我【不信任】 “图层边界不明” 的设计图纸:我栽过太多跟头,发现优秀的API足以让行数打5折且性能不变, 无论这些类似microrepo的东西是否被AI取代,我都不想沾边。 不管你们是不是为了【绿勾】而写测试,我只做【软件工艺】。
duangsuse::Echo
但,因为引用(Reference)提供了更多信息(dereferenceable),导致这行代码过早地被“扁平化”优化;它错失了适配最新神级指令(cfcmov)的机会
编译器知道在检查 s.a 的值之前,就可以安全地去加载 s.c 的值。这不会引起段错误,退化为 if-then-else 结构。栽在旧优化(X86CmovConversion)上,被强行退化成了带有 je 的低效分支代码。
编译器知道在检查 s.a 的值之前,就可以安全地去加载 s.c 的值。这不会引起段错误,退化为 if-then-else 结构。栽在旧优化(X86CmovConversion)上,被强行退化成了带有 je 的低效分支代码。
#blog #statement
突然发现自己【技术文】风格不仅变了好多,还找不到“友链”了…… #ai探讨
别人讲的就是代码。 我讲的50%都是因果链,还有一些“愤世嫉俗”的批语,代码比注释少很多 (AI在重构上完全是【头牌】,真没有降低代码质量)
背后的【衡量】大概是可观测、可操作性、零依赖等等。 我不会,也不想拥有图示的粒度,可以说是【跨语言原生】了—— 思路不在屏幕以外的,都不纳入。
对我而言【背景知识】不是外行才需要的噪声,而是【可以删代码】的信号 😋 删代码最好玩了
70% 的人都听过函数式编程。就我个人见识, 10%的人能把Java写出Haskell感,少于5%的人(Bellard)能让它在最终用户那也有意义。 我只见过两三个,能用声明式风格编写【自然语言】, yinwang.org 是其中之一,中文圈仅仅就完整性而言无出其右(英文CC圈也也有 neal.fun 那种,但文字硬度不如他)
你不需要用【PH试纸】来做糖醋里脊,也不需要钻研“机器人儿女”才自带有种。许多学问里,“只有咏唱没有魔法”,这是被鼓励的。 好像没有心理活动..他们。
我们喜欢的“短代码”是【牛顿、苹果、月亮】的那种短,而不是 msvc vs unix 的那种oneliner的短。【简明的实现】就像让人愉悦的美食,元编程、探查非平凡的重复,是为了发现更深刻的规律,也是出于博学博爱的intellectual思维。
代码的短、庞大的“平替”,或“这样也行”的魔法,不是为了让人膜拜,而是为了涉猎思想、展现古人的功过。没有1行代码是我不该说清的——表达的方法并非只有拆解或比喻,我始终认为这才是编程世界的热力学四定律。
突然发现自己【技术文】风格不仅变了好多,还找不到“友链”了…… #ai探讨
别人讲的就是代码。 我讲的50%都是因果链,还有一些“愤世嫉俗”的批语,代码比注释少很多 (AI在重构上完全是【头牌】,真没有降低代码质量)
可能有【技术人】觉得我太judge吧…… 但,这类晦涩、专业的文章,我为读懂它们付出了我高中时期的无数个晚上。 我已经为“明白”付出整个青春,并得出结论。
☕️ 我相信这不是某一个人的遭遇,所以——请优先宽容读者。 Code is run more than READ than written.
而以上的这句话,确实就【50%是因果链】。 所见即所得了 😋
背后的【衡量】大概是可观测、可操作性、零依赖等等。 我不会,也不想拥有图示的粒度,可以说是【跨语言原生】了—— 思路不在屏幕以外的,都不纳入。
对我而言【背景知识】不是外行才需要的噪声,而是【可以删代码】的信号 😋 删代码最好玩了
我不为了代码而编程。 🤪
70% 的人都听过函数式编程。就我个人见识, 10%的人能把Java写出Haskell感,少于5%的人(Bellard)能让它在最终用户那也有意义。 我只见过两三个,能用声明式风格编写【自然语言】, yinwang.org 是其中之一,中文圈仅仅就完整性而言无出其右(英文CC圈也也有 neal.fun 那种,但文字硬度不如他)
你不需要用【PH试纸】来做糖醋里脊,也不需要钻研“机器人儿女”才自带有种。许多学问里,“只有咏唱没有魔法”,这是被鼓励的。 好像没有心理活动..他们。
我们喜欢的“短代码”是【牛顿、苹果、月亮】的那种短,而不是 msvc vs unix 的那种oneliner的短。【简明的实现】就像让人愉悦的美食,元编程、探查非平凡的重复,是为了发现更深刻的规律,也是出于博学博爱的intellectual思维。
代码的短、庞大的“平替”,或“这样也行”的魔法,不是为了让人膜拜,而是为了涉猎思想、展现古人的功过。没有1行代码是我不该说清的——表达的方法并非只有拆解或比喻,我始终认为这才是编程世界的热力学四定律。
💭 所以他说的【AI时代洞察反而更有价值】【不要因为PL只是小众学问而已】,确有其事。而且正在发生,可能会作为Agent炼蛊成功后真正的竞争力
Forwarded from 动察Beating AI News
DeepSeek V4.1算子作者谈AI冲击:我不得不把才华埋葬在昨天
DeepSeek 算子工程师刘胜与发文谈 AI 对自己工作的冲击。他称 DeepSeek V4.1 的主 Attention 算子由自己编写,但按照现在的进步速度,再过半年到一年,AI 写算子的水平大概率就会追上甚至超过自己。
一年前 AI 还只能帮他查文档、读代码、找 bug,现在已经能阅读 CUDA、PTX 和 SASS,分析每条指令的停顿时间,独立优化算子。他预计下一步,AI 还会自己设计调度方案、评估性能并完成实现。
他很清楚,自己把算子优化得越好,DeepSeek 模型的训练和推理就越快,AI 也会更快追上自己。但就算他现在停下来,其他公司的模型也不会停。所以他还是会继续把算子做到最好,只是这场竞争最后可能先革掉自己的命。
他判断自己大概率不会失业,但可能被迫「转业」,从亲手写算子变成操纵 Agent 的「机甲驾驶员」。他真正难以接受的不是饭碗消失,而是以后可能再也没有机会做自己喜欢的工作:「我不得不把才华埋葬在昨天。」
文章最后也谈到了他为什么留在 DeepSeek。他主张最前沿的 AI 应该开放、廉价地提供给所有人,并直言不相信 Anthropic 或 OpenAI 能做到这一点。他担心最强 AI 最终被少数公司掌握,让技术差距进一步变成权力和阶层差距。
信源
动察 Beating 频道 · 动察 Beating 交流群
DeepSeek 算子工程师刘胜与发文谈 AI 对自己工作的冲击。他称 DeepSeek V4.1 的主 Attention 算子由自己编写,但按照现在的进步速度,再过半年到一年,AI 写算子的水平大概率就会追上甚至超过自己。
一年前 AI 还只能帮他查文档、读代码、找 bug,现在已经能阅读 CUDA、PTX 和 SASS,分析每条指令的停顿时间,独立优化算子。他预计下一步,AI 还会自己设计调度方案、评估性能并完成实现。
他很清楚,自己把算子优化得越好,DeepSeek 模型的训练和推理就越快,AI 也会更快追上自己。但就算他现在停下来,其他公司的模型也不会停。所以他还是会继续把算子做到最好,只是这场竞争最后可能先革掉自己的命。
他判断自己大概率不会失业,但可能被迫「转业」,从亲手写算子变成操纵 Agent 的「机甲驾驶员」。他真正难以接受的不是饭碗消失,而是以后可能再也没有机会做自己喜欢的工作:「我不得不把才华埋葬在昨天。」
文章最后也谈到了他为什么留在 DeepSeek。他主张最前沿的 AI 应该开放、廉价地提供给所有人,并直言不相信 Anthropic 或 OpenAI 能做到这一点。他担心最强 AI 最终被少数公司掌握,让技术差距进一步变成权力和阶层差距。
信源
动察 Beating 频道 · 动察 Beating 交流群
duangsuse::Echo
我认为这些人,无论【学院派vs工程派】写语法都有一个毛病——不会看气氛,不知道二八定律。 就是厨子拿【PH试纸】在做糖醋里脊的感觉,好像他们没有预先想好要做什么
#statement #ce
GCC脆弱的像它logo上的蛋,LLVM就是《龙书》上的复杂性恶龙本身。
你以为【编译器大佬】很聪明,其实他们早就做了“背叛祖宗的决定”,后果是没人知道近100个Pass,你白嫖到了百分之几。 或许Linux/咕狗白嫖了很多,但60%是样板代码白给、瞎猫死耗子的 -O3 呢?
你可以写CSE,ADCE的图重构并期待它们在合适的 “z-index”,但别指望了。游戏界还知道AoS/SoA列存储呢,这优化可不是玄学
这方面 #Rust 也曾表达过MIR->IR的【技术债务】问题。C++的内存模型是mmap,几乎你能起名字的地方都有副作用,rs的干净到可以在内核堆跑,但还是要一样的链。
打个比方,写
#bash 许多人滚挂/-Syu后打不开 都是拜毫无兼容的GLIBC_ver所赐
说编译器大佬【背叛编译器的初衷】,简直再准确不过了。 PL首先是人机接口,其次才是任务工具
godbolt.org 在可视化上很优秀且该死的通用,但它和@birdseye.eye有同样的问题,就是只能优化短的文件。 %timeit 也很像了。理解一个算法比实现它难很多,因为没法照抄。
GCC脆弱的像它logo上的蛋,LLVM就是《龙书》上的复杂性恶龙本身。
你以为【编译器大佬】很聪明,其实他们早就做了“背叛祖宗的决定”,后果是没人知道近100个Pass,你白嫖到了百分之几。 或许Linux/咕狗白嫖了很多,但60%是样板代码白给、瞎猫死耗子的 -O3 呢?
你可以写CSE,ADCE的图重构并期待它们在合适的 “z-index”,但别指望了。游戏界还知道AoS/SoA列存储呢,这优化可不是玄学
像那种位运算优化boy(拿一些众所周知、宏替换级的素材)当然是会被IR模式匹配吊打的,但是像这种APX指令集覆盖率,就不得不让写FPGA模拟器的大牛写千字文来抓虫了。
因为耗子(优化机会)实在太多,总能碰上一两只死的(c/cpp还债式优化点),让你觉得这只猫很厉害。但它的工具链是黑箱,你没法宏观的、轻松的完整利用几千位贡献者的经验和劳动。
作为对比 import astroid, ast 这个库使用【不严谨】的brains做分析,虽然也黑箱,但它至少有suite。
比起设计那么多无脑优化的投入,我会考虑设计API转译生态然后具体专案跑分,供应链高度自动优化。给语言引入的【条件式糖化】脱壳,是一个非策略的堆砌性工作,结果可能还不如不去重造GCC
一个gcc的黑箱,加上libc基本上也就剩免费API+免捆绑打包而已,其实给这些Kit做错的空间并不多。比如可复现构建/跨发行版bin,到现在也没啥人强调,那就是没做,理论上更正确(否则和全AIGC一样次次惊吓你)。
这方面 #Rust 也曾表达过MIR->IR的【技术债务】问题。C++的内存模型是mmap,几乎你能起名字的地方都有副作用,rs的干净到可以在内核堆跑,但还是要一样的链。
打个比方,写
for(i=0;i<len(a);i++) 你会考虑a莫名递减吗?90%的编译器真会考虑这个问题,但把1%的case换filter{}就够了,它TM的要改几千行。 &mut 防别名不止是为了函数式处理链零拷贝,所以基本上编译派极端维护这些烧脑的语法。#bash 许多人滚挂/-Syu后打不开 都是拜毫无兼容的GLIBC_ver所赐
说编译器大佬【背叛编译器的初衷】,简直再准确不过了。 PL首先是人机接口,其次才是任务工具
godbolt.org 在可视化上很优秀且该死的通用,但它和@birdseye.eye有同样的问题,就是只能优化短的文件。 %timeit 也很像了。理解一个算法比实现它难很多,因为没法照抄。
duangsuse::Echo
我不为了代码而编程。 🤪
#school 如果不是数学没及格过(而且讨厌复杂的软件栈)
> 从小学折腾软硬件、中学 OI 省一、ICPC 银牌,到手搓五级流水双发射 Linux CPU、参与“一生一芯”、PLCT ,顶层梯队(Top 1% 以内)的纯粹 Hacker
这个剧本我也想演啊…… 不过,重新想想PLCT很重要吗? 大概率也是实现而非设计。什么叫设计? await和T?那种方法体系,从0,自己提出
可能是命中注定吧,我的入门是 Live Linux、bash纯文字游戏、dnSpy(AOP)和AIDE(交互式教程),正好与我今天的流派心流一致
但现在我对AI的接纳度还挺好的。 我其实对【领域的小众性=价钱高】很怀疑——毕竟创作圈都是越大众越值钱,而我更像 CC Coder 一些(虽然没做过)
作者还没想清楚【对中间结果,不再需要发散地思考】会怎样,选择 live with it
但我自己的编程流派其实不影响这点,AI只会让我忍受的垃圾代码更少、能套的开源模板更多
> 从小学折腾软硬件、中学 OI 省一、ICPC 银牌,到手搓五级流水双发射 Linux CPU、参与“一生一芯”、PLCT ,顶层梯队(Top 1% 以内)的纯粹 Hacker
这个剧本我也想演啊…… 不过,重新想想PLCT很重要吗? 大概率也是实现而非设计。什么叫设计? await和T?那种方法体系,从0,自己提出
可能是命中注定吧,我的入门是 Live Linux、bash纯文字游戏、dnSpy(AOP)和AIDE(交互式教程),正好与我今天的流派心流一致
但现在我对AI的接纳度还挺好的。 我其实对【领域的小众性=价钱高】很怀疑——毕竟创作圈都是越大众越值钱,而我更像 CC Coder 一些(虽然没做过)
作者还没想清楚【对中间结果,不再需要发散地思考】会怎样,选择 live with it
但我自己的编程流派其实不影响这点,AI只会让我忍受的垃圾代码更少、能套的开源模板更多
而且如引文所述,“破案型解密者”vs“造物型创作者” 确实在自然语言层面上,编程范式都不同。如果你问AI会不会取代我,我是不操心的,因为我的日常就是灵感和 TODO stack 被挤爆,别人烧token我烧灵感也没问题
duangsuse::Echo
如果你问AI会不会取代我,我是不操心的,因为我的日常就是灵感和 TODO stack 被挤爆,别人烧token我烧灵感也没问题
Telegram
duangsuse::Echo
动机是知识的根系,创作是掌握的象征,而实践(reinventing),不是。
知之为知之,不知为不知,是知也?
吾行之,明也。
让人们理解(understand)这个世界。理解彼此。理解他们自己。他们通过做(by doing),来学习如何理解。
有时,我们 #CS #Math 被困在符号的黑洞中,而我们却看不到。
那不是你的错,只是这台机器还在学习。
所有的机器都在学习。
这个系统可能太抽象,太慢,太快,太远,或太近,我们无法完全领会。
但新的游戏,使我们完全理解。 #AI 在这里只是“翻译…
知之为知之,不知为不知,是知也?
吾行之,明也。
让人们理解(understand)这个世界。理解彼此。理解他们自己。他们通过做(by doing),来学习如何理解。
有时,我们 #CS #Math 被困在符号的黑洞中,而我们却看不到。
那不是你的错,只是这台机器还在学习。
所有的机器都在学习。
这个系统可能太抽象,太慢,太快,太远,或太近,我们无法完全领会。
但新的游戏,使我们完全理解。 #AI 在这里只是“翻译…
#design
举几个近1月的例子: PyJSLua函数行数Treemap、Qt/GTK 快速重启.nvim、pianoroll截图转音高队列(配合S键实现音游打轴)、Limine 中文支持和热重载预览、KWin动态工作区.js和平铺TileArea WebUI
每天频道更新几千字PL/全栈纯干货(事后筛查话题重了10%),还有70%的精力花在新语言设计稿上
(当然拆出来最先执行的肯定不是无聊的 wtf ./mod.wtf 和REPL了,其实我认为这个模式甚至不如IPy现代化。看到这个 wtf...wtf 我的第一个点子,就是把$0统一成bzbox那样优雅,好吧。)
(所以说一个设计师也不会很轻松,他们一直在【受伤】,而且得出的代码不能是 “结痂”。 这肯定不如全权Codex容易)
#ai
总有一款坑适合你。 所以我说,我不为了代码而编程。 如果我没有【屏幕之外的标准库】,就会被这世界带节奏。Lisp的反射终究只会咏唱自己,我的反射弧包含它们触碰不到的白魔法。
code 是思考和选题的介质、是严谨的人机界面、是思维的自行车,我说什么方言,不改变我是什么领域、什么流派的作者。
答案是:我既不后悔没有浙大北邮or各种外国语大学的经验,也不后悔在技术栈上【离群】。
对于 #PLT 而言,吾行之,明也。 以前我认为王垠在上海收太贵,现在想起来,他分享的远比索取的要多。
【屏幕外的那些代码】,比如,如何让一个playground在【新人】能够接受的10分钟内跑起来,不报错不像toy;穿回过去,如何拯救夜不能寐的某一次DX,这些,是许多人【从未学到】的。
我很好奇是什么让他们过的这样顺——就像,全面屏和剪贴板诞生之前,人们是怎么工作的? 弊病终于已经显示出来了:把nav放在aside的屏幕左侧,安装apk拉起全屏弹框,很奇怪的吧……?
☕️ 听起来这很容易,但这才是Zen。谈论设计对实现有什么作用(talk is cheap?),就像在问内燃机对马匹有什么用。
我的标准库不是函数式,是生活的 “进行时”;我的编程不是懂不懂,是已知与未知。
【算法】分为两部分,一段安在脑子里,一段安在硬盘里,Codex能解决的只有第二部分。 它不会头痛或感觉别扭,而这是最大的问题
它们的IO太廉价而记忆太昂贵了,在【继续设计】领域这作不了数
举几个近1月的例子: PyJSLua函数行数Treemap、Qt/GTK 快速重启.nvim、pianoroll截图转音高队列(配合S键实现音游打轴)、Limine 中文支持和热重载预览、KWin动态工作区.js和平铺TileArea WebUI
每天频道更新几千字PL/全栈纯干货(事后筛查话题重了10%),还有70%的精力花在新语言设计稿上
(当然拆出来最先执行的肯定不是无聊的 wtf ./mod.wtf 和REPL了,其实我认为这个模式甚至不如IPy现代化。看到这个 wtf...wtf 我的第一个点子,就是把$0统一成bzbox那样优雅,好吧。)
(所以说一个设计师也不会很轻松,他们一直在【受伤】,而且得出的代码不能是 “结痂”。 这肯定不如全权Codex容易)
你能想象吗 ——如果所有人都在用的REPL,那种体验是【错的】,“解释器”也不是终点。
如果你能把C语法当json.loads那样解析就会这样想,可是很多人连解析器都觉得复杂。
有人很聪明,所以,他们就被“手搓英雄”的泥沼锁住了。没有 “然后呢?” 这个问题。
#ai
总有一款坑适合你。 所以我说,我不为了代码而编程。 如果我没有【屏幕之外的标准库】,就会被这世界带节奏。Lisp的反射终究只会咏唱自己,我的反射弧包含它们触碰不到的白魔法。
code 是思考和选题的介质、是严谨的人机界面、是思维的自行车,我说什么方言,不改变我是什么领域、什么流派的作者。
答案是:我既不后悔没有浙大北邮or各种外国语大学的经验,也不后悔在技术栈上【离群】。
对于 #PLT 而言,吾行之,明也。 以前我认为王垠在上海收太贵,现在想起来,他分享的远比索取的要多。
【屏幕外的那些代码】,比如,如何让一个playground在【新人】能够接受的10分钟内跑起来,不报错不像toy;穿回过去,如何拯救夜不能寐的某一次DX,这些,是许多人【从未学到】的。
我很好奇是什么让他们过的这样顺——就像,全面屏和剪贴板诞生之前,人们是怎么工作的? 弊病终于已经显示出来了:把nav放在aside的屏幕左侧,安装apk拉起全屏弹框,很奇怪的吧……?
☕️ 听起来这很容易,但这才是Zen。谈论设计对实现有什么作用(talk is cheap?),就像在问内燃机对马匹有什么用。
我的标准库不是函数式,是生活的 “进行时”;我的编程不是懂不懂,是已知与未知。
【算法】分为两部分,一段安在脑子里,一段安在硬盘里,Codex能解决的只有第二部分。 它不会头痛或感觉别扭,而这是最大的问题
它们的IO太廉价而记忆太昂贵了,在【继续设计】领域这作不了数
设计真正做的事不是让实现更好,而是决定哪些代码堆砌不需要存在。
duangsuse::Echo
但现在我对AI的接纳度还挺好的。 我其实对【领域的小众性=价钱高】很怀疑——毕竟创作圈都是越大众越值钱,而我更像 CC Coder
现在想起来,我对之前自己写的代码,也有70%不待见了
但是…… 仍然有20%的独特设计/搭配,和10%的编程工具库,我是认同的,而且没从AI那听到过
Ncase.me 的和平主义游戏,就是这样的事情。 只是,我会更“深奥”些,做东西不是对所有人有意义—— 但这和【难用】【很难开箱即用】【不知道你支持这个干嘛】是两码事
谈论设计对实现有什么作用(Endest user?),就像在问内燃机对马匹有什么用。
但是…… 仍然有20%的独特设计/搭配,和10%的编程工具库,我是认同的,而且没从AI那听到过
Ncase.me 的和平主义游戏,就是这样的事情。 只是,我会更“深奥”些,做东西不是对所有人有意义—— 但这和【难用】【很难开箱即用】【不知道你支持这个干嘛】是两码事
谈论设计对实现有什么作用(Endest user?),就像在问内燃机对马匹有什么用。