Lito: A C++ Modules Build System and Package Manager

The world has suffered CMake for far too long. Writing C++ means I like flexibility, but that does not mean the build system should be chaotic. Quite the opposite: the flexibility of C++ calls for subtraction, and its build system needs subtraction even more. Lito is a module-first package manager for C++, and also a build system. It is written with C++20 Modules, takes its overall design inspiration from Cargo, and uses lua for scripting. ...

August 26, 2026 · 4 min · hypengw

The Paradox of Complexity in LLM Code Development

From the initial Copilot to the current Claude Code, I’ve tried using these AI-assisted development tools. The blogger doesn’t write code to make a lot of money; it’s more for fun, to be used by many people, and to bring peace of mind. And writing code just happens to support me; if not, I would still find another job and continue writing what I consider useful code in my spare time. My dislike of AI isn’t about code; it’s more about feeling a comprehensive impact. Simply put, human value is being diluted. However, today we won’t discuss this topic. Let’s talk about some issues with LLMs replacing humans in writing code. ...

February 11, 2026 · 5 min · hypengw

Simulating Rust Trait in C++

I got in touch with rust quite early and watched its ecosystem gradually improve. When I first used trait, I wondered how to implement such a great feature in c++. Though it wasn’t an urgent need, I put it aside. Recently, I tried to implement it in a simple way. Rust Trait Let’s first look at an example of rust trait. Simply put, it’s about defining interfaces, implementing interfaces, and interface polymorphism. Actually, c++ already has a complete inheritance paradigm to implement these requirements - virtual interface, inheritance implementation, virtual polymorphism. However, virtual functions require forced dynamic dispatch and add virtual table pointers to class instances. So let’s try to implement trait without using virtual inheritance. ...

March 12, 2025 · 4 min · hypengw

Is Flatpak a Package Manager

Reading this article requires some understanding of: Linux distributions, Linux Desktop Environment, Package Manager My first encounter with Linux was in high school, when there seemed to be a software that only had a Linux version, so I tried to install Arch by following online articles. I don’t remember the specific details anymore. For me at that time, a bunch of incomprehensible commands were quite a headache, and I was always afraid of breaking my computer. ...

January 3, 2025 · 9 min · hypengw