#TypeScript 的 overloads list 有点不直接,而且是半自动的多态…… 定义侧还得手动
typeof#TypeScript TS 也有『半dependent type』的特性——输出类型可按照实际参数而定。
interface Monkey {
Hou: HappyMonkey;
Jun: SadMonkey;
}
function getMonkey<K extends keyof Monkey>(name: K): Monkey[K] {/**/}https://github.com/dhakehurst/net.akehurst.kotlin.kt2ts #Kotlin #TypeScript #dev #tools 🤔 第一次知道可以这么干
看来 ParserKt 的 Kotlin/JS document 要靠这个人的实践经验了
看来 ParserKt 的 Kotlin/JS document 要靠这个人的实践经验了
GitHub
GitHub - dhakehurst/net.akehurst.kotlin.kt2ts: Typescript definition file generator for kotlin (js) classes
Typescript definition file generator for kotlin (js) classes - dhakehurst/net.akehurst.kotlin.kt2ts
索引 slice (视口计算) 起来还挺麻烦的,开始用脑子都搞错了,亏了我的工程/调试经验…… 勉强试出来了 😥
老实说我对这个内带优化元素的特性本身认知都不明确,不过终于是写出来了
改日,这个项目会被重写打包成支持 ES5 的 Web Extension ,感谢 #TypeScript .
老实说我对这个内带优化元素的特性本身认知都不明确,不过终于是写出来了
改日,这个项目会被重写打包成支持 ES5 的 Web Extension ,感谢 #TypeScript .
duangsuse::Echo
#Kotlin #code #coroutine suspend fun main() = coroutineScope { for (i in 0 until 10) launch { delay(1000L - i*10); print("$i ") } } 提问:为什么结果是 9 downTo 0 ?launch 的里面用了 coroutine 特性,但为什么 main 也是 suspend fun? 如果只是单线程,是怎么在最后才输出第一次的 $i 的?
#Kotlin #coroutine 应该说有了可以挂起恢复的协程后, launch 里面的东西就可以理解为「被添加的Task」吧(此例只是闭包住了变量
第一个 async fun
这个 launch 本身就是独立于 for (i in iprog) 顺序的,不是说得 i=9 的 launch 完了才能发 i=8 的,而 suspend fun() {} 的独立性可以理解为 #TypeScript 式的 async state machine 基本就是单独的闭包了,调度分次不会互相冲突。(或者根本是独立的程序流?)
i),由线程(池)上执行的调度器来运行它们,类似于 event loop 这样第一个 async fun
delay 本身也是调度器操作,不是 Thread.sleep 不会休眠线程,是完全不同的概念,当然不会卡死调度器,举个例子:var t0 = time(); var t1:Long
for (task in cyclic(tasks)) {
t1 = time()
if (task.delay>=0) task.delay -= (t1-t0)
else { task.run() }
t0 = t1
} 这个 launch 本身就是独立于 for (i in iprog) 顺序的,不是说得 i=9 的 launch 完了才能发 i=8 的,而 suspend fun() {} 的独立性可以理解为 #TypeScript 式的 async state machine 基本就是单独的闭包了,调度分次不会互相冲突。(或者根本是独立的程序流?)
https://lab.xecades.xyz/Fourier/?img=5
感觉自己的智商严重需要重构了…… 看了下基本绘制结构我明白了,当时找 img= 参数引用的时候想当然查
是用
整体代码质量较好,非常简短而整洁,建立了
待会重构下(也只能是拿 #TypeScript 了),算是安抚可怜的我…… 😭
感觉自己的智商严重需要重构了…… 看了下基本绘制结构我明白了,当时找 img= 参数引用的时候想当然查
(n + 1) 这个表达式,三次没找到后才在已发现 loadPageVar() 后明白编号到零基数组引数是 -1,明显没过脑子(或者记性不好/数性太差),就凭这?心理各种崩溃。是用
setInterval (timer) 累积dt 更新的(缺点 dt 是常量)generate(t) 基于 getSvgInfo() (load onto <svg> tag)和 getDotInfo() (use style "offset-distance"&canvas.origin)整体代码质量较好,非常简短而整洁,建立了
Axis 和 complex 的 class,helper(common abst.)/canvas/main logic 三文件符合拆分直觉,命名和算法封装方式偏 C 化(静态指定子程序输出的目标存储空间,对应其参数也是写死的;即便程序生命周期仅调用一次)待会重构下(也只能是拿 #TypeScript 了),算是安抚可怜的我…… 😭