verbena 0.2.0

Scripting language



# Also test leading blank lines



fn succ(a)
	a+1
end

print(succ(2))

a=1
b=2

fn foo()
	outer a
	a*=10
	b*=10
end

foo()
assert a==10
assert b==2

x=1

fn loop1()
	for x: [20,21,22]
		print x
	end
end

loop1()
assert x==1

fn loop2()
	outer x
	for x: [20,21,22]
		print x
	end
end

loop2()
assert x==22

fn many(a)
	len(arguments)
end

assert many()==0
assert many(1)==1
assert many(1,2)==2

a=1
b=1
c=1

fn interspersed_blank_lines()

	outer a

	outer b

	a+=1
	b+=1
	c+=1
end

interspersed_blank_lines()
assert a==2
assert b==2
assert c==1

fn two(a,b)
	if a==null
		a='o'
	end
	if b==null
		b='o'
	end
	a+b
end

assert two('a','b')=='ab'
assert two('a')=='ao'