Haxe and Programming for Many Machines

The title sounds obvious. We always program for a machine! A program won’t run itself!

» Read More

Common Lisp Local Project Development with Quicklisp

Probably the cleanest way to do it: (pushnew (truename "/projects/app/") ql:*local-project-directories* ) (ql:register-local-projects) (ql:quickload :app) From Use Quicklisp to load personal projects from arbitrary locations. Alternatively, you can create a symlink in ~/quicklisp/local-projects/. » Read More

The Common Lisp Condition System

Foundation of the Condition System Dynamic Variables A nested stack of environment variables. Defined with defvar, declare special, or defparameter. In Common Lisp, it is not necessary to instantiate or refer to any separate context object nor enclose the environment in an object, because contextual information is available by means of dynamic variables, which can be accessed and rebound as appropriate. New means of passing contextual information can be provided by defining new dynamic variables, and utilizing this new information channel does not require creating or altering any existing abstractions. » Read More

Predictable Performance of OCaml's Module System

OCaml’s module system can be a powerful tool for building generic code and structuring systems. Functors are functions from modules to modules and they serve an important role for the power of module system. However, I want to know if functors (and the module system) can be optimized away by the OCaml compiler. » Read More

Going through the OCaml compiler pipeline (manually)

Modern compilers usually composed by multiple stages: parsers, optimizers, linkers, and assemblers. Let’s go through it one by one to have a better understanding of the OCaml compiler. » Read More

A Taste of OCaml's Predictable Performance

eqaf, a constant-time compare function implementation in OCaml, is a great case to demonstrate the predictable performance of OCaml’s compiler. Why? » Read More

在 iPad 上布置軟體開發環境

五月買了 iPad Pro巧控鍵盤 後,大部分的需求 iPad Pro 都能直接滿足,除了寫程式以外。摸索了一陣子之後總算找到順手又省錢的寫程式方式了,這篇簡單記錄一下。

» Read More

Concurrency in Clojure, Racket, and Gerbil Scheme

» Read More

Domain Modeling Made Functional

Notes on the book Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F#.

» Read More

Zero Trust Network

Notes on the book Zero Trust Network.

» Read More