https://play.kotlinlang.org/hands-on/The%20State%20of%20Kotlin%20JS/04_Using_APIs
我们可以那么画许多方块,这个其实也可以提出绘制逻辑的。
只是 Kotlin 的例子,所以没抽提。
with (canvasCtx) {
beginPath();
fillStyle(randomColor.sample())
rect(randAxis(), randAxis(), 20.0, 20.0); fill();
closePath();
}
fun randAxis() = Random.nextDouble(0, 20.0) 我们可以那么画许多方块,这个其实也可以提出绘制逻辑的。
只是 Kotlin 的例子,所以没抽提。
duangsuse::Echo
在更新自家 Fedora OS installation 的时候顺便说一下。 之前的模型是一个 Literate 对 N 个 language-kotlin 的代码块,然后显示代码的时候拼起来创建 <code> tag 交给 KotlinPlayground 做后续工作。 现在可以一个 Literate 对 N 个靠“可配置”的 Map<LanguageId, [ElementConfig, Consumer<Element>]> 来(之前那个 ElementConfg 是 DOM ElementAttribute…
我最后没有用
function hist<K, V>(iter: Iterable<V>, key: (V) => K): Map<K, V> {
let histogram = new Map();
for (let item of iter) {
let k = key(item);
if (!histogram.has(k)) histogram.set(k, []);
histogram.get(k).add(item);
}
return histogram;
} fun <K, V> histogram(iter: Iterable<V>, key: (V) -> K): Make<K, List<V>> {
val histogram: MutableMap<K, MutableList<V>> = mutableMapOf()
for (item in iter) { histogram.getOrPut(key(item), ::mutableListOf).add(item) }
return histogram
}
fun <K, V> histogram(iter: Iterable<V>, key: (V) -> K): Make<K, List<V>> {
val histogram: MutableMap<K, MutableList<V>> = mutableMapOf()
for (item in iter) {
val k = key(item)
val self = if (k in histogram) histogram[k] else { histogram[k] = mutableListOf(); histogram[k] }
self.add(item)
}
return histogram
}enableCodeFilter 给加了个 [ElementConfig, Consumer<Element>] 数据依赖,filterCode 加了个 language 可配置项默认 kotlin。
逻辑和修改缘由、作用范围、数据关系修改很清晰,可是也无法特别详细地在 changelog 里写出来
逻辑和修改缘由、作用范围、数据关系修改很清晰,可是也无法特别详细地在 changelog 里写出来
let dependencyCodes = dependencyDivs.map(eDep => { let [_0, cs, _1] = filterCode(eDep); return cs }); //ok:resolve-dependencies 算了,不让有机会再出错。
duangsuse::Echo
https://gist.github.com/Himself65/45b82f824f6185b29555a6da516b7337 #GitHub #zhihu 👍
const ZHIHU_URL = "https
function main() {
Http.GET(ZHIHU_URL).then(res => sendCheckStatusGist(res.time, res.statusCode == 200));
}
const ACCESS_TOKEN = process.environ["GITHUB_ACCESS"];
function sendCheckStatusGist(time, is_alive) {
GitHub.auth(ACCESS_TOKEN);
GitHub.Gist.send("Is Zhihu Died?", "知乎今天死了吗?", format(time, is_alive)).done();
}
function format(time, is_alive) {
let exim = is_alive? "还没死啊!" : "终于死了!";
return exim + time.format("yyyy-MM-dd hh:mm:ss");
} 其实最好是用 await/sync 协程写,更甜一些,好像 Haskell 的
do notation 啊。Forwarded from duangsuse Throws