duangsuse::Echo
957 subscribers
4.9K photos
154 videos
588 files
7.26K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): a19a0b
Download Telegram
duangsuse::Echo
可编程性就是从约定里来的
你们别看我经常写脚本,我的API思维没有被 #bash #py 带偏……🤔

给不懂开发的极客科普下「编程范式」的进化吧,比如说 C, Java, JS(Vue)和SQL
它们分别是 [面向过程POP] [面向对象OOP] [函数和关系式FP/Reactive]

#learn
三种范式,可以从语言学、指针宽度、类型广度 拆解比喻一下。
编程范式,就是看「如何把数据和代码绑在一起更好续写」? 实践上,语法和类型能够辅助思考。
Rust 是一个静态优化、支持预处理(码可揉)的OOP, 它的函数式能力不如pyJS,这是省略变量树GC的代价。

# 语言学: VSO,SVO,noVerb 🌐

以文件夹版本控制/网盘站 GitHub.com/:u/:repo 的 $ gh 工具为例
gh login
gh new-repo $(rand).paradigm.org


这个功能点所见即所得,那拿3种范式将其封装为函数。
loginGh(id, secret): VO
newGhRepo(id): VSO


坏处是无法管理多个账户,所以只能写写游戏脚本、按键精灵、爬虫。

很明显,这是因为账户和 $HOM/ 的配置文件耦合了,成为了 globalThis。把this配置参数化,我们不仅能多账号,还收获了json这种文档格式! C语言的 .o 对象,就缺乏局部键值,只有线程局部。

gh=Gh.login(id,secret): SV
gh.newRepo: SVO
# 范式是跨语言的
(u= gh login root toor)=="gh badguy"
$u repo new (randProj)

这样才符合人类直觉: 不要光 call, 要 with 🥰

虽然他没有“优化掉”arg0(为全局 省字数),但因为全局是可以随便加的,class{} 键值是密封的,在开小号之外,我们又有了类型和补齐


所以更OOP(但反直觉)的写法是:

gh=Gh.new(id,secret): Snew
gh.Repo.new('jackass'): SnewO

Gh.static.setApiURL(): SgetsetO
这一条是不依赖登录的(静态函数)。

OOP优秀的一点是调用链, Object也可以作为 context Subject 继续作联动(类似SQL JOIN)
不过,叠3层new就说明这框架不能用了,过度设计。

最后是FP,因为很多人高估了FP的语意,甚至用纯函数冗余来 “拉抬🐷价”,我要加个需求以彰显其意义:
login() 要支持OTP单次密码,而它必须在密码正确后才能输入,或者要多次重试…… 但 ()=>栏目答都能胜任:
Gh.login(uid,secret, otp=> device._2fa.get(otp))

一般来说,FP 用户不会缺少对OOP的进阶理解,比如用 get(otp) 重载 db.otp.getKey(otp) 、用 atoi:Int=>[Int ValueError Mayfail],这种摘要性(或者说严谨)好的心智模型,而不是和JQ那样只懂起名和拼凑调用链的库一样。
Vue对单 ref() 多显示的理解也是靠起名无法实现的。

btw. 命名动词还是有意义的。 比如佐人经常区分「买」和「雇佣」,「赤字」和「借」,但事实上是一样的。 混淆视听会损失类比的空间。

FP对于 gh newRepo 这种业务也有加成,比如用 await Promise((ok,KO)=> callback=ok ) 自动回调化来避免嵌套的「闭包链表」,实现yield分块优化等等

# 指针宽度

指针就是超链接。 它的域名是你的内存,地址是一个64或32位的整数,有 rw, r, rx 三种经典鉴权段位。 对JVM和v8来说,并不是所有bit都用于标记一串byte元组(struct)的读写位置,至少x64上的void* 只有52个有效位。
C, Java, JS(Vue) 里本质上是指针(Any/interface{}类型) 的模型,信息量也不同。

