mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			615 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			615 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| import "lib/examplecompiler"
 | |
| foo = {}
 | |
| 
 | |
| 
 | |
| local def foo2(b : eg.number) : eg.number return 2 + b end
 | |
| 
 | |
| 
 | |
| assert(foo2(3) == 5)
 | |
| 
 | |
| def foo.bar(a : eg.number) : eg.number 
 | |
| 	return 1 + -2 * 3 + 1 + a - foo2(a) 
 | |
| end
 | |
| 
 | |
| assert(-6 == foo.bar(4))
 | |
| 
 | |
| local c = def(c : eg.number) : eg.number return 4 end
 | |
| 
 | |
| assert(4 == c(1))
 | |
| 
 | |
| def sign(a : eg.number) : eg.number
 | |
| 	if a < 0 then
 | |
| 		return -1
 | |
| 	else
 | |
| 		return 1
 | |
| 	end
 | |
| end
 | |
| 
 | |
| def usev(a : eg.number) : eg.number
 | |
| 	var b = 1
 | |
| 	return a + b
 | |
| end
 | |
| 
 | |
| def what(a : eg.number) : eg.number
 | |
| 	var c = usev
 | |
| 	return c(a)
 | |
| end
 | |
| 
 | |
| assert(usev(4) == 5)
 | |
| assert(sign(4) == 1)
 | |
| assert(sign(-3) == -1)
 | |
| assert(what(4) == 5) |