41554 blogs ยท [ { "id": "01a08784-ff79-735b-b06a-24bf0ebe0f21", "title": "Use Python for Scripting!", "url": "https://hypirion.com/musings/use-python-for-scripting", "published_at": "2025-12-06T19:37:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf0ef8b25e", "title": "Making Code Generators Pleasant to Use", "url": "https://hypirion.com/musings/making-code-generators-pleasant-to-use", "published_at": "2024-07-20T14:30:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf0f66d5cb", "title": "Why I'm Not Nixing My OCaml Builds (Yet)", "url": "https://hypirion.com/musings/no-nix-for-my-ocaml-builds-yet", "published_at": "2024-06-21T09:49:11+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf104fd984", "title": "Getting OCaml Through the Eye of a Needle", "url": "https://hypirion.com/musings/getting-ocaml-through-the-eye-of-a-needle", "published_at": "2024-05-20T17:50:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1051d7c7", "title": "Implementing System-Versioned Tables in Postgres", "url": "https://hypirion.com/musings/implementing-system-versioned-tables-in-postgres", "published_at": "2024-01-21T20:20:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1113353f", "title": "Haunting Down Errors in Go", "url": "https://hypirion.com/musings/haunting-down-errors-in-go", "published_at": "2023-08-06T18:43:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf115eea39", "title": "Go-stly Access Rights", "url": "https://hypirion.com/musings/go-stly-access-rights", "published_at": "2023-07-23T14:00:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf124f5b8a", "title": "Spectral Contexts in Go", "url": "https://hypirion.com/musings/spectral-contexts-in-go", "published_at": "2023-06-18T17:00:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf12ef9519", "title": "GraphQL and Type Systems", "url": "https://hypirion.com/musings/graphql-and-type-systems", "published_at": "2023-05-28T15:45:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf13ed76fb", "title": "On Expectations and Fun", "url": "https://hypirion.com/musings/on-expectations-and-fun", "published_at": "2022-12-26T14:30:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1480fe88", "title": "Teaching DucKey to Quack ๐Ÿฆ†", "url": "https://hypirion.com/musings/duckey", "published_at": "2022-10-27T20:50:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf14e03a3f", "title": "Smaller Static Sites with New Formats", "url": "https://hypirion.com/musings/smaller-static-sites-with-new-formats", "published_at": "2022-06-13T20:11:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf154dc913", "title": "Type-Safe HTTP Servers in Go via Generics", "url": "https://hypirion.com/musings/type-safe-http-servers-in-go-via-generics", "published_at": "2021-10-08T18:48:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1637b52c", "title": "Row Polymorphism In Go?!", "url": "https://hypirion.com/musings/row-polymorphism-in-go", "published_at": "2019-09-29T21:04:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf166b753a", "title": "Wibbly Wobbly, Timey Wimey", "url": "https://hypirion.com/musings/timey-wimey", "published_at": "2018-09-23T21:50:03+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf172b4cc7", "title": "A Resilient Git Dependency Algorithm", "url": "https://hypirion.com/musings/a-resilient-git-dependency-algorithm", "published_at": "2018-03-26T15:37:00+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf17fd9cd3", "title": "Lock Files Are Not the Only Option", "url": "https://hypirion.com/musings/lockfiles-are-not-the-only-option", "published_at": "2017-08-26T21:06:11+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf18430d27", "title": "From Transducers to Conduits and Back Again", "url": "https://hypirion.com/musings/transducers-to-conduits-and-back", "published_at": "2016-07-11T11:34:01+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf184cd5c1", "title": "Clojure's Transducers in Haskell", "url": "https://hypirion.com/musings/haskell-transducers", "published_at": "2016-05-23T12:20:56+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf18dd8a63", "title": "(rationalize inlein)", "url": "https://hypirion.com/musings/inlein-rationale", "published_at": "2016-03-14T01:22:28+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf190106d1", "title": "The Simplest Collection", "url": "https://hypirion.com/musings/the-simplest-collection", "published_at": "2016-01-10T00:51:34+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1954cde6", "title": "Parsing TeX with Recursive Transducers", "url": "https://hypirion.com/musings/recursive-transducers", "published_at": "2015-11-12T21:12:48+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1a0d9ec8", "title": "Commit Times and Work Culture", "url": "https://hypirion.com/musings/git-multipunchcard", "published_at": "2015-09-27T15:55:23+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1aa493aa", "title": "Persistent Vector Performance Summarised", "url": "https://hypirion.com/musings/persistent-vector-performance-summarised", "published_at": "2015-02-23T00:38:26+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1b018b9c", "title": "Swearjure is Turing Complete", "url": "https://hypirion.com/musings/swearjure-is-turing-complete", "published_at": "2015-02-03T17:04:58+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1bb8a275", "title": "Persistent Vector Performance", "url": "https://hypirion.com/musings/persistent-vector-performance", "published_at": "2015-01-24T23:52:09+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1c43310a", "title": "Understanding Clojure's Transients", "url": "https://hypirion.com/musings/understanding-clojure-transients", "published_at": "2014-10-19T17:28:56+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1cf874e1", "title": "Improving RRB-Tree Performance through Transience", "url": "https://hypirion.com/musings/thesis", "published_at": "2014-07-19T21:06:26+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1df23982", "title": "Understanding Clojure's Persistent Vectors, pt. 3", "url": "https://hypirion.com/musings/understanding-persistent-vector-pt-3", "published_at": "2014-04-09T23:12:31+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1e5607ed", "title": "Advanced Clojure/Java Mixing in Leiningen", "url": "https://hypirion.com/musings/advanced-intermixing-java-clj", "published_at": "2014-02-09T00:56:12+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1f259661", "title": "Suboptimal Optimisations", "url": "https://hypirion.com/musings/suboptimal-optimisations", "published_at": "2013-12-30T12:41:34+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf1fd4cb64", "title": "Understanding Clojure's Persistent Vectors, pt. 2", "url": "https://hypirion.com/musings/understanding-persistent-vector-pt-2", "published_at": "2013-10-24T15:51:20+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf20041e12", "title": "Understanding Clojure's Persistent Vectors, pt. 1", "url": "https://hypirion.com/musings/understanding-persistent-vector-pt-1", "published_at": "2013-09-25T12:46:53+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf2085b1d8", "title": "Read RFC Documents in HTML Form", "url": "https://hypirion.com/musings/read-rfcs-in-html", "published_at": "2013-08-24T12:58:02+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf2127ca64", "title": "Hello World in Swearjure", "url": "https://hypirion.com/musings/hello-swearjure", "published_at": "2013-03-31T16:47:31+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf21341421", "title": "How To Cancel A Blocking Read In Java", "url": "https://hypirion.com/musings/how-to-cancel-a-blocking-read", "published_at": "2013-02-21T16:17:27+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf2229f3c9", "title": "A Language Without Conditionals", "url": "https://hypirion.com/musings/without-conditionals", "published_at": "2013-02-10T12:50:51+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf22e028ec", "title": "FBHC 2013 Intro Round in Clojure", "url": "https://hypirion.com/musings/fbhc-2013-in-clojure", "published_at": "2013-01-29T00:24:14+00:00" }, { "id": "01a08784-ff79-735b-b06a-24bf235bde7f", "title": "Swearjure - Clojure without alphanumerics", "url": "https://hypirion.com/musings/swearjure", "published_at": "2013-01-09T17:14:34+00:00" } ] posts Claim your blog
Back to hypirion.com
Blog ยท corpus.blog/blogs/hypirion.com/posts

hypirion.com

hypirion.com

2025

2024

2023

2022

2021

2019

2018

2017

2016

2015

2014

2013