C: 单个内存地址,比如x32就是2**32, 4G 随便存,x64就是天文数字 (但是没有意义,比如,连是 int, 普通struct, Umbrastr 都分不清,需要printf手写%d )
Java: this=data+funcs 双指针,把变量树和方法表存在一起,可以 override ,再比如用 args=Array[0:length] 取代 (argc,argv) 元组,也是头尾双指针
Vue: ref()= N个回调 多指针, 回调可用于赋值,可以随便组合数据与计算、业务逻辑;SQL外键同理,可以用于拆分表单,多处复用

# 类型系统

C: 基于sizeof,没有 range/str/list/kv(tuple set) 等(可变)容器, 没有 T::fun 等模块化
Java: 基于 obj.(type) ,类型存在于编译期和运行期,可以数据化(反射),可以像函数值字典的Builder一样写class{}
Vue: 因为领域不同,JS 更重视业务而不是可维护性。 类型只是IDE的工具,没有优劣,🤓 DOM 的宽广和稳固、框架的繁荣让JS无需类型即可安全高效

最后,在标志性「语言特性」上,自古以来是这样:
- biosC=x86nasm+函数和8种整数的超链接
- C=biosC+ld文件maps内存段+CPU分片 (作为"libc的JVM")
- PyJS=C+双指针和kw左值传参 [双指针fatPtr] ([len,] {type:}和{proto:{vtable}} {_树内硬链接refcount:0} 均占用16byte)
- FP=PyJS+单函数组合+正择解构再构 (谈UIUX框架,没有[轮询或卡线程pull]是evpoll&push、多监听取代不了的,只是,C的无闭包和while(1)死循环,禁止了回调链表新加异步栈)


假如,编程是让懒得点黑框框的人用电脑,元编程就是让看不懂花花代码的人用编程。 所以,编程范式的「组合穿搭」还是很重要的,并不是古生物学那样的冷门哲学

试想一下,如果就连框架作者、架构师用的语言和runtime你都知根知底, 你自己设计,或分析吐槽别人的作品,还困难吗? 基础领域并不是象牙塔,它与软件开发者的身心健康息息相关。
#plt #py 有时候

我只是在想,

或许Guido最厉害的优化是在脑子🤠里的JIT

这种编译优化不需要工作,只需要休息?

toml.io

#ai锐评 https://g.co/gemini/share/300a4ecb20d3
duangsuse::Echo
#PLT 我想吐槽 #Haskell 根生的可用性问题。f(1+1) 里int(2)的懒求值是蛤丝的“特点”,而 add=(\a \b a+b) 的强制“解耦合”是纯FP风俗,异曲同工 这是在制造“熵增”。 我们都知道 @autoclosure,即 f(1+1) 等效 f(lambda:1+1) 是Lazy<T>的必须(时间换空间,这是混淆求值阶段的代价),懒有什么好处呢? 允许自定义 if(Q,A,B) 和 and(A_or_break, B) “函数”?单子宏?这是在乱搞。 ((1)+1)==(1+1)…
在typer里,int(x)是用“类型占位符关系”,有损压缩,来把语义装在4GB以内的,这自然认不得值域,尤其是 a[i],i<len(a) 这样by-one的信息量 #py #java

求值要在离开【作用域/帧】之前。Monad IO() 的本质就是迟迟不运行,生成一个链表一样的玩意(JS里称其调用栈,Java叫它线程),这可不叫纯的世界,因为它的“延迟绑定”(Algebra Effects)早就被原型链和DSL淘汰了。

foldMap(和 >>=) 是什么?是一次性把程序用【范畴论】写对,喂给JVM去跑?瞎想。>>= 右侧的续延,是不可判定的,集合论不能预知用户内容(IO)的未来。纯函数就是一个编程届的“广义相对论”,是抽象废话,它走一步看一步,还不如AST树状图!

