For the past year, I've been building AiLang, an open-source programming language designed around a simple idea:
Application semantics should live in the language, not the host runtime.
This week, the project reached an important milestone.
A weather application written entirely in AiLang now runs on both native macOS and Browser/WebAssembly targets.
While a weather app may not sound particularly exciting, the significance isn't the application itself. The significance is what the application proves.
Why a Weather App?
When building a new language, it's easy to get stuck in a world of examples and toy programs.
Hello World works.
Arithmetic works.
Unit tests pass.
But none of those prove that real applications can be built.
A weather application exercises a surprising amount of the ecosystem:
- Multi-file modules
- Imports and exports
- HTTP requests
- JSON processing
- String manipulation
- State management
- User interface rendering
- Cross-platform execution
It becomes a practical test of whether the language, runtime, and libraries are actually working together.
The Architecture
AiLang is part of a larger ecosystem consisting of three major components:
AiLang
The programming language itself.
AiLang focuses on deterministic behavior, explicit structure, and AI-friendly source code.
AiVM
The virtual machine responsible for executing AiLang applications.
A core design goal is keeping execution behavior consistent across platforms.
AiVectra
A vector-based UI framework used to build graphical applications.
AiVectra is designed to provide a consistent UI model across native and web environments.
Together, these components form a complete stack:
Language → VM → UI
What This Milestone Validates
Building and running the weather application validated several major pieces of the system.
Module Composition
The application is split across multiple files and modules rather than being a single monolithic source file.
This exercises the import/export system and package structure that future applications will depend on.
Standard Library Growth
The application relies heavily on common functionality:
- String handling
- Collections
- HTTP communication
- Data processing
These are the foundations every future application will build upon.
Cross-Platform Execution
Perhaps the most satisfying result was seeing the same application logic run on:
- Native macOS
- Browser/WebAssembly
without rewriting the application itself.
The runtime profile changes.
The application code does not.
UI Framework Integration
This also serves as an integration test between AiLang, AiVM, and AiVectra.
The language, runtime, and UI framework are no longer evolving independently—they are beginning to function as a cohesive ecosystem.
What Makes This Different?
Many modern frameworks pursue portability through increasingly complex abstractions.
AiLang takes a different approach.
The goal is not to hide platform differences behind layers of framework code.
The goal is to keep application semantics inside the language itself while allowing hosts to remain thin and replaceable.
In other words:
- The language defines meaning.
- The VM executes meaning.
- The host provides capabilities.
This separation has been one of the guiding principles of the project from the beginning.
Still Early
This is not a production-ready application framework.
AiVectra is still young.
AiLang is still evolving.
AiVM continues to gain capabilities.
There is a substantial amount of work remaining.
But software projects are built one milestone at a time.
A year ago, AiLang was largely specifications, prototypes, and architectural discussions.
Today, it is running a complete application across native and web targets.
That's meaningful progress.
What's Next?
The weather application is only the beginning.
The next milestones include:
- Additional sample applications
- Expanded standard libraries
- Improved tooling
- More runtime profiles
- Continued growth of AiVectra
- Further self-hosting within the ecosystem
The long-term goal remains the same:
Build a deterministic, AI-native software platform where the language itself is the source of truth.
Links
Project Website: https://ailang.codes
GitHub Organization: https://github.com/AiLangCore
AiLang, AiVM, and AiVectra are open-source and actively evolving.
Top comments (0)