Syntax Lengkap Ax
- Hello World & Basic Print
fn main() {
println("hello, world");
println("this is Ax language");
}
- Variable Declaration (let)
fn main() {
let x = 10;
let y = 20;
let name = "Ax";
let result = x + y;
}
- Assignment
fn main() {
let counter = 0;
counter = 5;
counter = counter + 1;
}
- If Statement
fn main() {
let nilai = 85;
if nilai > 80 {
println("A");
}
if nilai > 70 {
println("B");
}
}
- While Loop
fn main() {
let i = 1;
while i <= 5 {
println(i);
i = i + 1;
}
}
- If-Else Statement
fn main() {
let nilai = 75;
if nilai >= 80 {
println("A");
} else {
println("B");
}
}
- For Loop
fn main() {
// for let init; condition; increment {
for let i = 0; i < 5; i = i + 1 {
println(i);
}
}
- Kombinasi Semua Fitur
fn main() {
let total = 0;
let i = 1;
while i <= 10 {
total = total + i;
i = i + 1;
}
println("Sum 1 to 10:");
println(total);
if total > 50 {
println("Total is greater than 50");
}
}
- Operasi Aritmatika
fn main() {
let a = 10;
let b = 3;
let tambah = a + b;
let kurang = a - b;
let kali = a * b;
let bagi = a / b;
println(tambah);
println(kurang);
println(kali);
println(bagi);
}
- Print String & Variable
fn main() {
let name = "Ax";
let version = 1;
println("Language:");
println(name);
println("Version:");
println(version);
}
- Nested If (dalam if ada if)
fn main() {
let x = 10;
let y = 20;
if x > 5 {
println("x > 5");
if y > 15 {
println("y > 15");
}
}
}
- Loop dengan Counter
fn main() {
let counter = 0;
while counter < 3 {
println("Iteration:");
println(counter);
counter = counter + 1;
}
println("Done!");
}
Contoh Program Lengkap (factorial.ax)
fn main() {
let n = 5;
let result = 1;
let i = 1;
while i <= n {
result = result * i;
i = i + 1;
}
println("Factorial of 5 is:");
println(result);
}
Contoh Program Lain (fizzbuzz.ax)
fn main() {
let i = 1;
while i <= 15 {
if i > 15 {
println("done");
}
if i % 15 == 0 {
println("FizzBuzz");
} else {
if i % 3 == 0 {
println("Fizz");
} else {
if i % 5 == 0 {
println("Buzz");
} else {
println(i);
}
}
}
i = i + 1;
}
}
Catatan Penting
- Setiap statement harus diakhiri dengan ; (kecuali block { })
- Variable harus dideklarasi dengan let sebelum digunakan
- Function hanya fn main() {} untuk sekarang
- String pakai double quote "
- Comment support: // untuk single-line comment
- Operator yang support: +, -, *, /, %, >, <, >=, <=, ==
- Control flow: if, else, while, for
Test Program
# Buat file baru
cat > factorial.ax << 'EOF'
fn main() {
let n = 5;
let result = 1;
let i = 1;
while i <= n {
result = result * i;
i = i + 1;
}
println("Factorial of 5 is:");
println(result);
}
EOF
# Jalankan
./ax.sh factorial.axBahasa Ax sekarang sudah functional untuk basic programming! Fitur yang sudah diimplementasi:
✅ if-else statement ✅ for loop ✅ while loop ✅ comments (//) ✅ variable (let) ✅ arithmetic operations ✅ println
Bisa ditambah fitur lain seperti:
· else if statement · Function dengan parameter · Array · String type variables · Logical operators (&&, ||, !) · Break/continue statement · Type system
Mau nambah fitur apa?