蛤丝为何执着于 if(Q,A,B) 和 and 呢?因为他们根本不懂组合逻辑(DSL化)。答案就在问题里: @autoclosure,或者说 '() 和 ,() 宏,哪怕是yield和print(stdout PIPE时续延),这就是所谓的if和and:每一帧都有值,是帧可以“流动”。


回到“递等式”的隐喻,其实 by value 与 by name(and dict),或Scala那个所谓的 by need(and T|null),那就像Lisp幼儿园时期的 capture avoiding 一样,根本搞错了目的。

(\x x+1) 和 (\x 1+x) 在树状图上看来是一样的吗?bash都知道这是 [:+ 1 $1],F10消耗一步找一条函数签名,(VM.atom :+) 的两边可能是str或int,

——不是"x"出现了1次,不是x在rsp-8,是x和1【会一起】GC,"x"和"x"【会一起】set,而它们算好后有“return地址”,只因为【公共子表达式是消除的】,这才是PLT。

eval/apply 的自然序没什么正确,除了“熵减”。求值秩序是个大问题,因为Monadic的一切和typeclass,都是从这种错误的哲学里边来的。

当一个Haskell程序员想做最简单的事——“先打印A,再打印B”,然后 IO () 的伪链表就【伟大】了。C'mon ,难道UNIX没告诉过你 SYS_write(1) 就是惰性消耗和call/cc的吗?而且,绝大部分libc用户都不知道。FPer知道“惰性”,所以他们不懂。

函数其实像存读档一样简单,因为 ((1)+1)==(1+1) 本来就得证,你只是体验它。CSer,学会过这个吗? 🏫 👨‍💻
duangsuse::Echo
类型检查器都没见过,就开始元编程、写宏。现在计算机都开始纯数值怪了,一个AD 30行py都能写出来,永远落后一步
#py #code 微积分真是30行py就定义完了。用数学书教的那套文本替换,直接被淘汰。

怎么可能同时=0和不=0,就是有两个数同时算 😅

我的天,这还需要人教吗? 同时是和不是,波粒二象性、同时死和活,说明体系自己有毛病啊,还整出个lim和 ♾️

我没听过哪个ML或DSPer因为发明了【两个数同时算】而命名过定理的,不这么设计数制,公式就属于精分好吗。

还有集合论的 ZFC hack,真是🤡死了。哥德尔编码(元循环解释器)不去戳穿皇帝新装,还有罗素悖论,那么简单,就能把集合论的函数模型毁了,不就是说明概括公理很丑吗?

再多的公理堆砌,379页证明1+1=2,1行的理发师就把头给剃了,这说明世界认知的【出发点】脆弱不堪

每天 dy/dx, (a※b)(c※d) 真TM丑死我了,这ab又cd、三维ijk的有半毛钱关联性吗?留着是推理 f(x+1)-f(x) 的?自己数轴都不对(无穷微分的幻觉)。写成 D(x^2)=2x 直接发明Rust模式匹配和递归定义好吗


构造-解构和递归都没有算什么严谨啊? 就这,还指导计算机呢

都是赖在新手村装神弄鬼的,真的唐完了,i=√-1, C=2πr 多写几个字就看得出来没什么天才,就是物理世界「说的明白」的直觉。😅😅😅

他们的需求很容易被比喻: 看视频时,你需要dt=(1/60),占有限的权重,而下载或处理mp4时,你需要【一键看完】,所以要趋于无穷快。在离散微分里,这仅仅是单位1不同,但在数学上就悖论了
离散就是有全局变量d的连续,非线性的基石是二次型,不是正确的N阶导废话,π前也不该粘上2,1 turn(1τ)是整体事件

能把圆周率、距离平方和vec2砍成一半(τ/2, d2, sin cos) 还出了【悖论】的高数也真是【宇宙的母语】了。服了。

https://github.com/Kuri-su/yinwang.bak/blob/master/articles/数学和编程.md
https://themackabu.dev/blog/js-in-one-month #dalao #ce 兽圈聚聚多啊

