You are browsing as a guest. Sign up (or log in) to start making projects!

6h 20m 45s logged

Massive session in the last days. Honestly, the past few days have been a heavy grind balancing school work and academic study. Between reviewing some Python automation scripts and touching up minor EDA/hardware schematic concepts, I had to take a step back and deeply review C fundamentals. I spent a good chunk of time writing tests to push the limits of basic features, function definitions, and pointer scopes that the language offers.

All this testing made it obvious that the old monolithic, single-file structure was hitting a wall. To scale Orbit properly into the Alpha phase (vα), I executed a complete architectural overhaul, breaking the codebase down from 1 single file into 5 highly modular files, all cleanly decoupled and tied together using structured header files (.h) and a dedicated Makefile.

Key implementations finalized in this block:

  • Modular File Splitting: Migrated core logic away from the legacy root files. The project is now properly organized under a /src directory, separating the shell’s main loop, the token parser, and individual command definitions into their own independent compilation units.
  • Dynamic Prompt Integration: Hooked up the native getcwd() system call inside the interactive execution loop. Because the shell now correctly tracks process directory state, the prompt dynamically updates and visually prints the absolute path in real-time right after a ‘cd’ executes.
  • Lookup Table for Aliases: Laid down the pre-processing layer for custom shortcut mappings. Designed a static structure array to act as an Alias Table, intercepting raw stdin strings to scan for matches (like replacing ‘ll’ with ‘run ls -la’) before the input ever hits strtok for argument tokenization.
0
6

Comments 0

No comments yet. Be the first!