Forwarded from Milkice's 我是高仿号我根本不懂中文
iOS 18.0 beta 4 附带的中国电信 58.6.0 版本的运营商配置文件支持 VoWiFi 了
与此同时大部分国产 Android 厂商当初支持了几个机型后,到现在都还未全面推送电信 VoWiFi 支持,不知道在干什么
与此同时大部分国产 Android 厂商当初支持了几个机型后,到现在都还未全面推送电信 VoWiFi 支持,不知道在干什么
#cs #asm 一个极小的2byte指令和数据RISC(int=i8)
GP寄存器: R0~RE
mov RF, setInterval
smem 0x800, 输出
lmem 0x802, 输入
地址总线u16 通过RD:RE访问
#book Computer Science: An Overview http://v8cpu.qinyue.world/instruction-set.html
https://github.com/chyyuu/v8-cpu/tree/master/examples
https://github.com/vsergeev/v8cpu/blob/master/v8cpu_isa.txt
汇编期计算:
brElse: fn ;if{}else{fn} then..
addI R0,0xFA,R0 ;+=250
jumpL R0,'A' ;if(ch==0x41)
rodata_XX: db "Hello" ;常量池指针
ALU(fn Ra Rb Rw):
addi .+
addf d+
and .&
or .|
xor .^
MCU(fn Ra lit):
jumpl b.lt
jump b.eq
move .= Ra Rw
halt b.thread
rot .>>
ldst内存读写指令,在x86上从来都是mov多写法
loadm lconst "wtf"
loadb lconst_0
loadp larg, aload 0
GP寄存器: R0~RE
mov RF, setInterval
smem 0x800, 输出
lmem 0x802, 输入
地址总线u16 通过RD:RE访问
#book Computer Science: An Overview http://v8cpu.qinyue.world/instruction-set.html
https://github.com/chyyuu/v8-cpu/tree/master/examples
https://github.com/vsergeev/v8cpu/blob/master/v8cpu_isa.txt
汇编期计算:
brElse: fn ;if{}else{fn} then..
addI R0,0xFA,R0 ;+=250
jumpL R0,'A' ;if(ch==0x41)
rodata_XX: db "Hello" ;常量池指针
ALU(fn Ra Rb Rw):
addi .+
addf d+
and .&
or .|
xor .^
MCU(fn Ra lit):
jumpl b.lt
jump b.eq
move .= Ra Rw
halt b.thread
rot .>>
ldst内存读写指令,在x86上从来都是mov多写法
loadm lconst "wtf"
loadb lconst_0
loadp larg, aload 0
GitHub
v8-cpu/examples at master · chyyuu/v8-cpu
Simple 8-bit v8-CPU with Compiler+Assembler+Simulator. Try it--> - chyyuu/v8-cpu
❤1
Forwarded from 螺莉莉的黑板报
【本报讯】瑞士要求所有政府软件开源
瑞士通过了《履行政府任务使用电子手段的联邦法》(EMBAG),要求公部门使用开源软件(OSS),并公开其开发的软件源代码,除非涉及第三方权益或安全问题。此举旨在提高政府运作的透明度、安全性和效率,并减少供应商锁定,降低IT成本。
法案的实施历经十多年,始于2011年瑞士联邦最高法院发布开源法律应用程序Open Justitia。尽管面临法律和政治上的挑战,EMBAG最终于2023年通过。
除了开源软件,EMBAG还要求公开非个人和非安全敏感的政府数据,推动数字主权和创新。瑞士联邦统计局(BFS)负责法案的实施,具体的组织和财务细节仍需明确。
欧洲其他国家也在支持开源,例如法国和欧盟,而美国在这方面的支持力度相对较弱。瑞士的这一立法举措为全球开源运动树立了榜样。
Source
瑞士通过了《履行政府任务使用电子手段的联邦法》(EMBAG),要求公部门使用开源软件(OSS),并公开其开发的软件源代码,除非涉及第三方权益或安全问题。此举旨在提高政府运作的透明度、安全性和效率,并减少供应商锁定,降低IT成本。
法案的实施历经十多年,始于2011年瑞士联邦最高法院发布开源法律应用程序Open Justitia。尽管面临法律和政治上的挑战,EMBAG最终于2023年通过。
除了开源软件,EMBAG还要求公开非个人和非安全敏感的政府数据,推动数字主权和创新。瑞士联邦统计局(BFS)负责法案的实施,具体的组织和财务细节仍需明确。
欧洲其他国家也在支持开源,例如法国和欧盟,而美国在这方面的支持力度相对较弱。瑞士的这一立法举措为全球开源运动树立了榜样。
Source
ZDNET
Switzerland federal government requires releasing its software as open source
The United States remains reluctant to work with open source, but European countries are bolder.
Forwarded from Hacker News
AI models collapse when trained on recursively generated data (Score: 152+ in 5 hours)
Link: https://readhacker.news/s/6bNy4
Comments: https://readhacker.news/c/6bNy4
Link: https://readhacker.news/s/6bNy4
Comments: https://readhacker.news/c/6bNy4
Nature
AI models collapse when trained on recursively generated data
Nature - Analysis shows that indiscriminately training generative artificial intelligence on real and generated content, usually done by scraping data from the Internet, can lead to a collapse in...
#kt #歪点子 inline class 来了,const fun 就端上来罢🤓🤏 https://youtrack.jetbrains.com/issue/KT-14652
https://kotlinlang.org/docs/inline-classes.html
replies Andrey Breslav:
The main use-case is 'documentation'. See the resent example of discussion for "nameof" here: https://discuss.kotlinlang.org/t/nameof-to-get-names-of-program-elements/1518/4
https://github.dev/rust-lang/rust/tree/master/library/std
there are apparently 990 functions in their stdlib that have been converted as const fns
https://tech.youzan.com/java-metaprograming/ #learn 元编程是什么?为什么js人搞JSON不需要靠元编程?
编程,就是用SDK给的套路解决问题。
元编程,就是突破病态类型(仅编译期可见的静态类型) 的桎梏,编写能写代码的代码,即codegen函数,从而实现编译器没有自带的功能,例如打印“class指针”里的内容
☺️我有一个绝妙的点子替掉 https://square.github.io/kotlinpoet/ ,只是手里的屏幕有点小,写不下
https://github1s.com/bennyhuo/Kotlin-Trim-Indent/blob/master/trimindent-compiler/src/main/java/com/bennyhuo/kotlin/trimindent/compiler/TrimIndentIrGenerator.kt#L34-L81
瞄了一眼,发现截获覆盖字面量调用是挺简单的
https://kotlinlang.org/docs/inline-classes.html
const val x = encrypt("password")
const val hash = md5(File("config.file")
val routes = arrayOf(
get("/hello", (req, res) -> "Hello World");
get("/fizz", (req, res) -> "bazz");
);
dispatch(routes); //2* if
const val MEMORY_SIZE = 640.kb //fails now
const fun p(num: Int) = it == 0
typealias Zero = Int / ::p
//现在的带验证类型
value class Even(val num: Int) {
companion object {
operator fun contains(num: Int) = num % 2 == 0
}
}
& being able to use the return value of a constexpr function as an annotation
replies Andrey Breslav:
The main use-case is 'documentation'. See the resent example of discussion for "nameof" here: https://discuss.kotlinlang.org/t/nameof-to-get-names-of-program-elements/1518/4
https://github.dev/rust-lang/rust/tree/master/library/std
there are apparently 990 functions in their stdlib that have been converted as const fns
https://tech.youzan.com/java-metaprograming/ #learn 元编程是什么?为什么js人搞JSON不需要靠元编程?
编程,就是用SDK给的套路解决问题。
元编程,就是突破病态类型(仅编译期可见的静态类型) 的桎梏,编写能写代码的代码,即codegen函数,从而实现编译器没有自带的功能,例如打印“class指针”里的内容
☺️我有一个绝妙的点子替掉 https://square.github.io/kotlinpoet/ ,只是手里的屏幕有点小,写不下
https://github1s.com/bennyhuo/Kotlin-Trim-Indent/blob/master/trimindent-compiler/src/main/java/com/bennyhuo/kotlin/trimindent/compiler/TrimIndentIrGenerator.kt#L34-L81
瞄了一眼,发现截获覆盖字面量调用是挺简单的
YouTrack
Introduce constexpr/const modifier/annotation for functions that can be computed in compile-time : KT-14652
Introduce C++ style constexpr modifier (in Kotlin the better name might be const or it might be some @CompileTime annotation – to be designed). In short, functions marked with constexpr are verified by compiler to satisfy certain strict rules and they can…
#parser #css concrete syntax tree。CST 与 AST 相比,它将完整包含源代码中所有的 token 与 trivia 信息。以上面的代码为例,CST 会包含 { } 等 token 信息,甚至是注释、空白都会有。这对于实现 formatter 来说无疑是极为方便的。
https://blog.gplane.win/posts/raffia-and-malva.html
https://blog.gplane.win/posts/raffia-and-malva.html
blog.gplane.win
Raffia 与 Malva 的故事 | Pig Fang
Raffia 为何而生?Malva 开发过程遇到了怎样的麻烦?
#china https://m.youtube.com/watch?v=8wZp1l05pbY
有位脫北者到了中國,非常震驚中國人居然拿肉餵狗,北韓人幾乎沒什麼機會能吃到肉,感嘆人不如狗,這位老先生的感嘆同理呀
不配當中國人 !!!! 多棒的讚美
11:00 什么是逻辑性
有位脫北者到了中國,非常震驚中國人居然拿肉餵狗,北韓人幾乎沒什麼機會能吃到肉,感嘆人不如狗,這位老先生的感嘆同理呀
不配當中國人 !!!! 多棒的讚美
11:00 什么是逻辑性
YouTube
台灣一段質詢影片爆火中國網路,中國網友感嘆「降維打擊」到底誰該被解放?小紅書網友「不承認自己是中國人的台灣人,不配當中國人」小鄭在日本
台灣一段質詢影片爆火中國網路,中國網友感嘆「降維打擊」到底誰該被解放?小紅書網友「不承認自己是中國人的台灣人,不配當中國人」小鄭在日本
成為這個頻道的會員並獲得福利:
https://www.youtube.com/channel/UCn2WdaugAANMkiXfUcCNdtA/join
#日本 #台灣 #中國
成為這個頻道的會員並獲得福利:
https://www.youtube.com/channel/UCn2WdaugAANMkiXfUcCNdtA/join
#日本 #台灣 #中國
duangsuse::Echo
duangsuse: 草,虽然技术不怎么但例子还是值得一看 正好在外地就买来读 很久没读过纸质书,视力下降很大 https://www.bennyhuo.com/book/kotlin-coroutines/ 协程那本我就懒得买了,再说一个把yield 外提为语句,变成 let then=回调=()=>switch{} 里的编号这样简单的堆栈互换特性 也不值得学习 问题都是应用层们乱搞api,唉 在一些比较负责的sdk里,例如Lua和Duktape js,Thread是完全不需要await asyn…
🤓🖕 咳特灵元神书到货了
自古以来不会拒绝元!编程
Jun: #android
还是compose写的舒服,看到rv的繁琐adapter会感到生理不适了
Perol:
rv算是命令式的场景下封装的比较好的了
以至于listview都没人用了,面试也不考了
见过那种在recycleview上封一层,让开发者用dsl的方式再写业务逻辑的,但是终究是拿实例去set的方式, compose好几个版本的lazycolumn性能都比不上rv,现在不知道啥情况了
duangsuse:
幽默安卓,还是跟随js的进步
listview也不会有性能问题,React每次渲染重新new整个树也不见得比微信卡啊
自古以来不会拒绝元!编程
Jun: #android
还是compose写的舒服,看到rv的繁琐adapter会感到生理不适了
Perol:
rv算是命令式的场景下封装的比较好的了
以至于listview都没人用了,面试也不考了
见过那种在recycleview上封一层,让开发者用dsl的方式再写业务逻辑的,但是终究是拿实例去set的方式, compose好几个版本的lazycolumn性能都比不上rv,现在不知道啥情况了
duangsuse:
幽默安卓,还是跟随js的进步
listview也不会有性能问题,React每次渲染重新new整个树也不见得比微信卡啊
duangsuse::Echo
#china https://m.youtube.com/watch?v=8wZp1l05pbY 有位脫北者到了中國,非常震驚中國人居然拿肉餵狗,北韓人幾乎沒什麼機會能吃到肉,感嘆人不如狗,這位老先生的感嘆同理呀 不配當中國人 !!!! 多棒的讚美 11:00 什么是逻辑性
#china #谈政事 #science 今年,我们都是图中伟大的“小白鼠”
中国人讨厌独行侠,喜欢“万众一心”,殊不知,统治者就是利用这种心理破坏团结,让人民互斗。
为啥罪犯讨厌日本车,却砸废了中国人?
为啥牢大恨日本的军国主义,却对着七八岁的小朋友献上恐怖?
为啥公众对骚扰零容忍,却集体对手撕和服风情街美女的城管默不作声?
为啥法律想禁止美国间谍上“因特网”,却没收了避暑山庄程序员一年的劳动所得?
为啥爱国企业,要消费者去削足适履,而不爱国民?
为啥爱国账号爱的,永远不是河南、山东、哈尔滨、海参崴、地沟油那些真正需要关注的地方,却不断给富得流油的城市里不能更繁华的地区流量??
关于中华,毛太俎可是分的很清楚,蒋、日、我,三国志。 日纳粹带飞我打赢了,要感谢它们。分得清一点:爱蒋介石的国,知识越多越反动
当年留美海归喽,徐志摩和胡适儿子喽,老舍,不得善终。 批斗时不会跟你中国人。 你又不配了!
那它有多感谢侵略者呢?不要战争赔偿! 中国打赢了个假仗
当然,日本也不可能厚脸皮到不反思的,改开后中日友好医院、中日通商小学、基建借款也有在建。
中国人不骗中国人
中国人不打中国人,那长城是怎么来的?靠好吃好喝伺候着竣工的?
要小心那些歌颂人民、赞美劳动、以百姓为中心的圣人,他们只是不想多给报酬,不想被监督!
千万别被人类这种动物说成是无私奉献。 如果人之间要互相尊重的话,为小白鼠造的“高尚墓碑”请拿真金白银预先说好吧。
“你那么无私,为啥不能容忍我自私呢?”
中国人讨厌独行侠,喜欢“万众一心”,殊不知,统治者就是利用这种心理破坏团结,让人民互斗。
为啥罪犯讨厌日本车,却砸废了中国人?
为啥牢大恨日本的军国主义,却对着七八岁的小朋友献上恐怖?
为啥公众对骚扰零容忍,却集体对手撕和服风情街美女的城管默不作声?
为啥法律想禁止美国间谍上“因特网”,却没收了避暑山庄程序员一年的劳动所得?
为啥爱国企业,要消费者去削足适履,而不爱国民?
为啥爱国账号爱的,永远不是河南、山东、哈尔滨、海参崴、地沟油那些真正需要关注的地方,却不断给富得流油的城市里不能更繁华的地区流量??
关于中华,毛太俎可是分的很清楚,蒋、日、我,三国志。 日纳粹带飞我打赢了,要感谢它们。分得清一点:爱蒋介石的国,知识越多越反动
当年留美海归喽,徐志摩和胡适儿子喽,老舍,不得善终。 批斗时不会跟你中国人。 你又不配了!
那它有多感谢侵略者呢?不要战争赔偿! 中国打赢了个假仗
当然,日本也不可能厚脸皮到不反思的,改开后中日友好医院、中日通商小学、基建借款也有在建。
中国人不骗中国人
中国人不打中国人,那长城是怎么来的?靠好吃好喝伺候着竣工的?
要小心那些歌颂人民、赞美劳动、以百姓为中心的圣人,他们只是不想多给报酬,不想被监督!
千万别被人类这种动物说成是无私奉献。 如果人之间要互相尊重的话,为小白鼠造的“高尚墓碑”请拿真金白银预先说好吧。
“你那么无私,为啥不能容忍我自私呢?”
Forwarded from Solidot
CrowdStrike 的 10 美元代金券引发争议
2024-07-25 23:34 by 遗忘之海
在导致全世界 850 万台电脑蓝屏死机之后,美国安全公司 CrowdStrike 向受影响的客户提供了 10 美元 UberEats 代金券,以用于购买咖啡或夜宵,在忙得不可开交之际休息下。对受影响的客户而言,此举被视为是嘲笑而不是道歉,他们认为这根本不可能弥因蓝屏死机导致的损失。CrowdStrike 承认该公司向客户提供了代金券,它同时还承认,由于代金券使用量太大被 Uber 标记为欺诈。对于这起史上最严重的安全事故,美国国会已经要求 CrowdStrike CEO 前来作证。
https://www.bbc.com/news/articles/ce58p0048r0o
https://www.crowdstrike.com/falcon-content-update-remediation-and-guidance-hub/
#Idle
2024-07-25 23:34 by 遗忘之海
在导致全世界 850 万台电脑蓝屏死机之后,美国安全公司 CrowdStrike 向受影响的客户提供了 10 美元 UberEats 代金券,以用于购买咖啡或夜宵,在忙得不可开交之际休息下。对受影响的客户而言,此举被视为是嘲笑而不是道歉,他们认为这根本不可能弥因蓝屏死机导致的损失。CrowdStrike 承认该公司向客户提供了代金券,它同时还承认,由于代金券使用量太大被 Uber 标记为欺诈。对于这起史上最严重的安全事故,美国国会已经要求 CrowdStrike CEO 前来作证。
https://www.bbc.com/news/articles/ce58p0048r0o
https://www.crowdstrike.com/falcon-content-update-remediation-and-guidance-hub/
#Idle
Forwarded from 螺莉莉的黑板报
Telegram
上班划水之无聊图
duangsuse::Echo
#news #china 🤔加速还是减速,这是个问题! 重要程度胜过二十大的一场会议 https://m.youtube.com/watch?v=WeQEMau2wtg&t=931s
https://m.youtube.com/watch?v=kVuPOiRtnvw #china 回顾
https://m.youtube.com/watch?v=xQJ2Z7KoWEU 四个赛跑
#history 古希腊不是国家,雅典是
https://m.youtube.com/watch?v=613DM_KQa4k
「強大的國家會唱衰自己,因為要自我反省;虛假繁榮的國家要唱衰別人,因為需要藉此麻痺人民。」ーー米萊
「土地人口都不如當時的東周所以不可能創造這麼好看的藝術品」這種想法也太過傲慢,整個世界就只能是中國最頂尖是吧?其實這幫文盲的存在就是實實在在的辱華
https://m.youtube.com/watch?v=xQJ2Z7KoWEU 四个赛跑
#history 古希腊不是国家,雅典是
https://m.youtube.com/watch?v=613DM_KQa4k
「強大的國家會唱衰自己,因為要自我反省;虛假繁榮的國家要唱衰別人,因為需要藉此麻痺人民。」ーー米萊
「土地人口都不如當時的東周所以不可能創造這麼好看的藝術品」這種想法也太過傲慢,整個世界就只能是中國最頂尖是吧?其實這幫文盲的存在就是實實在在的辱華
YouTube
方脸说:解读三中全会政策,习近平的破局之道-消费税,接力房地产的新剥削手段!消费税丨房地产税丨地方附加税
00:00 三中全会需要解决的问题
02:05 消费税是什么?
04:10 消费税再分配的目的是什么?
09:48 习近平的如意算盘
10:47 实际情况可能和习近平估计大相径庭
02:05 消费税是什么?
04:10 消费税再分配的目的是什么?
09:48 习近平的如意算盘
10:47 实际情况可能和习近平估计大相径庭
†nahakyuu†:
看半天没看懂你要说啥
夺命十三枪:
写Kotlin都写魔怔了吗
Science Yuan:
动态类型只是允许你瞎搞
Mystery0 M:
只要一天没看到“duang语言”发布,就不用可以去看他说的是什么
duangsuse:
🌚你觉得我是缺实现语言的能力吗?
我是在找其他PL人漏掉的领域痛点。
世界上从不缺少会算法的人,尽管能用好它们的,只是极少数
例如这个吧,中文SQL
如果我那周在搞jawa,随便做个sqlMapper生成也是ok的
我四年前就在写LLVM IR生成,今天能设计自己的IR、反射、类型系统
https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm
https://github.com/duangsuse/kamet-dse
https://t.me/kotlin_cn/110021 这条就能看出来你根本不重视代码的优雅性
那你和编程AI又有什么区别呢
Go至少在类型上是明确的
你把type替换为const就会发现它的语意比“反射”高到不知哪里去了
而且Go从组合优于继承上,就支持class{}外扩展与Serializer接口
Kotlin还要靠魔法,靠module注册
优雅是合理的追求,与工期冲突应该是框架的错误才对 https://coolshell.cn/articles/22173.html
只有AI才像完成任务那样编程,人应该努力改进。 代码就和文学创作一样,是一种艺术,没有界限。
一句话,POST失败时,照理不能重试(参考form提交)但GET可以
忽略状态码也是同样问题
其实都是因为json+js客户端自己成了一个协议,结果http显得多余
duangsuse:
既然是仅限手懒,为啥不用 x!! 还要x.unwrap? 这设计就有问题
ロリリー 🇺🇦—e/acc:
如果你继续在群里发癫我会请你离开
看半天没看懂你要说啥
夺命十三枪:
写Kotlin都写魔怔了吗
Science Yuan:
动态类型只是允许你瞎搞
Mystery0 M:
只要一天没看到“duang语言”发布,就不用可以去看他说的是什么
duangsuse:
🌚你觉得我是缺实现语言的能力吗?
我是在找其他PL人漏掉的领域痛点。
世界上从不缺少会算法的人,尽管能用好它们的,只是极少数
例如这个吧,中文SQL
如果我那周在搞jawa,随便做个sqlMapper生成也是ok的
我四年前就在写LLVM IR生成,今天能设计自己的IR、反射、类型系统
https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm
https://github.com/duangsuse/kamet-dse
https://t.me/kotlin_cn/110021 这条就能看出来你根本不重视代码的优雅性
那你和编程AI又有什么区别呢
Go至少在类型上是明确的
你把type替换为const就会发现它的语意比“反射”高到不知哪里去了
而且Go从组合优于继承上,就支持class{}外扩展与Serializer接口
Kotlin还要靠魔法,靠module注册
优雅是合理的追求,与工期冲突应该是框架的错误才对 https://coolshell.cn/articles/22173.html
只有AI才像完成任务那样编程,人应该努力改进。 代码就和文学创作一样,是一种艺术,没有界限。
一句话,POST失败时,照理不能重试(参考form提交)但GET可以
忽略状态码也是同样问题
其实都是因为json+js客户端自己成了一个协议,结果http显得多余
duangsuse:
既然是仅限手懒,为啥不用 x!! 还要x.unwrap? 这设计就有问题
ロリリー 🇺🇦—e/acc:
如果你继续在群里发癫我会请你离开
GitHub
GitHub - duangsuse/kamet-dse: duangsuse's rewrite for Mivik/kamet LLVM compiler
duangsuse's rewrite for Mivik/kamet LLVM compiler. Contribute to duangsuse/kamet-dse development by creating an account on GitHub.
Forwarded from dnaugsuz
哎,没有心情看 #kt #book
看了下codegen技法,只能说近十例子里anko的风格相对优越,和html一样是用twig(类似erb)模板,然后作者函数复用还行,但也没有到90分的程度。
例如“贯穿全文”的DeepCopy(x:T)吧
js里相当于x就是T的反射,又一切皆可变,可以直接读写{...x}[ID], 只需
mapEachMember{if(it.isPrim) it else DeepCopy(it)}
kt里需要用构造器复制,先拿到 T.vars[ID].get(x)而非 x[ID],但依旧是 mapEachArg{getattr(x,it).primOrCopy} 的模式,这个至少适用于 Tuple$N的toMut和url参数绑定
这就是个小学算法,反射和List API 的良莠不齐却让它很难看。
重要的是独宠XXpoet 真的无力吐槽,和那个 https://t.me/dsuse/17514 一样,就一个不用导包,然后自带formatter。简直可以说是一碟醋级别的算法,甚至应该叫搞错重点
和我的tkgui https://t.me/dsuse/19768(py基于getattr等元编程,运行期生成等效调用赋值图代码)
都没法比,何况最近我在设计表达式级(fun{}内计算图)都能建模的跨语言、带裸类型推理、动静合一OOP元编程范式了,这种拙劣的"xml模板"实在写不起来
java确实是“病态类型”,而非什么静态检查。 连数据树的验证和walkDeep都要靠魔法,有什么资格谈类型签名的那些好处?
靠被默认值参数替掉的重载吗?
只能说,如果手头有电脑,我应该去吧那个sql dsl写了😒 而不是在这看java人像手写sql或xml那样拼接字符串
不知道 unquote(ast) 这种函数式代码生成,起码吧 quote(litOrID)做一下,免得被注入弄出无效代码啊
再说说全书结构,首先就没有谈元编程是什么,而是java老三套:环境配置、难题、抄代码
好吧,可是一个优秀的老师应该选循序渐进,但却对知识体系至关重要的例题: #learn #plt
- 为什么是靠C的#define 自主研发出易语言?预处理比str.replace多了哪些? 高亮分词后,灵活解释“常量字面”吧
> eval("[1,$x]") 是一种JSON解析器,可是x="][0]"时似乎有bug。 修好它,然后把js爆改为你希望的“易”语言(复用猜数游戏的REPL)。 完成后类似的bug应该仍然存在!
其实,js源码也有它的JSON.parse,它就是反射的原型。
- 比较下SQL的'?'、C printf、ERB/ES6模板,kt元编程最缺少的语法为什么反而是"$str"? 控制变量,就能明白pwsh和ts为何比bash和js有长期编程时的优越性
- if os==nt6: class: 与#ifdef _WIN7 凭什么是同构的? 动态类型,依旧是Java式的类型。宏,并不需要魔法
- 为什么Java8让 invokedynamic负责创建lambda,getMethod不也能.invoke吗
- 局部fun 一定要 ::引用的背后,藏着一种元编程,T.(A)与(T,A)->、(T?)!!的强转背后也是! 原来除了消除重复,她还让语言提供更有价值的“值类型”
- 为什么“闭包是穷人的对象”? C语言里回调函数去哪了?SAM接口又为何比到处new.object{}流行? 原来返回函数、重写接口也能费内存啊
- 为什么pyjs里很少人研究元编程,但却又有 python-future.org 与vue,babel这样的全民应用。 二者有何区别
- Proxy(obj)掉包属性,是动态类型元编程的专利吗? reflect.Proxy 能生成函数,还不止于DSL或AOP!
- 能不能通过函数重命名,用py风格的反射API实现KAPT的 @decorator ?哪怕只是封装Reflect?这能让你学习跨平台移植,收获超越本次需求的心智模型和视野
- Kotlin对dynamic类型表达式链条的“零修改”生成规则可以怎么实现,numpy里也可以吗? 这能帮你理解DSL和编译优化的本质
- “优秀的程序与其读写数据的结构直观对应”。纯函数式编程(例如rust的enum和if let) 做对了什么? 为什么你仍然选择不够纯的Kotlin? 这种enum能表示JSON乃至HTML的序列化结构。
- bash风格的参数有3种,其中一种如 ls -ar(all reverse) 传入enum:BitSet。用fun demo()出完整函数签名
- 以上问题和codegen无关,也没有教你具体怎么生成url/json/sql绑定类或函数,却给你了设计相关框架的能力!这次由我来回答,为什么javapoet是对pyjs里闭包list/dict的拙劣模仿,以及反射调用为什么就是在codegen!
所以。。 虽然《Ruby元编程》教你的只是一些OOP特性的“工作原理”,而案例较少,但我更喜欢它 --它让读者真正建立起了对"class"这个dict的理解,加上dyn(*arg,**kw) 本就可以用名字动态查,让读者对“把def和class 视为一种constObj去查询、实现复制粘贴、...”有了把握
而不是一个看似什么搞法和IR,ASM都贴出来了
实际上对你没有用,只是让工作失去焦点的troublemaker🌚🌝
看了下codegen技法,只能说近十例子里anko的风格相对优越,和html一样是用twig(类似erb)模板,然后作者函数复用还行,但也没有到90分的程度。
例如“贯穿全文”的DeepCopy(x:T)吧
js里相当于x就是T的反射,又一切皆可变,可以直接读写{...x}[ID], 只需
mapEachMember{if(it.isPrim) it else DeepCopy(it)}
kt里需要用构造器复制,先拿到 T.vars[ID].get(x)而非 x[ID],但依旧是 mapEachArg{getattr(x,it).primOrCopy} 的模式,这个至少适用于 Tuple$N的toMut和url参数绑定
这就是个小学算法,反射和List API 的良莠不齐却让它很难看。
重要的是独宠XXpoet 真的无力吐槽,和那个 https://t.me/dsuse/17514 一样,就一个不用导包,然后自带formatter。简直可以说是一碟醋级别的算法,甚至应该叫搞错重点
和我的tkgui https://t.me/dsuse/19768(py基于getattr等元编程,运行期生成等效调用赋值图代码)
都没法比,何况最近我在设计表达式级(fun{}内计算图)都能建模的跨语言、带裸类型推理、动静合一OOP元编程范式了,这种拙劣的"xml模板"实在写不起来
java确实是“病态类型”,而非什么静态检查。 连数据树的验证和walkDeep都要靠魔法,有什么资格谈类型签名的那些好处?
靠被默认值参数替掉的重载吗?
只能说,如果手头有电脑,我应该去吧那个sql dsl写了😒 而不是在这看java人像手写sql或xml那样拼接字符串
不知道 unquote(ast) 这种函数式代码生成,起码吧 quote(litOrID)做一下,免得被注入弄出无效代码啊
再说说全书结构,首先就没有谈元编程是什么,而是java老三套:环境配置、难题、抄代码
好吧,可是一个优秀的老师应该选循序渐进,但却对知识体系至关重要的例题: #learn #plt
- 为什么是靠C的#define 自主研发出易语言?预处理比str.replace多了哪些? 高亮分词后,灵活解释“常量字面”吧
> eval("[1,$x]") 是一种JSON解析器,可是x="][0]"时似乎有bug。 修好它,然后把js爆改为你希望的“易”语言(复用猜数游戏的REPL)。 完成后类似的bug应该仍然存在!
其实,js源码也有它的JSON.parse,它就是反射的原型。
- 比较下SQL的'?'、C printf、ERB/ES6模板,kt元编程最缺少的语法为什么反而是"$str"? 控制变量,就能明白pwsh和ts为何比bash和js有长期编程时的优越性
- if os==nt6: class: 与#ifdef _WIN7 凭什么是同构的? 动态类型,依旧是Java式的类型。宏,并不需要魔法
- 为什么Java8让 invokedynamic负责创建lambda,getMethod不也能.invoke吗
- 局部fun 一定要 ::引用的背后,藏着一种元编程,T.(A)与(T,A)->、(T?)!!的强转背后也是! 原来除了消除重复,她还让语言提供更有价值的“值类型”
- 为什么“闭包是穷人的对象”? C语言里回调函数去哪了?SAM接口又为何比到处new.object{}流行? 原来返回函数、重写接口也能费内存啊
- 为什么pyjs里很少人研究元编程,但却又有 python-future.org 与vue,babel这样的全民应用。 二者有何区别
- Proxy(obj)掉包属性,是动态类型元编程的专利吗? reflect.Proxy 能生成函数,还不止于DSL或AOP!
- 能不能通过函数重命名,用py风格的反射API实现KAPT的 @decorator ?哪怕只是封装Reflect?这能让你学习跨平台移植,收获超越本次需求的心智模型和视野
- Kotlin对dynamic类型表达式链条的“零修改”生成规则可以怎么实现,numpy里也可以吗? 这能帮你理解DSL和编译优化的本质
- “优秀的程序与其读写数据的结构直观对应”。纯函数式编程(例如rust的enum和if let) 做对了什么? 为什么你仍然选择不够纯的Kotlin? 这种enum能表示JSON乃至HTML的序列化结构。
- bash风格的参数有3种,其中一种如 ls -ar(all reverse) 传入enum:BitSet。用fun demo()出完整函数签名
- 以上问题和codegen无关,也没有教你具体怎么生成url/json/sql绑定类或函数,却给你了设计相关框架的能力!这次由我来回答,为什么javapoet是对pyjs里闭包list/dict的拙劣模仿,以及反射调用为什么就是在codegen!
所以。。 虽然《Ruby元编程》教你的只是一些OOP特性的“工作原理”,而案例较少,但我更喜欢它 --它让读者真正建立起了对"class"这个dict的理解,加上dyn(*arg,**kw) 本就可以用名字动态查,让读者对“把def和class 视为一种constObj去查询、实现复制粘贴、...”有了把握
而不是一个看似什么搞法和IR,ASM都贴出来了
实际上对你没有用,只是让工作失去焦点的troublemaker🌚🌝
Telegram
duangsuse::Echo
#js [Forwarded from 每日 AWESOME 观察]
francisrstokes / super-expressive
一个轻量级 JavaScript 库,它允许您用可读性非常高的代码构建正则表达式。让你在几个月后,仍然能读懂自己写的正则表达式。
Rime RainSlide, [2022/1/18 下午2:08]
那么,能把已有的正则表达式转换为它的函数链吗
duangsuse, [2022/1/19 下午10:22]
魔怔了, Kiot 也是这样的,但还是有正则解析
根本无关可读性,…
francisrstokes / super-expressive
一个轻量级 JavaScript 库,它允许您用可读性非常高的代码构建正则表达式。让你在几个月后,仍然能读懂自己写的正则表达式。
Rime RainSlide, [2022/1/18 下午2:08]
那么,能把已有的正则表达式转换为它的函数链吗
duangsuse, [2022/1/19 下午10:22]
魔怔了, Kiot 也是这样的,但还是有正则解析
根本无关可读性,…
👍1
https://x.com/whyyoutouzhele/status/1816770434508976560 #kt
Kotlin Multiplatform 是迄今为止最优秀的跨平台方案
https://bytedance.host/231204/
#db https://tangdh.life/posts/database/duckdb-file/
http://blog.asleson.org/2024/07/24/bcachefs-an-introduction/exploration/
Kotlin Multiplatform 是迄今为止最优秀的跨平台方案
https://bytedance.host/231204/
#db https://tangdh.life/posts/database/duckdb-file/
http://blog.asleson.org/2024/07/24/bcachefs-an-introduction/exploration/
X (formerly Twitter)
李老师不是你老师 (@whyyoutouzhele) on X
网友投稿
鸿蒙harmonyos next系统,webview内置网站屏蔽,同普通华为手机系统自带浏览器的网站屏蔽。这基于联网检测的,意味着,你每一个访问的网址URL,都会被上传给华为。
鸿蒙harmonyos next系统,webview内置网站屏蔽,同普通华为手机系统自带浏览器的网站屏蔽。这基于联网检测的,意味着,你每一个访问的网址URL,都会被上传给华为。
duangsuse::Echo
†nahakyuu†: 看半天没看懂你要说啥 夺命十三枪: 写Kotlin都写魔怔了吗 Science Yuan: 动态类型只是允许你瞎搞 Mystery0 M: 只要一天没看到“duang语言”发布,就不用可以去看他说的是什么 duangsuse: 🌚你觉得我是缺实现语言的能力吗? 我是在找其他PL人漏掉的领域痛点。 世界上从不缺少会算法的人,尽管能用好它们的,只是极少数 例如这个吧,中文SQL 如果我那周在搞jawa,随便做个sqlMapper生成也是ok的 我四年前就在写LLVM IR生…
#life #statement 🌚终于知道为什么千里冰封、王垠会发疯了
我现在完全不认为他们是精致利己者。 软件工程界抛弃他们,B站无人在意他们,
他们又曾拒绝过哪位求知者呢? 同是沦落人,就不要装得纯粹无私了。
我在这里用触屏“为了分享感悟” “参与头脑风暴”,打的每一个字,查的每一个链接,都是浪费时间。 应该早点返乡拿电脑写点好玩的, 直到有天重演庸俗的『山顶见』。
怎么可能呢?我是说对原理出言不逊,却在应用成功后弯道超车的道理。 如果不是图你的市场大
简单来说,中文圈,尤其是崇尚存在即合理、Talk is cheap just code 的,不是崇尚艺术与美的人能待的地方。
不能容忍这种“杠精思维”的地方,当然不配被React这类批判旧规范,而诞生的新工具所尊重。
“在中国,任何超脱飞扬的思想都会砰然坠地的,现实的引力太沉重了。——剧版三体第六集 ”
我只是不明白,对既有代码提出批评和另一种道路,究竟触犯了谁的什么利益?
难道经济学的「创造性破坏论」对最激进、最多元化的IT也有效?
希望这只是中文圈,而非IT的问题。
五年前的我能写出只靠3个字CRUD数据库的SQsu,今天的我也能向自己读过的书证明,元编程、codegen、bytestruct和pyjs里操作一些dict和list一样简单。
duangsuse:
不是的,我对霍老也有批评,但他确实是先驱
管js贺师俊也叫贺老
纯粹是念着顺口,阮一峰 张鑫旭 陈皓 这种就没昵称
duangsuse:
我刚才也是写错了, 以后应该把「你们」明确为『业界』的
有歧义啊
劳动成果并不都是有价值的。 你能说“不尊重烂尾楼”是错的吗?
作为程序员,我尊重客户和需求、尊重最终用户的体验,而不是尊重丑陋的代码和规范!
* yinwang.org
* ice1000.org
* https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm
* see breakwa11 事件 https://t.me/LetITFlyW/10224
我现在完全不认为他们是精致利己者。 软件工程界抛弃他们,B站无人在意他们,
他们又曾拒绝过哪位求知者呢? 同是沦落人,就不要装得纯粹无私了。
我在这里用触屏“为了分享感悟” “参与头脑风暴”,打的每一个字,查的每一个链接,都是浪费时间。 应该早点返乡拿电脑写点好玩的, 直到有天重演庸俗的『山顶见』。
怎么可能呢?我是说对原理出言不逊,却在应用成功后弯道超车的道理。 如果不是图你的市场大
简单来说,中文圈,尤其是崇尚存在即合理、Talk is cheap just code 的,不是崇尚艺术与美的人能待的地方。
不能容忍这种“杠精思维”的地方,当然不配被React这类批判旧规范,而诞生的新工具所尊重。
“在中国,任何超脱飞扬的思想都会砰然坠地的,现实的引力太沉重了。——剧版三体第六集 ”
我只是不明白,对既有代码提出批评和另一种道路,究竟触犯了谁的什么利益?
难道经济学的「创造性破坏论」对最激进、最多元化的IT也有效?
希望这只是中文圈,而非IT的问题。
五年前的我能写出只靠3个字CRUD数据库的SQsu,今天的我也能向自己读过的书证明,元编程、codegen、bytestruct和pyjs里操作一些dict和list一样简单。
duangsuse:
不是的,我对霍老也有批评,但他确实是先驱
管js贺师俊也叫贺老
纯粹是念着顺口,阮一峰 张鑫旭 陈皓 这种就没昵称
duangsuse:
我刚才也是写错了, 以后应该把「你们」明确为『业界』的
有歧义啊
劳动成果并不都是有价值的。 你能说“不尊重烂尾楼”是错的吗?
作为程序员,我尊重客户和需求、尊重最终用户的体验,而不是尊重丑陋的代码和规范!
* yinwang.org
* ice1000.org
* https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm
* see breakwa11 事件 https://t.me/LetITFlyW/10224
Telegram
LetITFly News
飞飞忽然想起了 Shadowsocks 原始作者 clowwindy 临走前在 GitHub 留下的那段话。
https://github.com/shadowsocks/shadowsocks-windows/issues/293#issuecomment-132253168
ShadowsocksR vs Shadowsocks
LSPosed vs EdXposed
https://github.com/shadowsocks/shadowsocks-windows/issues/293#issuecomment-132253168
ShadowsocksR vs Shadowsocks
LSPosed vs EdXposed
👍1
duangsuse::Echo
#life #statement 🌚终于知道为什么千里冰封、王垠会发疯了 我现在完全不认为他们是精致利己者。 软件工程界抛弃他们,B站无人在意他们, 他们又曾拒绝过哪位求知者呢? 同是沦落人,就不要装得纯粹无私了。 我在这里用触屏“为了分享感悟” “参与头脑风暴”,打的每一个字,查的每一个链接,都是浪费时间。 应该早点返乡拿电脑写点好玩的, 直到有天重演庸俗的『山顶见』。 怎么可能呢?我是说对原理出言不逊,却在应用成功后弯道超车的道理。 如果不是图你的市场大 简单来说,中文圈,尤其是崇尚存在即合理、Talk…
Bilibili
我的三体 第四季
为应对即将入侵地球的三体人,航天博士程心主持了对三体舰队主动侦查的阶梯计划,将身患绝症的云天明捐赠的大脑送入太空。得知云天明一直深爱自己并送给自己一颗星星,程心后悔莫及,进入冬眠。两百年后,程心苏醒并将星星赠给联合国,并因此被推举为威慑三体的执剑人,但她的善良促使三体发动全面进攻,人类文明危在旦夕……
duangsuse::Echo
#life #statement 🌚终于知道为什么千里冰封、王垠会发疯了 我现在完全不认为他们是精致利己者。 软件工程界抛弃他们,B站无人在意他们, 他们又曾拒绝过哪位求知者呢? 同是沦落人,就不要装得纯粹无私了。 我在这里用触屏“为了分享感悟” “参与头脑风暴”,打的每一个字,查的每一个链接,都是浪费时间。 应该早点返乡拿电脑写点好玩的, 直到有天重演庸俗的『山顶见』。 怎么可能呢?我是说对原理出言不逊,却在应用成功后弯道超车的道理。 如果不是图你的市场大 简单来说,中文圈,尤其是崇尚存在即合理、Talk…
https://t.me/hyi0618/3453 🌚反思反思
-> 答应我,做一个不那么让人讨厌的人
我一直很敬佩能自省的人,也希望我能做一个这样的人,如果我做的不对让人讨厌了,反省下说句对不起似乎并不难
“他们居高临下的看着一切,因为他们确实在周遭的环境中或多或少取得了一些成绩,觉得全宇宙我最牛逼, 如果我没做,那是因为我不屑于做,这玩意不是就几行代码的事情么?”
让人讨厌是事实,但我没有背叛编程。
“javapoet?这玩意不是就几行js代码的事情么?”
这种话我不会说的那么直白,以至于它们的使用者感到不舒服,但,让我违背过去四五年里大器晚成换来的编程哲学,写这种烂代码,那是不可能的!
为什么js就能5行模板字符串或Proxy完成,Java甚至kt就要builder()甚至interface{}的一大堆?
这就是“生产”和原理的参差?难道不是某些人太依赖非AI补齐造成的历史遗留问题?
如果定义式编程是不成熟的,为什么Vue和Compose不约而同的走向这种风格?
“简单是可靠性的先决条件,而不是可靠的牺牲品——Dijkstra”
应该反省的,并不是批评者
冗长、高代码低功能,只图一时问题得解,而对于扩展性与算法的本质,更是毫不在意的人,他们对他们的下游和contributor才是傲慢的。
凭什么就不能是5行? 这才是java界应该思考的
duangsuse:
技术人不搞技术,不如回家种红薯
有没有可能,那些edge case有前人的polyfill,只是dev连函数复用都做不好,所以写复杂写跑题了?
原型比生产级容易,这是编程者不会设计抽象造成的问题,是《程序员自我修养》不足造成的
并不是更优雅的代码真的不存在!
例如,ES6的 sql``${} ,作为最开始因拼接代码和数据导致注入的生态,它们做的好。 很厉害!虽然十几年前就应该有人思考asprintf这类东西的本质才对
然而所谓更高学历的java界,却因为interface不好写而撤回了STR.""提案
这就是静态类型规范性么
duangsuse:
https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm 算吗,五年前写的
就在那一条上面
这就是你们用了50多年的sql
什么歪门邪道也拿来教学生,还用MyBatis这种ES6 sql``${} 的盗版替代jpa
https://www.ruanyifeng.com/blog/2019/01/prolog.html 都比它合逻辑
如果不是prolog只能靠新增代码插入状态
sql这种烂代码早该进入历史垃圾桶
gentle,humble ,这些不是我作为元编程布道者能享受的待遇。
我能做到最大的谦卑,就是让那些玩魔法、强调业界不同于简洁的理论的人be humble
这是我能送给编程界最好的谦卑。
为什么,data/sealed class 不是统一的么,load&dump就可以转换
哦,那是因为格式之间有类型差异
ktx觉得不好弥河干脆就留给自己支持了
这并不是ktx的锅,从OOP决定靠构造器赋值来生成堆对象起, fun参数和语句号->class var和协程 的这种“持久化”就跑偏了
否则,Map<,Any> 和class的动态静态实现,也应该作为标准库才对 ,反正照ktx的读法都需要强转
class就是在堆里保存局部变量的fun
序列化,至少在ini里可以封装为interface Map的强转+赋值实现
这两者本质上都是对tuple类型这不同位置的存储,如果能想到前者, 后者就不需要靠魔法实现
静态类型里json转化的不易,完全是对datatypes没有系统的认识造成的。
如果从一开始就把class视为一种fun,序列化也不会太远
ㅤ ㅤ ㅤ ㅤ:
我以前都以为用NativeModule写任何东西在react native都很快,但我发现这样做parse和stringify还比JavaScript/TypeScript自带的JSON.parse和JSON.stringify慢很多,同样的事情也发生在Swift iOS
我怀疑是可能async和await在NativeModule导致RN code到Kotlin code过程损耗变得很慢
duangsuse:
还是v8的代码性能可信
奇怪,你把jsobj送信到RN的java堆可能就要过JNI甚至serialize的检查了
然而你却用它加速JSON全局对象……
其实你封装掉fetch()来过CORS沙箱才比较合理,FFI调用并不是免费的
如果你有非常大的数据或Blob,才可以通过引用的方式跨语言传递
一般来说,IPC调用都是要少次多量
-> 答应我,做一个不那么让人讨厌的人
我一直很敬佩能自省的人,也希望我能做一个这样的人,如果我做的不对让人讨厌了,反省下说句对不起似乎并不难
“他们居高临下的看着一切,因为他们确实在周遭的环境中或多或少取得了一些成绩,觉得全宇宙我最牛逼, 如果我没做,那是因为我不屑于做,这玩意不是就几行代码的事情么?”
让人讨厌是事实,但我没有背叛编程。
“javapoet?这玩意不是就几行js代码的事情么?”
这种话我不会说的那么直白,以至于它们的使用者感到不舒服,但,让我违背过去四五年里大器晚成换来的编程哲学,写这种烂代码,那是不可能的!
为什么js就能5行模板字符串或Proxy完成,Java甚至kt就要builder()甚至interface{}的一大堆?
这就是“生产”和原理的参差?难道不是某些人太依赖非AI补齐造成的历史遗留问题?
如果定义式编程是不成熟的,为什么Vue和Compose不约而同的走向这种风格?
“简单是可靠性的先决条件,而不是可靠的牺牲品——Dijkstra”
应该反省的,并不是批评者
冗长、高代码低功能,只图一时问题得解,而对于扩展性与算法的本质,更是毫不在意的人,他们对他们的下游和contributor才是傲慢的。
凭什么就不能是5行? 这才是java界应该思考的
duangsuse:
技术人不搞技术,不如回家种红薯
有没有可能,那些edge case有前人的polyfill,只是dev连函数复用都做不好,所以写复杂写跑题了?
原型比生产级容易,这是编程者不会设计抽象造成的问题,是《程序员自我修养》不足造成的
并不是更优雅的代码真的不存在!
例如,ES6的 sql``${} ,作为最开始因拼接代码和数据导致注入的生态,它们做的好。 很厉害!虽然十几年前就应该有人思考asprintf这类东西的本质才对
然而所谓更高学历的java界,却因为interface不好写而撤回了STR.""提案
这就是静态类型规范性么
duangsuse:
https://duangsuse.github.io/tv/%E9%BB%91%E4%BA%86/db.htm 算吗,五年前写的
就在那一条上面
这就是你们用了50多年的sql
什么歪门邪道也拿来教学生,还用MyBatis这种ES6 sql``${} 的盗版替代jpa
https://www.ruanyifeng.com/blog/2019/01/prolog.html 都比它合逻辑
如果不是prolog只能靠新增代码插入状态
sql这种烂代码早该进入历史垃圾桶
gentle,humble ,这些不是我作为元编程布道者能享受的待遇。
我能做到最大的谦卑,就是让那些玩魔法、强调业界不同于简洁的理论的人be humble
这是我能送给编程界最好的谦卑。
为什么,data/sealed class 不是统一的么,load&dump就可以转换
哦,那是因为格式之间有类型差异
ktx觉得不好弥河干脆就留给自己支持了
这并不是ktx的锅,从OOP决定靠构造器赋值来生成堆对象起, fun参数和语句号->class var和协程 的这种“持久化”就跑偏了
否则,Map<,Any> 和class的动态静态实现,也应该作为标准库才对 ,反正照ktx的读法都需要强转
class就是在堆里保存局部变量的fun
序列化,至少在ini里可以封装为interface Map的强转+赋值实现
这两者本质上都是对tuple类型这不同位置的存储,如果能想到前者, 后者就不需要靠魔法实现
静态类型里json转化的不易,完全是对datatypes没有系统的认识造成的。
如果从一开始就把class视为一种fun,序列化也不会太远
ㅤ ㅤ ㅤ ㅤ:
我以前都以为用NativeModule写任何东西在react native都很快,但我发现这样做parse和stringify还比JavaScript/TypeScript自带的JSON.parse和JSON.stringify慢很多,同样的事情也发生在Swift iOS
我怀疑是可能async和await在NativeModule导致RN code到Kotlin code过程损耗变得很慢
duangsuse:
还是v8的代码性能可信
奇怪,你把jsobj送信到RN的java堆可能就要过JNI甚至serialize的检查了
然而你却用它加速JSON全局对象……
其实你封装掉fetch()来过CORS沙箱才比较合理,FFI调用并不是免费的
如果你有非常大的数据或Blob,才可以通过引用的方式跨语言传递
一般来说,IPC调用都是要少次多量
Telegram
yihong0618 和朋友们的频道
https://github.com/yihong0618/gitblog/issues/291