花了10分钟看文,看完后才发现他是从parser开始写的(BDWGC+libuv+computed goto for FFI/动态链接),最初通过jszoo suite 用了一个月2MB,现在已经能完整支持npm平台要求的API 9MB

> The manual free-list GC was disabled and enabled hundreds of times, each attempt breaking another core part... everything was breaking when I added JSON support.

他甚至手写了一个Trie关键词高亮.. https://github.com/theMackabu/ant/blob/master/src/highlight/iter.c#L33

新一代真是Lua.so都能随便写出来了
IT 界经久不衰的都市传说:永远不要轻易质疑头像带兽耳的开发者的代码能力。

😱
https://yuk1i.github.io/os-next-docs/lab/lab2/ 这个又是手搓内核的

#py https://moelove.info/2017/10/21/当执行-python-xxx-py-时-CPython-到底做了什么/

#rust
#selected 这个大哥的博客真不错,写了很多科普的文章。
https://luoyuxia.github.io/archives/
https://luoyuxia.github.io/posts/rust用链表理解所有权借用与-unsafe/

#win https://blog.batkiz.com/posts/talk-about-scoop/ winget !
https://blog.batkiz.com/posts/software-on-my-computer/
#py #ai Bub is a tiny runtime for agents that live alongside people.

~200 lines of core code. Hooks reshape every turn stage. Tapes record every decision. Channels adapt to any surface — CLI, Telegram, or your own.

一个用只增Tape管理AI记忆的IM2LLM服务

bub 是我们在超级全家桶和纯 vibe 定制中间寻找的一个解决方案
——Frost Ming


- 难道说我在既有 Tape as a Service 的情况下,只要100行代码,就能让我的 agent 接入 bub ,然后让 IM 群聊复用现有的数据吗 ?!
- 给 @bubdotbuild 加上了企业微信的 Channel,现在上班摸鱼有新搭子了😉
- 一个类似于 Cloud Code 一样的通用 Agent 框架……使用 bub 作为一个 build block 构建你自己的 agent 产品、服务你的业务,而不是学习复杂的概念然后无从下手。 https://bub.build/
duangsuse::Echo
当时我正在批判中文编程(形式语言设计)的弊病,声称《十八个文言虚词》里,“冯诺曼世界”能用的不到一半,最宝贵的 mapOf(1 to 2).into(dns.kv) 这样的高自然度都丢了。
结果这几天就光搁着批判了, 自己是什么德行呢 😅 #py
Guido坚决拒绝多行 lambda是完全可理解的。实际上lambda以这个特别长的词的方法引入,本身也被吐槽

为什么不是 map({(u), x:=u+1, x}, [1,2]) 或 for u in map_on([1,2]): OK(u+1); for ev in div.on("click"): go() 呢? 虽然符号化但不难理解,因为有一致性。

但Guido根本不懂。Kotlin用的很好(只要在命名准确且一致的情况下,比如不能run also apply大杂烩),完爆他的认知

Python就算在仿照Excel上无可指摘,但lambda与组合子的 Killer feature(只要“愚笨”的使用),是他体会不到的。

@lambda f: map(f,..) def res(): 的结构完全不够用(最为小丑的 with lock: 证明了这点),[for if] 的生命力被高估了,即便是在pandas中,Kt的组合子在部分场景仍更加顺手

在 Guido 看来,控制流(循环、分支、异常)必须是中央集权的,他不明白程序只有语意和Flow而已,for break的寥寥无几的样板早该淘汰了

for的Non-local Return不能map_on?为什么要写return?而且kt可没被这个难倒,甚至还把break/cont一同干掉了,而且没有产生Guido害怕的魔法

with和async支持一点也不好看,尤其是那个在DSL上还输给infix fun的tuple返回支持。海象运算符 :=(PEP 572) 打那么久纯属自己没出过舒适区。

