/tmp/duangsuse.sock
23 subscribers
303 photos
3 videos
92 files
337 links
从 duangsuse::Echo (@dsuse) 跟进出来的分支,将在作者恢复原帐号访问的时候合并删除。
Download Telegram
Forwarded from Deleted Account
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from Deleted Account
Forwarded from Deleted Account
鸿蒙 Homo OS,同性操作系统
一个”知性“的操作系统。
猾为公司荣誉出品 发售全球 810 国 销量连续两个 19 年超 114514 万人
这,就是品牌的力量
HUAWEI
Forwarded from Deleted Account
你们觉得这种实践方式如何啊? 为 Byte 流和 Char 流专门去同样的结构写不同的代码
Forwarded from Deleted Account
我怎么觉得这个人的函数式风格很莫名其妙,感觉是强行函数式而对问题毫无设计。
Forwarded from Deleted Account
草 风格好清奇 这居然是函数式…… 不就是 ('0'..'9') + ('A'..'F') 这居然能写成 while loop 还起 arr 这么莫名其妙的名字…… 而且作为 val initializer 还是只执行一遍的那种……
Forwarded from Deleted Account
这居然是”函数式“,我看这种函数式不过比其它编程方法多个高大上的 J, iff, World, StateMachine, FContext, Facade 而已嘛

我不知道类似这般的函数式除了把 feed.next() 直到 defaultValue : (parse cs) / (op c) : (parse cs) 直到各种各样的数据实例编码控制流越写越复杂,还能多解决什么实际问题
它们不仅仅不好用,而且也不见得 Haskell GHC 这么学术的编译系统就有啥不得了的优化,它们就是”毛泽东思想“,迷信吃枣药丸。
Forwarded from Deleted Account
不能解决问题的函数式是垃圾函数式
尤其是这种连理论问题都解决得跟 前端 C++ 后端杂交一样的
屑函数式编程
Forwarded from Deleted Account
就是引用透明嘛
Forwarded from Deleted Account
鼓吹自己是函数式的项目是屑
Kotlin 的 Arrow (functional stdlib) 是屑
Forwarded from Deleted Account
想处理错误就能处理,不想就可以不处理,这才是正经编程实践错误处理方式
弄个 Either 在那里说什么 (Either a b) 啊谁都搞不懂弄啥子,更多 boilerplate 还不如原生 Result
Forwarded from Deleted Account
所以函数式=屑(迫真)
因为真正的函数式从不自称函数式(迫真)
Forwarded from Deleted Account
我知道,我的意思是如果有 exception 不应该用 callcc
Forwarded from Deleted Account
迫真函数式
明明有更加函数式的风格非要用愚蠢的 loop
还甚至用了 var i = 0 和 val arr,真是蠢死了的 JavaScript 风格
不愧是前端的长期项目。
作者的迫真函数式编程水平由此可见一斑,这么简单的问题都能屑写出十行我真的怀疑此项目 TM 有7个子项目是不是包括了 810 个烂定义
Forwarded from Deleted Account
屑写法:
val arr = IntArray(114.514.toInt())
var i = 0
while (i++ < 10) arr[i + '0'.toInt()] = i
i = 0
while (i__ < 16) arr[i + 'a'.toInt()] = 10+1
正规写法
val arr = run {
val hexMaps = (0..9).map { '0'.toChar()+it to it } + (10..15).mapIndexed { 'a'.toInt()+it to it }
return@run hexMaps.toIndexedArray()
}
inline fun <reified T> Collection<Pair<Int, T>>.toIndexedArray(): Array<T> {
val first = firstOrNull() ?: return emptyArray()
val ary = Array(size) {first}
forEach { val (i, x) = it; ary[i] = x }
return ary
}

即便屑写法 homo 比正规写法快 114514 倍,程序员也要克服自己的 1919 种怨念,重复写 810 遍方可修成正果(迫真)

我可是很正经的,请物理论 谢谢茄子。
Deleted Account
屑写法: val arr = IntArray(114.514.toInt()) var i = 0 while (i++ < 10) arr[i + '0'.toInt()] = i i = 0 while (i__ < 16) arr[i + 'a'.toInt()] = 10+1 正规写法 val arr = run { val hexMaps = (0..9).map { '0'.toChar()+it to it } + (10..15).mapIndexed { 'a'.toInt()+it…
分析一个循环的关键点是在它起始时相关变量的状态,以及终止条件。

val i=0; while (i++ < 10)i in (0 until 10)
只不过最后离开循环体时 i = 11
val i=0; while (++i < 10)
不一样的地方是 ++i 的版本 in (1 until 10) 少循环一次
最后 i=10
Forwarded from Deleted Account
extra/lsof 4.93.2-1 [已安装]
Lists open files for running Unix processes