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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
#JavaScript ... 这个问题其实蛮没价值转发到这里的,提个醒。
Forwarded from dnaugsuz
不可以 eval(const ....)
Forwarded from dnaugsuz
... 其实 const 不应该用作 eval 的字符串,有点这个意思
即使它可以定义变量为不可变
Forwarded from dnaugsuz
eval 是有值的,所以你本来可以

const config = eval(env.CONFIG_JS);


或者

const config = fileA_exists? eval(faExpr) : eval(fbExpr);

最好不要滥用动态
Forwarded from dnaugsuz
let [a, b] = [1, 2];
const c = eval('a + b');
//c=3
Forwarded from dnaugsuz
在不必要的情况下使用 eval 是坏习惯
如果不是要动态生成 JavaScript 代码或者要实现插件系统之类的东西,不要用 evalFunction(String)
不能把可以写死的代码写进 eval
比如能够

global['str'] = 1;
就不要在非严格模式下(此时变量是顶层对象的属性)
eval(`str = 1`);
#China #Life 🤔 从某种意义上不错
Forwarded from 无羽の碎碎念
总觉得Scheduled Message有一个很可怕的使用方式:
留遗言
Dijkstra.kt
4 KB
#Kotlin #Algorithm 本苏又双花了两个小时写了 Dijkstra 算法,发现自己的手速还是 Naive, foreach (cost, neibor) if (newcost < rs[neibor].cost) rs[neibor] = (newcost, step) 都写不出了
个人感觉质量较上次有很大提升,也未作过多无意义的逻辑结构抽提
还是本苏最爱的瞎 🐔B 「泛化」编程
dnaugsuz
讲个笑话:文本上直接中文分词 + Naive bayes 朴素贝叶丝分类(如果 Chinese Lexical Analyize 全字典大了就上精简字典什么的... 有并行计算高性能框架的) 短图二维码和 short link 跳转用消息队列慢慢查 行为上算个大体的策略,虽然不得不接收所有消息的 onMessage, 可是对可信用户的检查可直接跳过 / 随机抽查 / 添加人工 bot command 允许群友重新审查 可信用户的选择可以对每个群设置一个基准,连续发送 N 个安全消息的就算可信用户 行为不要老是看维度什么的,又不必要…
可以分开文本的「类型」,而不是简单地「黑名单」和「白名单」正是使用 Naive Bayes 有趣的地方
Naive Bayes 是文本分类的算法,你可以给被学习的文本指定其类别,然后对新文本进行猜测分类

分类当然可以有很多种,比如广告、清真、色情、政治
只需要数据集足够、分词算法优化就可以了

如果有机会写这种机器人,就叫「NBMAK」吧(Naive Bayes Model AD Killer) 🤔

考虑一下...
Usage
#Moha #Haha 照例膜 🐸 一下

GraphRoot -> 中南海
中南海 ->(666) 倒车
中南海 ->(1) 记者会
记者会 ->(2) 批判
批判 ->(3) TooYoung
批判 ->(4) TooSimple
TooYoung ->(2) Naive
TooSimple -> Naive
Naive ->(1) IAmAngry!
Naive ->(2) 我一句话也不说!
IAmAngry! -> 是最好的
是最好的 -> 国务院
批判 ->(4) 识得唔识得啦?
识得唔识得啦? -> 国务院
倒车 ->(2) 国务院

//国务院
正确得解
🐴 类个 🍺#Kotlintypealias 也太蠢了吧,和预处理有什么区别?
duangsuse::Echo
🐴 类个 🍺, #Kotlin 这 typealias 也太蠢萌了吧,和预处理有什么区别?
error: type mismatch: inferred type is Dijkstra.Node<String> but DijN<T> /* = Dijkstra.Node<T> */ was expected
🌚👍 请问 Kotlin 大大:这个 T 是什么玩意;真是连预处理模板都不如

typealias RouteSelectB<T> = MutableMap<DijN<T>, WNode<T> > // Node : Edge-Node
open class Dijkstra<T: Any>
fun backtrace(rs: RouteSelectB<T>) = fun(end: DijN<T>, start: DijN<T>): List<DijN<T>>

我用的有错吗?为啥 T 就成了 T?难道真的是直接强行标识符名字填进去不加解析?我还以为是不能递归展开重写了一遍也没用 infer 失败一堆不好看

🤔 Typealias file-level only & no type variable resolution
🤔 Type argument + (* -> *) Kinds (Type argument for type variables) not supported, <GraphB : Map<DijN<T>, Set< WNode<T> >>> not compatible with Map<DijN<T>, Set< WNode<T> >>
🤔 (inner)Subclass Cannot inherit from Pair<A, B>: it's final
....
🤪 Expand typealiases by hand and remove the use of type extraction

error: type inference failed. Expected type mismatch: inferred type is Dijkstra.WNode<String> but Dijkstra.WNode<T> was expected
瞬间服气
well done.
Dijkstra.kt
4.7 KB
男人看了流泪,女人看了沉默... 😭 #Kotlin
没有能力继续写下去了,所谓型变,在实际写代码的时候,怎么能够去想该怎么办啊....
我最后写一个实际上可以用的吧 🤪
不用泛化太多了....