A,B=B,A 一行 A=(B.also {B=A}) 就解决了,KV迭代用forEach/assoc 就完美双向兼容,py和lua为它操碎了心,简直小丑到爆。 函数染色么?如果我祭出 yield await ,这些不支持Signal的语言该作何解答?

Kotlin也有UB的小问题( listOf(break, continue@wtf, return 1) is Any ),但牺牲这些换来扩展性,都不算事

碰到Closure的语法配套,Guido还可以用Zen搪塞掉,碰到 Events+async 他怎么跳?这回也是拿Obivous来搪塞吗? Closure和Event必须一起支持,否则就和Qt信号那样被React信号搞过时。

至今ES6的 async iter 不是基于Signal和go func,而py就更拉了,甚至有 timer(lambda i=i: 的反直觉bug)

--

你没有搞懂我的片段。 div.on(.. ev=>{}) 是典型的语句块注册,所以,这里的for已经完全被夺舍了,而原本的for可以缩进 for..in all([]): 模式

我没有要和py标准杠的意思,这是我的互联脚本运行时的ast补丁,也支持 for x[:int] 等现代特性。 提出,作为一种对比,很快你就会知道Guido并没能通过拒绝FP来跳过扩展性问题。

之前设计是 out=onNum(0, {(x), x+1}), 即 for x[:int] in onNum(0) @out: OK(x+1)

多块参数不可支持(for else 有两个但语义错)。 return和嵌套OK之类直接禁用好了。又不是不能用raise-catch,这是10%的情况,为什么对【理论上存在的东西】就如此病态呢? 我没有要全部用【栈上函数值】的方法实现

if-elif-else 转为 with-ifs-ifOK (默认多路避免elif); match x 为 with x in ways, @outVar: (换掉冗长的case、和js互文) 这些也是部分修改。跑题了。

批了这个批那个,结果啥都没干成

考虑到80%的人即便有法学博士辅助也【看不懂】,以及【不在乎】这些内容……


🗓 我可能应该悦纳一个poll Agent 有没有Idle然后自动输入“请继续”的,这种项目,或者缅怀自己没有当站长的那个时代

开个玩笑。我应该学会与这种常态相处 ——但我没有资本像王垠或ice1k那样自命不凡,我甚至 “反对” 学阀,这也挺悲哀的。

当我意识到,《Lua设计与实现》里根本没有理解backpatch链表,而我的理解,【看起来称不上底层】时,就像上面的“信达雅中文”那样儿戏, 我是否该感到孤独?或者无聊? 或者我要请Fable来判断它们是否有前途??

我可懒得当《皇帝的新装》里的孩子,而且就我对手搓代码的爱好,也“没资格”

编程或技术/范式的风格,对我来说,甚至不是《朝闻道》。我否定我行业的、苦劳的价值。 CS+PLT 对我而言,是否只是另一种黑话、或无价值的习惯? 是 Just4fun 那样简单?

😟 即便make出可安装的工程又如何? cloudwindy 没有通过SS协议得到什么,甚至情绪价值,也只是得到一位贡献者朋友。 很感谢经常来这里投稿的密码学朋友~

我不追求【像】内行,也不追求对【所有】编程者有效,别人眼里——可能就是像bash补全那样的鸡肋吧。

“蕊括深recursion” “栏目答Lambda” 一般画风的软件体系,恐怕,正如“偶醒刻async”一词,它既不名也不动,夹在中间。 它们不适合放在README,放在guide里又屈才。你要先否决掉你的身份,才能明白为什么要。

为了理论,你要放弃理论家的身份。偏偏我从没自称过懂理论。


就像bash三三两两的维护者,就连那些抱怨【只有我】的人,他们的情况大概比我好的多
我并非完全不在意…… 但我不会改变吧。

就像iseki说的, #tg 只被我当作个人草稿箱。无论是不是在这里刷板,干扰许多人,锐评各种【大家都玩的很好】的软件?

如果以后,转向游戏开发和MOD,或许会更快乐?

