🚀 Introduction to RADS
Rapid Asynchronous Data Server Language
What is RADS?
RADS (Rapid Asynchronous Data Server) is a high-performance programming language designed for microservers, IoT devices, and high-speed data processing. It combines the raw performance of C with modern language features like async/await, built-in networking, and media processing.
Philosophy: The "VW Fusca" Approach
RADS follows the "VW Fusca" (Volkswagen Beetle) philosophy:
- Lightweight - Minimal dependencies, small binary sizes, runs on anything
- Fast - Near-C performance with optimized execution paths
- Reliable - Built to last decades with simple, maintainable code
Like the iconic Beetle, RADS is designed to be easy to understand, easy to fix, and built to work for generations.
Key Design Goals
Performance
Execution speeds that rival native C code
Simplicity
Clean syntax that's easy to learn and read
Power
Built-in async I/O, networking, media processing
Extensibility
Plugin system (RPM) for unlimited capabilities
Aesthetic
90s/2000s retro-futuristic vibes
Hello World
Every journey starts with a single line:
blast main() {
echo("Hello, RADS World! 🚀");
}
Why Choose RADS?
🚀 Built for Speed
RADS is compiled to efficient bytecode and runs on a VM written in C11. Performance characteristics:
- Startup time: < 10ms for bytecode
- Memory overhead: Minimal, close to C
- Execution speed: 2-5x slower than C, 10-50x faster than Python
- Binary size: Small (< 1MB for simple programs)
🌐 Async by Default
Non-blocking I/O is baked into the language. Keywords like async, await, and spawn are first-class citizens, making concurrent programming natural and intuitive.
🔌 Batteries Included
RADS comes with powerful built-in capabilities:
- HTTP Server/Client - Build web servers and APIs
- Web Engine - Execute JavaScript, parse HTML/CSS
- Media Processing - Audio (MP3, WAV, OGG, FLAC) and image (JPEG, PNG, GIF)
- File I/O - Stream processing for large files
- Plugin System - Extend with C plugins (RPM)
💎 Beautiful Syntax
RADS syntax is inspired by the best features of C, Python, and Rust, with unique keywords that reflect its retro-futuristic aesthetic:
blast- Function declaration (blast off!)turbo- Fast/optimized variableloop- While loopcruise- For loop (cruise through iterations)echo- Print to stdout
Perfect Use Cases
| Use Case | Why RADS? |
|---|---|
| Microservers | Lightweight HTTP servers for Raspberry Pi, embedded systems, IoT devices |
| High-Speed APIs | Blazing-fast REST APIs with async/await and JSON support |
| Game Servers | Low-latency multiplayer backends with real-time communication |
| System Tools | CLI utilities, automation scripts, system administration |
| Data Processing | Parse, transform, and analyze data at turbo speed |
| Web Automation | Execute JavaScript, parse HTML/CSS, automate web tasks |
Getting Started
Ready to dive in? Here's how to get RADS running on your system:
Installation
Install RADS with a single command:
curl -fsSL https://raw.githubusercontent.com/zarigata/rads/main/install.sh | bash
User Install (no root):
USE_SUDO=no RADS_PREFIX=$HOME/.local curl -fsSL https://raw.githubusercontent.com/zarigata/rads/main/install.sh | bash