🚀 G Language
Simple compiled programming language built with TypeScript
⚡ Bytecode VM • 🧠 Compiler • 🔍 LSP • 🎨 VS Code Extension
✨ Features
| Feature |
Support |
| ⚡ Bytecode Compiler |
✅ |
| 🧠 Virtual Machine |
✅ |
| 🔍 Lexer + Parser + AST |
✅ |
| 🔁 Functions |
✅ |
| 🔄 Loops |
✅ |
| 💻 REPL |
✅ |
| 🎨 VS Code Extension |
✅ |
| 💡 IntelliSense |
✅ |
| ❌ Error Diagnostics |
✅ |
📦 Installation
npm install -g @gandib/g
Check version:
g --version
🚀 Quick Start
hello.g
let x = 10
show x + 5
func hello
show "Hello from G"
end
call hello
Run:
g run hello.g
Output:
15
Hello from G
🖥 REPL
Start:
g
Example:
g > let x = 20
g > show x
20
Exit:
exit
📚 Syntax
Variables
let name = "G"
let age = 10
Output
show "Hello"
show age
Functions
func add a b
show a + b
end
call add 5 10
Loops
repeat 3
show "Loop"
end
🎨 VS Code Extension
Search:
G Language
Features
- 🎨 Syntax Highlighting
- 💡 IntelliSense
- 🔍 Hover Support
- ❌ Error Diagnostics
🏗 Compiler Architecture
Source Code
↓
Lexer
↓
Parser
↓
AST
↓
Compiler
↓
Bytecode
↓
VM
↓
Output
📁 Project Structure
g-language/
│
├── src/
│ ├── lexer.ts
│ ├── parser.ts
│ ├── compiler.ts
│ ├── vm.ts
│ └── output.ts
│
├── bin/
│ └── g.ts
│
├── examples/
│ └── hello.g
│
└── package.json
⚙️ Build From Source
git clone https://github.com/gandib/g
cd g
npm install
npx tsc
Run locally:
node dist/bin/g.js run hello.g
🛣 Roadmap
- 🐞 Debugger
- 🧠 Type System
- 🏗 Classes
- 📦 Modules
- 📥 Imports
📜 License
MIT
👨💻 Author
Gandib Dhari Roy
⭐ Support
If you like G Language:
⭐ Star the repository
🚀 Share the project
🧠 Build cool things with G