但在此之前,请允许我以身入局改变软件工程的一些弊病。
今日份的豆酱
请冷静地听我说: Nmap已经是29年前的端口扫描器了 Wireshark已经是28年前的抓包工具了 Burp Suite已经是23年前的渗透工具了 sqlmap已经是20年前的注入工具 Cobalt Strike已经是14年前的C2平台了 Kali Linux已经是13年前的渗透测试系 WannaCry已经是9年前的勒索软件 Log4Shell已经是5年前的漏洞
#security #bash
nmap 比你还老,甚至《黑客帝国2》里崔妮蒂用它黑电网都已经是 23 年前(2003)的镜头了。

IDA Pro 已经是 35 年前的反汇编器了(1991)
Ghidra 都已经是 7 年前开源的了(2019)
Metasploit 已经是 23 年前的框架了(2003)
Aircrack-ng 已经是 20 年前的 WiFi 破解工具了(2006)
Hashcat 已经是 17 年前的了(2009)

CVE 编号体系已经运行 27 年了(1999)
Heartbleed、Shellshock 已经是 12 年前的了(2014)
永恒之蓝 / Struts2 S2-045 和 WannaCry 同岁,9 年了(2017)
EternalBlue 已经是 9 年前泄露的 NSA 武器了
Log4Shell 已经是 5 年前(2021)的核弹了
Meltdown / Spectre 已经是 8 年前的了(2018)
熊猫烧香已经是 20 年前的病毒了(2006)

漏洞类型还是那几个——注入、反序列化、越权、弱口令
但是你仍然能用 binwalk; photorec; Recuva,当然能用 #reveng,用修改器、备份工具或 “资源盗录”,只是它们也没有以前那样强大了。 逆向工程显得不值,一部分是AI辅助原型与二开的好原因,也是因为AI短视频已经足够占用精力

MT管理器和AutoJS已经一口价几百了,没有资源社区的开源“砖头App”终究会消散。

==
在2023/2024年,破解一个1999年的512位RSA根密钥,成本 = 一台高端台式机 + 约30小时的运行时间。 https://t.me/hacker_news_zh/24624

#dalao CMake UI https://nullprogram.com/blog/2026/04/07/
#reveng https://github.com/corkami/pics
#py https://www.dabeaz.com/tutorials.html
😅😅😅 这是一个右下角客服评论板的ws://后端

回看2022的 #py cli2sock 才发现这写的啥啊,这和gpt5也半斤八两了,不如Fable好读
设计为支持微信回复(wxSay=print, StreamReader->say.onWx), wxSay分配一个短 ID i “带超时”过期释放实现回复

#ai锐评 确实还不如AI了,内插了 @ data 装饰器和AP.Namespace这样的东西,不支持IPy支持还搞了TimeLim队列,它是过度工程化,不是脚本化
#tool #py flet.dev

跨平台,支持桌面,支持iOS

GitHub 星标超过 1.6 万,并提供免安装的在线开发环境 Flet Studio。

在移动设备上使用 NumPy、pandas、Pillow 和 cryptography 等库

支持 Pyodide/WebAssembly ,也可以将代码部署在服务器上并通过实时推送更新用户界面。
duangsuse
哈哈哈,想起来我以前也写过硬字幕OCR的workflow,还被人开email“骚扰”过 ./extract_subtitles.py -crop '0(907,940)[101,77]' -lang eng a.flv https://github.com/duangsuse-valid-projects/extract-subtitles 仔细想想,ML世界的API都比较好调用,甚至比“传统编程”的函式库/工具包好用多了 #dev 这一点接口一致性上,反而是ML和DSP/游戏开发领域的无敌了,现代前端相比来说差很远。
#ai锐评 #py #code

继续【震惊跌坐】

AI弹指间就把几年前写的【视频硬字幕高缓存OCR】【扒的底裤都不剩】

它还把仓库【打开对过】,谷歌的则和地图选点、yt视频有深度集成,IDE都不用安装的可怕

