xnacly
6.32x faster via zero allocations, less UTF8, more ASCII and assumptions
https://xnacly.me/posts/2026/revisiting-and-optimising-goiso8601duration/
xnacly
Full pipeline deep dive for purple garden: AST, BB SSA IR, Bytecode, Optimisations
https://xnacly.me/posts/2026/compiling-match-statements-to-bytecode/
xnacly
Naive vi like motion subset emulation bolted on top of bubbletea in 120loc
https://xnacly.me/posts/2026/the-worst-vim-emulation-for-my-mail-client/
xnacly
First optimizations I made while redesigning and semi-porting the purple-garden runtime from C to Rust
https://xnacly.me/posts/2026/purple-garden-first-optimisations/
xnacly
A deep dive into purple-garden’s runtime and semispace copying garbage collector with explicit root enumeration and bump allocation
https://xnacly.me/posts/2026/manchester-garbage-collector/
xnacly
Emulating armv7 is surprisingly easy, even from scratch AND in Rust
https://xnacly.me/posts/2025/building-a-minimal-viable-armv7-emulator/
xnacly
Macros, Token pasting and Custom allocators vs Traits, Option<Box<[MaybeUninit<T>]>> and the borrow checker
https://xnacly.me/posts/2025/porting-a-segmented-list-from-c-to-rust/
xnacly
So I need to use ISO8601 durations which Go doesn’t support
https://xnacly.me/posts/2025/handrolling-iso8601-support-for-go/
xnacly
Making compilation pipelines fast, starting with the tokenizer
https://xnacly.me/posts/2025/fast-lexer-strategies/
xnacly
Go iterators are too minimalist and iter.Seq/iter.Seq2 suck
https://xnacly.me/posts/2025/where-is-slice-dot-flatten/
xnacly
Designing a calling convention by merging registers and a stack into the purple-garden vm
https://xnacly.me/posts/2025/intertwining_registers_and_stack_for_fast_function_calls/
xnacly
Shortcomings of getopt, parsing CLI arguments into flags, no POSIX and a lot of implementation details
https://xnacly.me/posts/2025/rethinking-cli-arguments-and-substituting-getopt/
xnacly
nvim@v0.11 finally stabilizes lsp configuration “shortcuts” from nightly
https://xnacly.me/posts/2025/neovim-lsp-changes/
xnacly
The default config of the clang lsp is old, so you have to specific –std
https://xnacly.me/posts/2025/clangd-lsp/
xnacly
Json parsing in C using function pointers attached to a struct
https://xnacly.me/posts/2025/json-parser-in-c-with-methods/
xnacly
Adding syntax highlighting to SQL snippets in sqleibniz diagnostics
https://xnacly.me/posts/2025/syntax-highlight-for-errors/
xnacly
Using Treesitter in neovim to conditionally highlight code snippets
https://xnacly.me/posts/2025/treesitter-neovim/
xnacly
Benchmarking, analysing and improving JSON parsing performance
https://xnacly.me/posts/2025/optimizing-libjson/
xnacly
Improving the SQL DX one blog article at a time
https://xnacly.me/posts/2024/embed-lua-in-rust/
xnacly
Implementing levenshtein distance naïvely (and very slow) in Rust
https://xnacly.me/posts/2024/making-sql-keyword-suggestions-work/
xnacly
Investigating performance issues in a go package for open port lookup
https://xnacly.me/posts/2024/optimizing-a-dependency/
xnacly
Macros, iterators, patterns, error handling and match make Rust almost perfect
https://xnacly.me/posts/2024/rust-pldev/
xnacly
Go 1.23 added Iterators, so lets build a js like streaming api
https://xnacly.me/posts/2024/fun-with-iterators/
xnacly
Giving lots of edge cases attention, so I can call my json parser RFC 8259 compliant
https://xnacly.me/posts/2024/libjson/
xnacly
Minimal hash table implementation
https://xnacly.me/posts/2024/c-hash-map/
xnacly
Interacting with the Go runtime with c++ (or c, i think)
https://xnacly.me/posts/2024/go-cpp-interop/
xnacly
Doing less enables doing more INSERTs
https://xnacly.me/posts/2024/faster-inserts/
xnacly
Sharing state up and down the DOM, My favorite Vue.js feature and its React.js counter part
https://xnacly.me/posts/2024/favorite-vue-feature/
xnacly
Proof of concept for compiling arithmetic expressions on the fly
https://xnacly.me/posts/2024/jit-with-go/
xnacly
In depth guide on tokenizing input + interpreter setup
https://xnacly.me/posts/2023/calculator-lexer/
xnacly
Implementing a go like slice type for and in c
https://xnacly.me/posts/2023/growing-array-c/
xnacly
Disabling popup prompt and translation in firefox@^118
https://xnacly.me/posts/2023/disable-firefox-translation/
xnacly
Implementing a Rust like Result type for and in c
https://xnacly.me/posts/2023/result-types-c/
xnacly
Stripping metadata and debug information
https://xnacly.me/posts/2023/go-metadata/
xnacly
Solving and optimizing a leetcode puzzle in three ways
https://xnacly.me/posts/2023/leetcode-optimization/
xnacly
How to tokenize markdown without regular expressions
https://xnacly.me/posts/2023/lexer-markdown/
xnacly
Understanding, implementing and cracking RSA
https://xnacly.me/posts/2023/rsa/
xnacly
Snippet to remap accepting copilot suggestions
https://xnacly.me/posts/2023/remap-copilot-nvim/
xnacly
Small guide with snippets for encoding and decoding data into csv, json and xml
https://xnacly.me/posts/2023/java-encoding/
xnacly
Small but sufficient guide for github and git beginners
https://xnacly.me/posts/2023/git-guide/
xnacly
Guide for signing jar files and verifying a jar files signature programmatically
https://xnacly.me/posts/2023/sign-jars/
xnacly
Guide about working with JSON in go with HTTP server example
https://xnacly.me/posts/2023/go-json/
xnacly
How to fix the ‘object … is corrupt’ issue which renders git unusable
https://xnacly.me/posts/2023/corrupted-git/
xnacly
A guide to updating a repository periodically using x-git-sync
https://xnacly.me/posts/2023/x-git-sync/
xnacly
Quick guide with snippet on how to check if a executable is in the systems path
https://xnacly.me/posts/2023/go-check-for-executable/
xnacly
Short guide to adding autocommands to neovim using lua with the vim.api.nvim_create_autocmd interface
https://xnacly.me/posts/2023/autocommand-nvim/
xnacly
Top 10 neovim plugins everyone needs
https://xnacly.me/posts/2023/top-10-nvim-plugins/
xnacly
Guide to using fzf in neovim with preview and keybinds
https://xnacly.me/posts/2023/configure-fzf-nvim/
xnacly
Guide for setting up and packaging a vue.js project with electron and vite
https://xnacly.me/posts/2023/vue-electron/
xnacly
Guide and example on how to configure the coc.nvim extension and lsp provider (config and keybinds)
https://xnacly.me/posts/2022/configure-coc-nvim/
xnacly
Installation, configuration and usage guide
https://xnacly.me/posts/2022/neovim-ped-1/
xnacly
An overview of my note setup
https://xnacly.me/posts/2022/notes/
xnacly
This page is now officially a member of the 512kb club
https://xnacly.me/posts/2022/512kb/
xnacly
How to effectively revision your papers
https://xnacly.me/posts/2022/art-of-revision/
xnacly
Optimize websites for a better user experience
https://xnacly.me/posts/2022/web-performance/
xnacly
A guide to help you setup your Linux work machine and configure it for a power users workflow
https://xnacly.me/posts/2022/linux-for-powerusers/
xnacly
reasons for migrating your blog to hugo
https://xnacly.me/posts/2022/migrate-to-hugo/
xnacly
Creating custom events in javafx to handle submitting on enter in TextFields
https://xnacly.me/posts/2022/javafx-events/
xnacly
Writing a basic image editor as a comp science project, Part II
https://xnacly.me/posts/2022/imgedit2/
xnacly
Writing a basic image editor as a comp science project, Part I
https://xnacly.me/posts/2022/imgedit1/
xnacly
A guide to wifi, touchpad support and more on your macbook pro 2012 using arch
https://xnacly.me/posts/2021/macbookpro_guide/
xnacly
How to bridge a WIFI connection to LAN
https://xnacly.me/posts/2021/wifi_bridge/