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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
yihong0618 和朋友们的频道:
#selected #py #ce
https://youtu.be/ltCNkcl9HGI

duangsuse:
省流: py 3.11~3.13 有三种解释

1. {.0: iter, k:0}
2. {k:0}
3. segfault

1. 里的'.0'是k=new cellvar(0) ,相当于创建闭包的def所占用的 this.0
也可能是因为[for]被优化外提为语句,语法糖展开创建的yield状态机

2. 是最好理解的,因为 for (local k) in 0 最先执行

3. 可能是因为(upval k) 被提前回收造成的。在js里 var k 的声明提前早被禁止了,py也有 nonlocal k 才能左值捕获的要求,不过 for x in .. 不涉及scope也是一种八股文题目

哦。。 1. 里的 .0==old_k
这正是3. 的for (local k) in 不新建scope造成的,因为 [for] 没有for的这个问题……

3. 报错是因为[for] inline 优化的bug,k 其实是 nonlocal,但[for]写入时改变了这层包装没更新meta,然后反射就挂了

还真是…… 屎,全用filterMap栏目答不就没这些破事


还真别说,用lambda建模scope可以实现 伪递归、同签名调用优化、在无需跳转时inline 等等,根本不会有py贪便宜学excel造成的 [for] for 语义差异和bug
Forwarded from yihong0618 和朋友们的频道 ()
#selected 这个人也太牛逼了
https://jia.je/