Skip to content

Commit a9a269e

Browse files
committed
[Minibasic] Add sample programs and syntax generator
1 parent 6ba6e1c commit a9a269e

22 files changed

+279
-0
lines changed

minibasic/programs/checkscopes.mba

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
var a : int
2+
let a = 42
3+
begin
4+
var a : int
5+
let a = 17
6+
print a
7+
end
8+
print a

minibasic/programs/count.mba

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
let x = 0
2+
for 42 do ' count up to 42
3+
begin
4+
let x = x + 1
5+
print x
6+
end

minibasic/programs/countodd.mba

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
let x = 0
2+
for 42 do ' count up to 42
3+
begin
4+
let x = x + 1
5+
if x % 2 then
6+
print x
7+
end

minibasic/programs/doublefor.mba

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
let a = 1
2+
for 10 do
3+
begin
4+
let b = 0
5+
for a do
6+
begin
7+
let a = 1000000
8+
let b = b + 1
9+
print a * 1000 + b
10+
end
11+
let a = 1
12+
end
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
var a : int
2+
var a : bool
3+
let a = 42
4+
print a

minibasic/programs/error.mba

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
let x = 0
2+
for 42 do 17 ' count up to 42
3+
let x = x + 1
4+
print x
5+
end

minibasic/programs/fib.mba

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
let b = 1
2+
print 1
3+
for 10 do
4+
begin
5+
let c = a + b
6+
print c
7+
let a = b
8+
let b = c
9+
end

minibasic/programs/gcd.mba

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
let a = 42174217
2+
let b = 17421742
3+
4+
for 100 do
5+
if a then
6+
if b then begin
7+
let x = 0
8+
for a - b do let x = 1
9+
if x then let a = a % b
10+
let x = 0
11+
for b - a do let x = 1
12+
if x then let b = b % a
13+
end
14+
print a + b

minibasic/programs/hello.mba

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
print 42

minibasic/programs/helloscopes.mba

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
var a : int
2+
let a = 42
3+
print a

0 commit comments

Comments
 (0)