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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
JavaScript 浏览器环境的模块系统真是麻烦死了,还 async, defer 还居然有顺序,怎么安排啊?我不就是依赖个外部脚本嘛…… 怎么还能和 Globals 导不导出有关系?
我修改了 waitsElement 函数的实现,给添加『监听』时 DOMContentLoaded 已经触发(readyState=='complete') 的情况立了分支,现在没问题了……
waitsElement (e: Element, op: Action)
|e === document.body ->
if document.readyState == "complete" op()
else document.addEventListener('DOMContentLoaded', op)
|else ->
e.addEventListener("load", op)
duangsuse::Echo
#JavaScript #ES6 #web 我真是受不了 ES6,怎么都是 ES6 了还是这么不爽。
所以你们看到,我重写一个东西居然用了差不多一天…… 艹

但是这还是有很大意义的,至少我学会怎么写 TypeScript+RequireJS 组合了。
而且把一个代码正确性完全是靠瞎猫撞耗子的程序,重写为一个我自己能够肯定至少它原逻辑不存在意外的程序。
duangsuse::Echo
Photo
从无头苍蝇到有组织、有目的的代码,差别是很大的。

比如想在代码里添加一些新特性,瞎猫式编程很轻易就会把那堆纠缠不清的代码改错,因为作者也不知道为什么它能够工作,最重要的是作者往往不敢改,因为他们对“这一次的”『代码正常工作』心存侥幸。
可是好猫会把代码的目的写得一清二楚,因为他们本身就对代码一清二楚。那样的话重写想写错都难,修改和新增想弄错更难。
觉得绝句不允许写 三月三个人 这种名字很…… 不知道该怎么说?
或许 这种数字形式根本不该出现?

可是…… 我觉得 一行(a、b、c) 不如 行一(a、b、c) 明确啊,如果允许可能出乱子,为了一致最好还是不许的,汉字一般不把『五个人』当名词用的。
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
🐻 Sticker
修改已经完成!以后就可以照着它的基础继续设计了! #PLT #jueju

接下来可以写 Kotlin 关系式系统的实现了…… 还好有最新的 Literate Kotlin 脚本。

之后就是彻底重写这个规范了,也包含加入人称文法规范的直白定义这种工作。
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
😋 Sticker
我也想先写关系式的 Kotlin 博文,可是它依赖的 LiterateKt 不得不先完成,既然这样不如就先完成 LKT 吧,也不难。
我突然觉得我真是没事找事,还封装得那么烂
……实在是太没劲了
has life 的人不要看太多 HTML,真是无聊
TS 的几十万行 dom lib 都是自动生成的
或许我只是想了解一下 HTML 具体怎么写吧。其实我连 XML 甚至 SGML 都不会写,而我会写 JSON 解析器,真是搞不懂他们。
unused_dom_types.ts
3.7 KB
#JavaScript #web 艹,我不用了,而且 TypeScript 还不支持,因为它只能 keyof……
稍微解决了一点代码模板化的问题,差强人意。
尽管 JavaScript 把赋值 (=) 也做成了有值的模式,Kotlin 的 Configure Block 比这个更厉害、更优雅
import { element, configured, withDefaults, withClasses, withAttributes, withText } from './lib/dom';

let showCodeBtn: Element,
codeDiv = element("div", withClasses(playground),
showCodeBtn = element("button", withText(`Kotlin Code${describe}`))
);
突然感觉暂时没必要写 Literate Kotlin 的另一个工具了,明天就先写关系式吧……