qrscript/README.md
Tony Bark 6501b72973 Renamed to QR Script
- Split into three projects: Library, Console, and Tests
- Library compiles as QRScript.Interpreter to avoid conflicts
2025-05-07 15:22:16 -04:00

75 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 💾 QR Script
QR Script is a human-readable esoteric programming language that is designed to fit into a 57x57 QR code (~1,187 characters). With the initial interpreter scaffold together using GPT, it is written C# with the interpreter based on Dynamic Expresso.
## 🎛️ Features
- [x] Parser
- [x] CLI tool
- [x] Compiler
- [x] QR Code
- [x] Base64
## 🧾 Program Structure
Each line is a command.
```plaintext
verb subject object [modifier]
```
### ⌨️ Commands
| Verb | Function | Example |
| ------ | ------------------- | --------------------- |
| `say` | print to stdout | `say hello world` |
| `set` | assign value | `set x 42` |
| `add` | arithmetic add | `add x 1` |
| `sub` | arithmetic subtract | `sub x 3` |
| `mul` | multiply | `mul x 2` |
| `div` | divide | `div x 10` |
| `if` | conditional | `if x > 10 goto @end` |
| `goto` | jump to label | `goto @start` |
| `def` | define function | `def square x` |
| `ret` | return from func | `ret` |
| `call` | call function | `call square 3` |
| `inp` | input from user | `inp name` |
| `cmp` | compare values | `cmp x y` |
| `mod` | modulo | `mod x 5` |
| `end` | stop execution | `end` |
## 🧩 Tech Stack
- .NET 8.0
- Dynamic Expresso for interpreter
- CILx for command line
- QRCoder for renderer
## 🗓️ Update Cycle
| Type | Frequency | Notes |
| ------------ | ---------------- | ---------------------------------------- |
| Minor Update | Every 36 months | Small enhancements, non-breaking changes |
| Patch Update | As needed | Bug fixes, security updates |
| Major Update | As needed | Framework upgrades, major refactors |
- Reserve months: June (Mid-Year Chill) & December (End-Year Freeze)
## 🛡️ Status
- [x] Active Support
- [ ] Limited Support (Security patches only)
- [ ] Maintenance Mode (Dependency-only updates)
- [ ] Archived (No active work planned)
## 🎮 Relaxation Practices
- 20% creative/recovery space built into development
- Mandatory cooldowns after major launches (minimum 1 week)
- Crisis Mode Activates if:
- Critical vulnerabilities
- Framework-breaking issues
## 🗒️ License
I license this project under the GPL v3 license - see [LICENSE](LICENSE) for details.