Forwarded from dnaugsuz
完全有能力写一个 Java ClassFile streamer
支持 byte order、bit flags、contextual、offset、alignment 什么的
支持 byte order、bit flags、contextual、offset、alignment 什么的
其实也不是没优化可能,ConstantInfo 现在更类似于一个 union 结构体,我可以把它弄成 tagged union(这里就是面向对象子类型啦)的形式
如果这些 Cond 包含的子 pattern,都提供一个 flag 让 pattern 能够总结出一个 map 和对应的 revMap,就不需要这个碍眼的 Pair<Int, T> 存储 caseNo 了,可以直接放在面向对象的多态支持里,明天考虑改这个
其实我本来也不该滥用 AnyTuple/AnySeq 组合的,它们就是 C
union 的模式,不够精确也对优化和使用不友好,应该利用编程语言自己的子类型多态,尽可能细化数据类型。Caused by: java.lang.UnsupportedOperationException: This function has a reified type parameter and thus can only be inlined at compilation time, not called directly.🤔
Forwarded from dnaugsuz
有人说好的编程语言不应该可以让人写出有问题的代码,这一点 Kotlin 可以说是做到了。
Forwarded from dnaugsuz
Kotlin 最高提供到了 Triple,但没提供 Quad,其中的原因可以自己思考一下
Forwarded from dnaugsuz
val xyzw: Quad<Int, Int, Int, Time> val dim4: Quad<Int, Int, Int, Time> fun proceed(): Quad<Int, Int, Int, Time>Forwarded from dnaugsuz
所以我很佩服 Kotlin 设计者,设计时真的是有相当深刻的思虑,至于之前王垠喷的那个 checked exception 问题虽然没直接解决,但也提供了
唯一觉得还有改进空间的是,为什么
Result<T> 类型和 runCatching,不至于对实际工程造成影响。唯一觉得还有改进空间的是,为什么
return 可以是表达式不是语句,以及编译系统、语言工具本身还要进一步发展。