dcreager.net

Archive

Is this a weblog? A gemlog? I guess it depends on how you're accessing this wonderful content...

2024-10-21 Sending emails from Go

2024-09-27 sqlc: compile SQL queries, no ORM!

2024-09-19 Screen sharing a reMarkable on Linux

2024-08-15 Hosting the Unifi controller in Home Assistant

2024-07-13 Updating Cloud Key firmware manually

2024-07-13 Adopting a new USG or Gateway on an existing network

2024-05-01 Background processes in redo

2024-04-03 Swanson: Slip and slurp

2024-02-13 Let futures be futures

2024-02-09 Swanson: Bethel stacks

2024-01-30 Rust: Shared target directory

2024-01-30 Cache directory tags

2024-01-24 Continuation-passing S₀: The return

2024-01-05 Transcript of Wirth's “Closing word at Zürich Colloquium”

2023-11-15 Build script links in Rust

2023-11-07 Defining ‘cons’ with only empty quotations

2023-11-07 A simpler definition of ‘sap’

2023-11-06 The natural linear concatenative basis

2023-11-05 Closing over values

2023-11-03 Categories of instructions in a concatenative basis

2023-11-03 A linear basis for Swanson

2023-11-03 The three-element linear concatenative basis

2023-11-03 The two-element linear concatenative basis

2023-11-02 Staged stacks are just values

2023-11-02 Towers of stacks

2023-10-13 Can you compile quotations in parallel?

2023-10-10 CSP would be a good language for property tests

2023-09-28 Is “code meant to be read more than run”?

2023-09-24 There shouldn't be any names in S₀

2023-09-23 Reflections on the final Strange Loop

2023-09-23 Stack values can be quotations

2023-09-17 Stack values cannot be quotations

2023-09-15 Stacks should be first-class

2023-08-04 Concurrency and property-based testing

2023-08-01 Backpressure, Ted Kaminski

2023-07-13 \ignorespaces in LaTeX

2023-07-12 “The looming demise of the 10× developer”, Justin Searls

2023-07-08 Resurrecting my Pinebook Pro

2023-06-29 Another tef gem on pipelines

2023-06-29 Forth, complex solutions to complex problems, generative AI

2023-06-29 Separate archive sections for reading log and posts

2023-06-12 Tail call optimization and debuggability

2023-05-09 Stack graphs paper

2021-06-14 A map of the tree-sitter ecosystem

2021-06-07 Getting started with tree-sitter

2021-01-03 Git commits and code review (revisited)

2020-12-30 Swanson: S₁

2020-12-29 Staff engineering manager

2020-12-10 Swanson: S₀

2020-12-08 Swanson: Execution model

2020-12-07 Swanson: Introduction

2020-12-01 Starting a Gemlog

2018-05-31 NP-hard isn't the end of the world

2018-04-19 Clean git histories and code review workflows

2018-03-27 Introducing Network Error Logging

2017-01-17 HST: Lazy processes

Unmigrated

Some posts from my old blog that I haven't migrated over to the new framework yet.

2016-11-17 HST: Semantic methods

2016-11-17 HST: Refinement overview

2016-11-16 HST: Introduction

2016-09-07 Concurrency models in CSP: Read Atomic: Internal consistency

2016-08-03 Concurrency models in CSP: Preliminaries

2016-07-28 Concurrency models in CSP: Introduction

2014-11-21 Dependency management in C

2014-05-14 Tagged releases using git flow

2014-02-28 CSP: The basics

2014-01-07 CSP: An introduction

2010-05-13 Installing Ubuntu Lucid on a PowerPC QEMU virtual machine

2010-02-25 Parser callbacks in libpush, Part 1 — Streams

2010-02-17 Using LLVM's link-time optimization on Ubuntu Karmic

2010-02-10 Extracting setuptools version numbers from your git repository

2010-02-06 A combinator-based parsing library for C

2010-02-05 Updating graffle-export to work with OmniGraffle 5

2010-01-08 Default “scons -c” targets

2010-01-05 Exporting OmniGraffle documents from the command line

2009-12-23 “High-water mark” buffers

2009-12-21 Decentralized datatypes

2009-12-18 Simulating “make distclean” in SCons

2009-09-08 Downgrading packages in Ubuntu

2009-08-13 iPhone tethering

2009-08-13 Using callbacks with the subprocess module

2009-08-07 Adding Disqus comments

2009-08-06 Problems with Python's subprocess.communicate method

2009-08-06 SBMF07 paper chosen for extended proceedings

2009-08-05 Site layout