oldhu's
08
Oct 2022
Maybe Not (Rich Hickey) 相关
演讲链接 演讲的核心内容 null本身是个巨大的错误,为了解决null的问题,引入了Maybe/Optional这样的类型 为什么要使用null/Maybe/Optional 可选的参数 有条件的返回值 管理不完整的信息(一个数据结构中有可...
30
Sep 2022
Clojure Protocol
Intro Clojure中的 defprotocol 主要是解决 表达问题(Expression Problem) 所谓表达问题,就是当应用程序要被扩展的时候,如何确保扩展的新的方法和数据类型,与原有的方法和数据类型,可以一起工作。 所以...
27
Sep 2022
Tauri介绍
安装与运行 先安装好rust, node, yarn # package管理可选yarn yarn create tauri-app # cd app yarn tauri dev 架构 代码架构 主配置文件,在 src-tauri/tau...
26
Sep 2022
Integrate Webvitals of Hugo to Vercel Analytics
Add the following to hugo config.yaml security: funcs: getenv: - ^VERCEL_ Add the following code to header.html partial ...
23
Sep 2022
Office XML(OOXML, docx)中的长度单位
基本前提 A4 尺寸:210mm x 297mm = 8.27in x 11.69in Point Per Inch: 72 Pixel Per Inch: 96 1 inch = 2.54 cm 主单位 dxa / twips dxa的大...
22
Sep 2022
世界上最美的程序
题目比较标题党,其实只是在用Lisp在写一个Lisp解释器 视频链接: link 用Lisp写Lisp解释器,直接使用内置的list match函数,解决了parser部分,然后主要就是解决一个lambda定义,其余都比较简单。 lambd...
21
Sep 2022
Clojure Macro介绍
Clojure语言 Clojure是一门Lisp方言,Lisp这个名称是"LISt Processor"的缩写。这里有一个深层次的含义:Lisp可以处理List数据,同时Lisp代码本身也是List数据。 与其它编程语言...
18
Sep 2022
Lambda Calculus(λ-calculus)
来源链接 参考:Lambda Calculus in JavaScript 介绍 1930年代,由数学家Church完善 同一时代的 Turing ,提出了图灵机 Church 早于 Turing 几个月,用λ演算 证明了David Hil...
16
Sep 2022
CRDT开源实现yjs背后的论文YATA
0. 论文介绍 论文链接:link 论文中提出叫YATA(Yet Another Transformation Approach)的算法。 1. 与OT的关系 OT的本质,是对op进行集中(由服务器进行)的排序,同时对改变了顺序的op进行变...
16
Sep 2022
CQRS与Event Sourcing
介绍 CQRS = Command and Query Responsibility Segregation 命令和查询责任分离 Martin Fowler的介绍:link 传统架构(不分离的架构) 应用中有一个Model层,有一个Serv...
← Prev page
Next page →