41554 blogs · [ { "id": "01a087a6-06e8-7053-a293-8eba95853b6e", "title": "Trivia Pursuit", "url": "https://mikeinnes.io/sponsor/posts/trivia/", "published_at": "2026-07-22T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba961c0982", "title": "Style Guide", "url": "https://mikeinnes.io/posts/style/", "published_at": "2026-07-14T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba96ede672", "title": "Structured Concurrency", "url": "https://mikeinnes.io/sponsor/posts/concurrency/", "published_at": "2026-04-27T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba97e8129e", "title": "WebAssembly solves Function Colouring", "url": "https://mikeinnes.io/sponsor/posts/tasks/", "published_at": "2026-03-06T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba983f6f8d", "title": "Research using Flux", "url": "https://mikeinnes.io/posts/flux/", "published_at": "2026-02-26T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba9921c56d", "title": "Raven in JavaScript", "url": "https://mikeinnes.io/sponsor/posts/in-js/", "published_at": "2026-02-06T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba999a6e02", "title": "The Year of the Raven", "url": "https://mikeinnes.io/sponsor/posts/2026/", "published_at": "2026-01-02T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba9a0e4ef6", "title": "Raven is open source", "url": "https://mikeinnes.io/sponsor/posts/open-source/", "published_at": "2025-12-05T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba9ad549d6", "title": "Advent of Code", "url": "https://mikeinnes.io/posts/advent-2025/", "published_at": "2025-12-01T00:00:00+00:00" }, { "id": "01a087a6-06e8-7053-a293-8eba9b65fab0", "title": "A Tour of Raven", "url": "https://mikeinnes.io/posts/raven-tour/", "published_at": "2025-11-22T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c6edf405f", "title": "Stack traces, loop labels and wasm GC", "url": "https://mikeinnes.io/sponsor/posts/stack-traces/", "published_at": "2025-11-07T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c6f1fbe73", "title": "Compiler Tracing", "url": "https://mikeinnes.io/sponsor/posts/tracing/", "published_at": "2025-10-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c6faa5907", "title": "Porting the Compiler", "url": "https://mikeinnes.io/sponsor/posts/porting/", "published_at": "2025-09-05T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c70630da0", "title": "Research using Flux", "url": "https://mikeinnes.io/sponsor/posts/flux/", "published_at": "2025-08-01T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c710148ab", "title": "Reference Counting in Raven", "url": "https://mikeinnes.io/posts/memory/", "published_at": "2025-07-24T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c71afc4e4", "title": "TypeScript", "url": "https://mikeinnes.io/sponsor/posts/typescript/", "published_at": "2025-07-04T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7212a334", "title": "On AI and Programming Languages", "url": "https://mikeinnes.io/posts/ai-pl/", "published_at": "2025-05-19T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c72d0c93d", "title": "Vibe Coding", "url": "https://mikeinnes.io/sponsor/posts/vibes/", "published_at": "2025-05-05T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7373a433", "title": "A Language for Sorcery", "url": "https://mikeinnes.io/posts/raven/", "published_at": "2025-04-20T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c737c387a", "title": "Soon to be announced", "url": "https://mikeinnes.io/sponsor/posts/unions/", "published_at": "2025-04-07T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c741fc5c3", "title": "Basic Bits", "url": "https://mikeinnes.io/sponsor/posts/bits/", "published_at": "2025-03-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c74e6bff5", "title": "Multiple Dispatch", "url": "https://mikeinnes.io/sponsor/posts/dispatch/", "published_at": "2025-02-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c754b1586", "title": "Type Narrowing", "url": "https://mikeinnes.io/sponsor/posts/narrowing/", "published_at": "2025-01-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c75f2d183", "title": "REPL and WASI", "url": "https://mikeinnes.io/sponsor/posts/repl/", "published_at": "2024-12-02T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c76f205b7", "title": "WebAssembly", "url": "https://mikeinnes.io/sponsor/posts/wasm/", "published_at": "2024-11-04T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c771f7c51", "title": "Notes on Zig", "url": "https://mikeinnes.io/posts/zig/", "published_at": "2024-10-09T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7728e9ee", "title": "Zig & Partial Evaluation", "url": "https://mikeinnes.io/sponsor/posts/zig/", "published_at": "2024-10-07T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c781a71da", "title": "Memory Management", "url": "https://mikeinnes.io/sponsor/posts/memory/", "published_at": "2024-09-02T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c78e2492a", "title": "Recursion Redux", "url": "https://mikeinnes.io/sponsor/posts/recursion2/", "published_at": "2024-08-05T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c793c0a04", "title": "Notes on Syntax", "url": "https://mikeinnes.io/sponsor/posts/syntax/", "published_at": "2024-07-01T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7991dca6", "title": "Inferring Recursive Types", "url": "https://mikeinnes.io/sponsor/posts/recursion/", "published_at": "2024-06-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7a4cf823", "title": "On Friendly Despots", "url": "https://mikeinnes.io/sponsor/posts/despots/", "published_at": "2024-05-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7a6b8ec7", "title": "Recursive Caches", "url": "https://mikeinnes.io/sponsor/posts/caches/", "published_at": "2024-04-01T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7b1cdc90", "title": "Stack Shuffling", "url": "https://mikeinnes.io/posts/stack-shuffling/", "published_at": "2024-03-21T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7b6ec553", "title": "Funding Models", "url": "https://mikeinnes.io/sponsor/posts/funding/", "published_at": "2024-03-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7bbde6cb", "title": "Finding Your Mojo", "url": "https://mikeinnes.io/posts/mojo/", "published_at": "2023-06-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7c1c35b1", "title": "Data Structures, Data Modelling", "url": "https://mikeinnes.io/posts/data/", "published_at": "2023-05-30T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7cfac189", "title": "Deus Ex Bing", "url": "https://mikeinnes.io/posts/bing/", "published_at": "2023-02-18T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7d8d3977", "title": "Clocktower IQ", "url": "https://mikeinnes.io/posts/clocktower/", "published_at": "2022-06-29T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7e77c8c2", "title": "Imperative Syntax, Functional Semantics", "url": "https://mikeinnes.io/posts/swap/", "published_at": "2022-06-24T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7e8512d3", "title": "Adventures in Face Space", "url": "https://mikeinnes.io/posts/facespace/", "published_at": "2022-04-01T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7f5fc6d8", "title": "The Fun in Non-Fungible", "url": "https://mikeinnes.io/posts/fungible/", "published_at": "2022-03-02T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c7fac7f21", "title": "Test Your Vocab", "url": "https://mikeinnes.io/posts/vocab/", "published_at": "2022-02-26T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c808724bc", "title": "Brave New Wordle", "url": "https://mikeinnes.io/posts/wordle/", "published_at": "2022-01-15T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c815fde97", "title": "Schrödinger’s Author", "url": "https://mikeinnes.io/posts/author/", "published_at": "2021-07-30T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c818496a2", "title": "Edit Policy", "url": "https://mikeinnes.io/posts/edits/", "published_at": "2021-05-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c827652e9", "title": "Colouring by numbers", "url": "https://mikeinnes.io/posts/colours/", "published_at": "2021-03-23T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c832e1976", "title": "Variational Inference", "url": "https://mikeinnes.io/posts/vi/", "published_at": "2021-02-25T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c833b2d01", "title": "Inferring transmission rates", "url": "https://mikeinnes.io/posts/covid-gp/", "published_at": "2020-12-17T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c836a40a9", "title": "Bona Polari", "url": "https://mikeinnes.io/posts/polari/", "published_at": "2020-11-03T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c83ad320b", "title": "Zen there were none", "url": "https://mikeinnes.io/posts/zen/", "published_at": "2020-10-09T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c849dae6b", "title": "Partial Evaluation & Abstract Interpretation", "url": "https://mikeinnes.io/posts/mjolnir/", "published_at": "2020-07-29T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c85811280", "title": "Transducers & Effects", "url": "https://mikeinnes.io/posts/transducers/", "published_at": "2020-06-12T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c867551c4", "title": "The Modern Language Designer", "url": "https://mikeinnes.io/posts/modern-languages/", "published_at": "2020-06-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c8675de31", "title": "Iterate on it", "url": "https://mikeinnes.io/posts/iterate/", "published_at": "2020-06-04T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c869f387d", "title": "The Many Types of Types", "url": "https://mikeinnes.io/posts/types/", "published_at": "2020-05-19T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c877a5092", "title": "Differentiable Control Problems", "url": "https://mikeinnes.io/posts/dp-vs-rl/", "published_at": "2019-03-05T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c879caf3f", "title": "On Machine Learning and Programming Languages", "url": "https://mikeinnes.io/posts/ml-pl/", "published_at": "2017-12-06T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c884ec031", "title": "Recursive Self-Simulation", "url": "https://mikeinnes.io/posts/turingception/", "published_at": "2017-11-15T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c885a4ea8", "title": "Taming the Tarpit", "url": "https://mikeinnes.io/posts/brainforth/", "published_at": "2017-09-13T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c885e7cda", "title": "Generic GPU Kernels", "url": "https://mikeinnes.io/posts/cudanative/", "published_at": "2017-08-24T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c889881f4", "title": "The Lazy List", "url": "https://mikeinnes.io/posts/lazy/", "published_at": "2017-06-05T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c88f1fe66", "title": "Sorting a Billion Numbers", "url": "https://mikeinnes.io/posts/sorting/", "published_at": "2016-03-21T00:00:00+00:00" }, { "id": "01a087a6-06e9-7339-8e81-ec9c890fe324", "title": "Speed in Programming Languages", "url": "https://mikeinnes.io/posts/speed/", "published_at": "2014-05-26T00:00:00+00:00" } ] posts Claim your blog
Back to mikeinnes.io
Blog · corpus.blog/blogs/mikeinnes.io/posts

mikeinnes.io

mikeinnes.io

2026

2025

2024

2023

2022

2021

2020

2019

2017

2016

2014