Hey r/compsci, I’ve been learning systems programming and database internals, so I started building Ark — a SQL-like relational database engine written entirely from scratch in C++. GitHub: https://github.com/kashyap-devansh/Ark Current features include: Handwritten tokenizer / lexer Recursive descent parser CRUD operations INNER / LEFT / RIGHT / FULL joins Aggregate functions ALTER TABLE support File persistence Custom diagnostics system Everything is implemented manually: no parser generators no embedded SQL engines no external dependencies One of the most interesting challenges so far has been designing joins and schema evolution cleanly while keeping persistence consistent across changes. I’d especially appreciate feedback around: parser architecture query execution design storage/persistence layout schema handling submitted by /u/TheIndieBuildr [link] [comments]