1
2Rem
3foobar
4EndRem
5
6Rem
7	foobar!
8End Rem
9
10Rem
11End Rem
12
13SuperStrict
14
15Framework brl.blitz
16Import brl.standardio
17
18'Import "blah.bmx"
19'Import "blah/blah.bmx"
20'Include "blurg/blurg.bmx"
21
22Const ca:Long = $10000000 ' Hex
23Const cb:Int = %10101010 ' Binary
24Global ga:String = "blargh"
25Local a:Int = 124, b$ = "abcdef"
26?Not Debug
27Print(_name123(ga, a, 100.2))
28?
29
30Function _name123  : Float  (zorp:String, ll:Int = False, blah#, waffles% = 100)
31	Return 235.7804 ' Single-line comment
32End Function
33Function TestString:String()
34End Function
35Function TestByte:Byte()
36End Function
37
38Function hub(blah:String, ..
39				abc:Int = Pi)
40End Function
41Function Blar%()
42	Local aa !, ab @ ,ac @@, ad# ,ae$,af% ' Intentional mangling
43	Local ba:Double, bb :Byte, bc: Short,bd:Float,be: String,ff:Int = True
44End Function
45
46?Win32
47abc()
48?Linux
49abc()
50?
51
52Function abc()
53	Print "abc"	' I cannot find a way to parse these as function calls without messing something up
54	Print		' Anyhow, they're generally not used in this way
55	Goto Eww_Goto
56	#Eww_Goto
57End Function
58
59Type TBlarf Abstract
60End Type
61
62Type TFooBar
63End Type
64
65New MyClass.TestMethod()
66New(MyClass).TestMethod()
67Local myinst:MyClass = New MyClass
68myinst.TestMethod()
69
70Type MyClass Extends TFooBar
71
72	Field m_foo:MyClass
73	Field m_bar:MyClass
74
75	Rem
76		abc
77		def
78	End Rem
79	Method New()
80		Rem
81			abcdef
82		endrem
83	End Method
84
85	Method TestMethod() ' foobar
86		m_foo = Self
87		m_bar = MyClass(m_foo)
88		m_foo.m_bar.m_foo.m_bar.Yell()
89	End Method
90
91	Method Yell()
92		Print("huzzah!")
93	End Method
94
95	Function Wakka$(foo:String)
96		Return foo + "bar"
97	End Function
98
99End Type
100
101Extern "c"
102	Function vesper!(a:Int) = "vesper@4"
103	Function bubbles@@(a%)
104End Extern
105
106Print("blah " + ..
107	"blah " + ..
108	"blah.")
109
110Try
111	Throw("blar!")
112Catch exception:String
113	Print("Caught: " + exception)
114End Try
115
116For Local i:Int = 0 To 10 Step 1
117	Print("Index: " + i)
118Next
119Local array:String[] = ["foo", "bar", "11", "22", "33"]
120For Local value:String = EachIn array
121	Print("Value: " + value)
122Next
123
124Local foobar:Int = Not (1 Or (2 And (4 Shl 5 Shr 6)) Sar 7) Mod (8+2)
125Local az:Int = 1234567890
126az : + 1
127az: - 2
128az :* 3
129az:/ 4
130az:& 5
131az:| 6
132az: ~ 7
133az : Shl 8
134az:  Shr 9
135az :Sar 10
136az:Mod 11
137az = ((10-5+2/4*2)>(((8^2)) < 2)) & 12|2
138
139Function flub(fah Ptr, eah:Int Ptr, blu@@ Ptr)
140End Function
141Function Foob:Int Ptr(blar:Byte Ptr, Saffon@Ptr, blaus#Ptr)
142End Function
143Function zauus@Ptr()
144End Function
145
146