QuanLang is a simple interpreted programming language designed for learning language design, interpreters, and compilers. Built from scratch with Go.
// New in v1.3: Null comparisons & Native APIs
data = fetch("https://api.example.com/users");
users = toJson(data);
if (users == null) {
print("Failed to fetch data");
return;
}
// Type casting with new functions
userCount = int("42"); // 42
price = float("19.99"); // 19.99
message = string(userCount); // "42"
isActive = bool("true"); // true
// Null comparisons work naturally
if (null == null) {
print("Null equality works!");
}
// WebAssembly support - runs in browser!
result = toMap(users[0]);
print("User data:", result);With WebAssembly support, QuanLang now executes at near-native speed in any modern web browser. No installation required - just compile to WASM and run!
Pre-built WebAssembly module ready for immediate browser use
Integrate QuanLang programs directly into your web applications
Experience QuanLang instantly in your browser. Write code, see tokens, explore the AST, and execute programs - all without any installation.

Write and edit QuanLang code with syntax highlighting
Visualize how your code is parsed and structured
Run your programs immediately and see the results
Enhanced null handling, native APIs for web requests and data manipulation, plus powerful type casting functions
Natural null equality checks with support for null == null and cross-type comparisons
Built-in functions for web requests and data manipulation: fetch(), toJson(), toMap()
Explicit type conversion functions: int(), float(), string(), bool() for precise data handling
A fast, efficient interpreted language designed for simplicity and performance
Built from scratch to demonstrate tokenization and parsing techniques
Direct AST evaluation for educational clarity and simplicity
Variables, functions, conditionals, arrays, floats, and type introspection
Simple syntax, powerful concepts
// Null comparisons work naturally
if (null == null) {
print("Null equality works!");
}
if (data == null) {
print("No data available");
}
// Native APIs for web and data
response = fetch("https://api.github.com/users/octocat");
userData = toJson(response);
userMap = toMap(userData);
// Type casting functions
age = int("25"); // 25
price = float("19.99"); // 19.99
message = string(age); // "25"
isValid = bool("true"); // true
print("User age:", age);
print("Price:", price);Up and running in under a minute
Or clone locally:
Everything you need to know