Dr. Brian Robert Callahan
academic, developer, with an eye towards a brighter techno-social life
- Posts
- 96 from 15 Jun 2020 to 11 Aug 2026
- Posting
- monthly (6 in the last year)
- Kind
- personal blog
- Feed
- https://briancallahan.net/blog/feed.xml
2026 5
2025 8
- 2025-12-16: Let's run FreeBSD 15.0-RELEASE on a Raspberry Pi Zero 2 W
- 2025-09-01: Let's write a peephole optimizer for QBE's arm64 backend
- 2025-08-17: Despite thoughts to the contrary, GNAT (Ada) is in fact fully supported on illumos
- 2025-08-13: The GNU D compiler has been broken on FreeBSD 14 for over a year and no one noticed, or, why operating system package maintainers matter
- 2025-05-16: I revived pkgsrc on AIX
- 2025-03-29: GCC 14.2.0 on PowerPC Mac OS X 10.4 Tiger
- 2025-02-22: State of virtualizing the BSDs on Apple Silicon
- 2025-01-12: Let's port the GNAT Ada compiler to macOS/aarch64
2024 6
- 2024-12-16: Let's cross compile from FreeBSD/amd64 to macOS/aarch64
- 2024-12-12: A GDC package for macOS/aarch64
- 2024-06-09: A DMD package for OpenIndiana
- 2024-03-06: FreeBSD has a(nother) new C compiler: Intel oneAPI DPC++/C++
- 2024-01-22: Can GCC use Clang as its assembler?
- 2024-01-01: FreeBSD has a new C compiler: Oracle Developer Studio 12.6
2023 6
- 2023-11-19: Enabling LLVM with m68k (and more) support on OpenBSD
- 2023-08-13: Can mold be used as the OpenBSD system linker?
- 2023-07-23: Using non-GNU assemblers with the Portable C Compiler
- 2023-07-05: Porting the Portable C Compiler (PCC) to Illumos
- 2023-07-03: Installing Oracle Developer Studio 12.6 on Illumos
- 2023-06-26: GCC --enable-languages=all on OpenBSD
2022 15
- 2022-12-19: GCC now includes Modula-2 and Rust. Do they work on OpenBSD?
- 2022-11-13: I took the CompTIA CySA+ CS1-003 beta exam for fun
- 2022-07-04: Your next C compiler is a D compiler: Introducing DMD's ImportC
- 2022-06-29: OpenBSD has two new C compilers: chibicc and kefir
- 2022-04-27: I ported the new Hare compiler to OpenBSD
- 2022-04-26: Let's try V on OpenBSD
- 2022-04-18: Let's install OpenBSD/riscv64 on QEMU
- 2022-04-17: I wrote a peephole optimizer (for QBE), part 3: Studying the LLVM and GCC optimizers
- 2022-04-06: Hand-optimizing the TCC code generator
- 2022-04-02: I wrote a simple, explainable, peephole optimizer (for cproc and QBE), part 2
- 2022-03-30: I wrote a peephole optimizer (for QBE), part 1
- 2022-03-21: I built the new gcobol compiler on OpenBSD
- 2022-02-22: I took the CompTIA Linux+ XK1-005 beta exam for fun
- 2022-02-20: I wrote the least-C C program I could
- 2022-02-05: I took the CompTIA Project+ PK1-005 beta exam for fun
2021 42
- 2021-12-04: Supporting a new C compiler for oksh and review of the vbcc C compiler
- 2021-10-31: More OpenBSD and D news
- 2021-10-20: An LDC bootstrap compiler and LDC package for OpenBSD
- 2021-10-13: Packaging the DMD D compiler for OpenBSD
- 2021-10-10: Benchmarking the oksh shell, or, let's look at a lot of C compilers
- 2021-09-11: I got the J language working on OpenBSD
- 2021-09-06: Let's write a self-hosting compiler, part 1: Reading in source code
- 2021-08-29: Let's get hands-on with QBE
- 2021-08-26: Let's write a compiler, part 8: Strings, forward references, and conclusion
- 2021-08-22: Let's write a compiler, part 7: Arrays
- 2021-08-19: Let's write a compiler, part 6: Input and output
- 2021-08-18: Let's write a compiler, part 5: A code generator
- 2021-08-17: Let's write a compiler, part 4: Testing
- 2021-08-16: Let's write a compiler, part 3: A parser
- 2021-08-15: Let's write a compiler, part 2: A lexer
- 2021-08-14: Let's write a compiler, part 1: Introduction, selecting a language, and doing some planning
- 2021-08-02: Reviewing my first OpenBSD port, and what I'd do differently 10 years later
- 2021-08-01: I write for QEX, and you should too
- 2021-07-10: I wrote a 231-byte Brainfuck compiler by abusing everything
- 2021-06-27: Write an OpenBSD port with me: The TIC-80 fantasy game console
- 2021-06-09: I wrote a linker everyone can understand!
- 2021-06-06: Introducing 8088ify: The CP/M to MS-DOS assembly translator
- 2021-06-04: I participated in my first "game" jam
- 2021-05-29: Profiling our assembler with the DMD compiler
- 2021-05-22: The GNU D Compiler on OpenBSD/armv7
- 2021-05-20: The GNU D Compiler on OpenBSD/arm64
- 2021-04-25: A multi-platform "compiler"
- 2021-04-15: Demystifying programs that create programs, part 9: Pseudo-ops
- 2021-04-14: Demystifying programs that create programs, part 8: Finishing opcode processing
- 2021-04-13: Demystifying programs that create programs, part 7: Further opcode processing
- 2021-04-12: Demystifying programs that create programs, part 6: Processing more opcodes
- 2021-04-11: Demystifying programs that create programs, part 5: Processing our first opcode
- 2021-04-10: Demystifying programs that create programs, part 4: Parsing
- 2021-04-09: Demystifying programs that create programs, part 3: Globals, passes, and error handling
- 2021-04-08: Demystifying programs that create programs, part 2: Starting an sassembler
- 2021-04-07: Demystifying programs that create programs, part 1: A disassembler
- 2021-04-03: I got the GNU Modula-2 compiler working on OpenBSD
- 2021-03-27: My experiences writing my first real D program and using it to improve OpenBSD D support
- 2021-03-20: A working D compiler on OpenBSD
- 2021-03-11: Quick shameless plug
- 2021-02-15: All the C compilers that can produce working binaries on OpenBSD -current (that I know of)
- 2021-02-14: I donated a patch and got a free compiler!
2020 14
- 2020-11-24: I wrote a pager that works on Unix and CP/M
- 2020-11-18: Comparing a new language for tiny machines
- 2020-11-04: Why aren't new hams getting published?
- 2020-10-10: Where are all the protocols?
- 2020-09-26: From new ham to QEX author in two months
- 2020-08-27: Let's create a protocol, part 1: Introducing the CW Record Protocol
- 2020-08-25: Why I got my amateur radio license in 2020
- 2020-08-16: I wrote the world's worst text editor (so you don't have to)
- 2020-08-12: Can we do better than our C compiler?
- 2020-08-08: Where do argc and argv come from?
- 2020-08-06: Compiler numbers, and why they don't matter
- 2020-08-03: Extreme minimalism and constraints in game development (Code deep dive #1)
- 2020-07-26: Introducing Free Bee
- 2020-06-15: TryHackMe|Learn Linux