Icarus (formerly FrameForge) banner

Icarus (formerly FrameForge)

1 devlog
153h 7m 10s

Icarus: A lean, colon-driven language for modular performance.

The language consists of multiple components such as:

  1. CoRe: The syntax formatter which is automatically installed when the binary is installed from github.
  2. Icarus (previous…

Icarus: A lean, colon-driven language for modular performance.

The language consists of multiple components such as:

  1. CoRe: The syntax formatter which is automatically installed when the binary is installed from github.
  2. Icarus (previously built in FrameForge): This is the main program, which converts Icarus code into Assembly, Rust, binary or executables.
    3.Apollo: This is the package manager which is responsible for all the plugins and extensions. Apollo also manages the link between Icarus and some of my other projects which are built on this.

Why it works:

Explicit paths: Local, global, and fast paths are clearly defined.

Script-like: Action-first syntax eliminates boilerplate ceremony.

Modular: Components are built to be forged and reused.

Targeted unsafe: Isolate low-level access without compromising the whole codebase.

This project uses AI

I used Github Copilot to automate testing but it did not modify any of the code but it only ran the code by itself and generated performance reports.

Demo Repository

Loading README...

ishansreejith10

I am incredibly sorry for deleting the Flavortown project, because it meant I had to redo every single devlog from scratch. Thanks for sticking with me as I rebuild this.

Features and Architecture:

The core philosophy of Icarus is centered on a lean, colon-driven syntax that prioritizes modularity and raw performance. One of the most significant features is structural clarity, where local, global, and fast paths are made explicit. This ensures that the developer always understands the scope and execution speed of their data without hidden overhead. The language uses an action-first syntax, meaning keywords are designed to read like a direct script rather than unnecessary ceremony or boilerplate. This approach makes the code highly readable and intent-focused.

Modularity is handled by a system where components are forged and refined as independent units, making them easy to reuse across different parts of a system. For developers needing low-level control, Icarus allows specific blocks to be marked as unsafe. This provides raw access to memory, syscalls, and sockets without forcing the developer to sprinkle safety caveats throughout the rest of the codebase.

On the optimization part, the compiler now implements import caching. By reusing parsed ASTs when file modification times remain unchanged, the lexing and parsing phases are skipped on warm builds. In a 4-module sample test, this dropped rebuild times from 420ms to 240ms, which is roughly a 43% improvement. Additionally, IR preallocation has been introduced. Instruction buffers are now pre-sized based on statement counts to minimize vector reallocations during the lowering process. This optimization reduced IR build allocations by approximately 18% on the same sample set. These changes ensure that while cold builds remain stable, the iterative development cycle is significantly faster.

Attachment
0