说起来,在回老家的火车上本苏考虑了一些关于绝句的事情,考虑是不是要移除「成」这个构词,「判…成」的语法有第二人称「你」替换,不必存在了,「引成」也被认是不利于语言简化。
后来只是确定了 optional chain 和 ~! ~? 作后缀算符的方法、「空则」,确定了大致的翻译方式(包括 if 表达式赋值这种语法)
因「引记法」要有「引记法 除」,所以不能去了……
后来只是确定了 optional chain 和 ~! ~? 作后缀算符的方法、「空则」,确定了大致的翻译方式(包括 if 表达式赋值这种语法)
因「引记法」要有「引记法 除」,所以不能去了……
然而我现在这个项目又绝不可能在没 kotlin.test verification 的情况下改动,因为我是要做比较大的重构…… 要删许多东西改许多类型相关的……
Eclipse 真实辣鸡,屑 IDE。我还不如换 Emacs 加第三方配置环境好了,连开闭括号高亮都么得,更别说 xref、dependencies analyze 什么的。
splash 做那么酷,果然还是不如 JetBrains 聪明实干、秀外慧中。
Java 教科书工程系就一笑话,从 IDE 开始就令人啼笑皆非,无话可说。
Java 教科书工程系就一笑话,从 IDE 开始就令人啼笑皆非,无话可说。
我还打算 blr (bin, literateKt, relational blog) 顺序完成了测试 sbro(seq, branch, repeat, optional) 文字解析生成库写绝句翻译器的,算是没浪费时间;有 Eclipse 这样的『益友』这真是个「容易」的任务啊,还不如 Kate,Kate 虽然靠 KSyntaxHighlight 那个 XML 怪物但至少还能开闭配对高亮当前行,不像 Eclipse 这个低能儿,据说它那个配置还是死板的 serialize store/load 方法,IDEA 全用 State 多方便啊,还能分 ipr 和 .idea/,真是弱智啊,纯 Java、XML 就是高大上,啧啧。
部分 Java 程序员凭着他们那可笑的迷信和死脑筋战战兢兢在编程,根本是在制造问题,关键问题却被回避,这种人是怎么可能进入贴近核心问题、最有趣的问题一点的领域工作呢?
程序员每个项目只需要一门主要语言,如果有,就让工具来解决。
为什么程序员的思想,用一门语言要充当同声翻译,操着卖身的心说着八国语言,拿着死肝的钱?就应该是像 Kotlin 这样,一门语言解决所有问题,不需要愚蠢的『软件构建』,那么多东西不该有写它弄什么。
为什么程序员的思想,用一门语言要充当同声翻译,操着卖身的心说着八国语言,拿着死肝的钱?就应该是像 Kotlin 这样,一门语言解决所有问题,不需要愚蠢的『软件构建』,那么多东西不该有写它弄什么。
Kotlin 现在能借用函数式的思想,把 Java 工程界解决十年(至少 1997 就有)很久才 JSR-305 的问题变成所有 JVM 程序员炙手可热的 nullable type 特性,以后也能把具有劣根性的 Java 11、12、…… 按在地上摩擦,那些程序员想维护棕象不思进取随他们去吧。
语言本身应该是简单的,但富有表达能力的语言能轻松优雅地描述解决无数问题的方法,表达无数种数据,但语言就是统一、简单、一致的,不像 Java 和 Perl、Groovy 那样是怪物。
/tmp/duangsuse.sock
编写简洁的代码是困难的,这是初级开发人员做不到的。初级开发人员通常会编写花哨的代码。你可以通过一行古怪的代码和过于复杂的抽象来识别初级开发人员。初级开发人员往往会用这种方式炫耀自己的技术,试图让其他开发人员知道他们编码有多好,这是错误的。 本频道 那么高级开发人员呢?当查看高级开发人员的代码时,你可能会想:这就是全部吗?剩下的代码呢?高级开发人员编写简洁、简单甚至是愚蠢的代码。这是开发人员在编程方面所能具备的最重要的品质之一。高级开发人员遵循 KISS 原则:保持简单,愚蠢(Keep it simple…
This media is not supported in your browser
VIEW IN TELEGRAM
刚才 FIrefox, Telegram, Eclipse 一起开差点卡死了,我 Ctrl+sysrq+f OOM Kill 了一下,结果杀了的是 Telegram Desktop。
LiterateKt 的问题再看看,
fun main() = scanProject(".")
fun scanProject(path)
val target, properties
val config = target.readConfig(path+README)
val plugin = target.create(config, properties)
return Assemble(plugin, destination, path)
class Assemble
fun runAssemble()
while (queue.isNotEmpty())
val item = queue.pull()
val (compileUnit, code) = plugin.parseFile(item)
val destinationFile = File(plugin.resolvePath(compileUnit))
destinationFile.writeAll(code)
然后使用了 Plugin 和 Target,我们也可以利用子类型来提供默认处理方式,尽可能利用编程语言和编程范式本身提供的方法简化编写任务。
fun main() = scanProject(".")
fun scanProject(path)
val target, properties
val config = target.readConfig(path+README)
val plugin = target.create(config, properties)
return Assemble(plugin, destination, path)
class Assemble
fun runAssemble()
while (queue.isNotEmpty())
val item = queue.pull()
val (compileUnit, code) = plugin.parseFile(item)
val destinationFile = File(plugin.resolvePath(compileUnit))
destinationFile.writeAll(code)
然后使用了 Plugin 和 Target,我们也可以利用子类型来提供默认处理方式,尽可能利用编程语言和编程范式本身提供的方法简化编写任务。
Forwarded from Deleted Account
无聊,炒个冷饭,要不要和我一起看这个
Share
对 drakeet 的一些话
🐕 duangsuse’s shared files(e.g. productive software projects, documents)
Forwarded from Deleted Account
有朋友说他会反复看我写的东西,令我很感动,因为我也是这样,我也会无数遍不停看自己写的东西或分享,所以当有人细心一点会发现我的内容即使有错别字或不妥的内容,但最终都会相对改正和变得相对得当……