😋 虽然,从P1右下角就能看出,我的代码质量还是在理的, 但如果我故意写成 【咦咦呜呜,哇呀呀呀】的样子,grok照样瞬间剃掉所有私货,没收作案工具

也还是「两帧相减、求和、取局部极大、选语言 OCR」。控制流就一条:读帧、裁、差分、峰值、识别、按相似度折叠。

它还批判我 “真正值得叫缓存的是:OCR 结果按感知哈希(pHash/dHash)建索引,画面重复直接查表不跑模型,不是改了一个字的相邻条。”

btw. 这个 py flow 也是我重构别人的,虽然确实学会了怎么写flow
Forwarded from duangsuse
Daniel Lemire's blog
Parsing JSON at tens of gigabytes per second… in Python

source #py #perf

我突然觉得释然了。 为了屎山codebase能“免费”提升它们从来用不到的吞吐量, 许多人真的会给母猪上唇膏并且开始f...它了

JSON,在>80%应用里,是一个连 [{},] 的excel模式和 {_5args: true} 都没有优化的格式,甚至也没有约定 {Duck:} {Cat:{arg:"wtf"}} 的type多态。

在我眼里,这就像一个逆向工程工具看不懂libc,或运维panel不会用 -k v 参数理解bash接口那样, 但是,它偏偏很快。

他们宁愿在端到端上,投入无数奇技淫巧的精力,也不愿意像CBOR(预训练字典)或flatbuf一样,提供一套新的、协议化的,是【对人类有意义】的选择,从一开始就没有这些跳空格 s.indexOf("\"") 的问题, 甚至是让JSON兼容一下csv模式,而不是 [{},] 的无效重复AoS

如果一开始就基于flatbuf+js Proxy 或tg的TL这样的心智模型(从原理上就更好优化), 这些文章里90%的概念可能根本没必要提出。 以后就连AI也会在JSON这样连Excel CSV 都不会压缩的【最佳兼容性实践】上,继续搭建吧

预训练字典和SoA/AoS变换,可以说是通用性相当好的选择。 就像对于Electron的体积,像./gradlew那样【用到时再下载】是更好的理解。 但是,他们一直在两个极端之间吊着。

这样的软件工程,真的早点毁灭吧。 端到端的优化AI也完全可以生成啊

"给母猪上唇膏"这个比喻不是针对simdjson,而是在问,为什么RPC问题里最最基本的子部分(比如csv),

想要压缩+提速,需要端到端(人类不可介入)的优化?做在与 TLS 平级的层面不行? py/js dict 和元编程的层面呢?分出【测试100%覆率期】和高效运行期? 这些都不需要很大精力,明显比榨干最后一个cycle和L1 cache,少多了,而且更加可控。

但是,他们还是愿意做这样的,无需理解任何新决策、新协议、新flow,未来连AI都可以loop的JSON.parse单函数优化。

对A\ 5.1: 你还是不明白。 我说的是指理论上的,你一直在提Proxy这些实现问题,哪怕我在编译期Proxy又怎么样呢

至于HPACK的问题,分出"测试期"和"高效运行期",我是指【C/S管道】本身要有字典训练命令。你还是不理解
duangsuse::Echo
🤔 半成品。 而且差一个Landing page,我也打算用Omarchy风格
This media is not supported in your browser
VIEW IN TELEGRAM
#js #py 现在知道产品页怎么做了
https://codepen.io/editor/duangsuz/pen/01a164e3-fb16-7a1a-b459-dce493c8e63a?orientation=left&panel=false&show=preview

zig只做事件源,90%技术栈切换为mpy+xterm.js ,让CC自己给CC做一个傻逼dummy Chat ,然后直接丝滑小连招 npx cld-pi

这才是真正的云原生啊 😋 真棒! 肯定能奏效

#vibe sonnet 砍5刀就帮我PoC了更好的。 JOJO: 只要往前走,道路就会向前沿伸!