diff --git a/exercises/05/vslc/vsl_programs/ps3-simplify/function_call.vsl b/exercises/05/vslc/vsl_programs/ps3-simplify/function_call.vsl new file mode 100644 index 0000000..90370c7 --- /dev/null +++ b/exercises/05/vslc/vsl_programs/ps3-simplify/function_call.vsl @@ -0,0 +1,9 @@ +func add(a, b) begin + return a + b +end + +func main() +begin + print add(40, 2) + return 0 +end \ No newline at end of file diff --git a/exercises/05/vslc/vsl_programs/ps3-simplify/globals.vsl b/exercises/05/vslc/vsl_programs/ps3-simplify/globals.vsl new file mode 100644 index 0000000..cc4fd7e --- /dev/null +++ b/exercises/05/vslc/vsl_programs/ps3-simplify/globals.vsl @@ -0,0 +1,12 @@ +var global_var0, global_var1 + +func my_func(param0, param1) begin + var a + return 0 +end + +func main() begin + var a + print "a string" + return 0 +end \ No newline at end of file diff --git a/exercises/05/vslc/vsl_programs/ps3-simplify/shadow.vsl b/exercises/05/vslc/vsl_programs/ps3-simplify/shadow.vsl new file mode 100644 index 0000000..c2e882b --- /dev/null +++ b/exercises/05/vslc/vsl_programs/ps3-simplify/shadow.vsl @@ -0,0 +1,28 @@ +// Checking symbol shadowing + +var a + +func shadow() begin + var a, b + a := 1 + begin + var a + a := 2 + b := 40 + begin + var a + a := b + 2 + print a, b + end + print a + begin + var b + b := 38 + a := b + 3 + print a, b + end + print a + end + print b + return 0 +end \ No newline at end of file diff --git a/exercises/05/vslc/vsl_programs/ps4-symtab/lists.vsl b/exercises/05/vslc/vsl_programs/ps4-symtab/lists.vsl new file mode 100644 index 0000000..947fcaa --- /dev/null +++ b/exercises/05/vslc/vsl_programs/ps4-symtab/lists.vsl @@ -0,0 +1,18 @@ + +func my_func(a, b, c, d, e, f, g, h) begin + var i, j, k, l, m + + i := a + b + d + + if i = f then begin + print "hmmm" + end + return i +end + +func main() begin + var n, o, p, q, r, s, t, u, v, w + n := 5 + n += my_func(1, 2, 3, 5, 8, 13, 21, 34) + return 0 +end \ No newline at end of file diff --git a/exercises/05/vslc/vsl_programs/ps5-codegen1/function_call.vsl b/exercises/05/vslc/vsl_programs/ps5-codegen1/function_call.vsl index 90370c7..33b2a27 100644 --- a/exercises/05/vslc/vsl_programs/ps5-codegen1/function_call.vsl +++ b/exercises/05/vslc/vsl_programs/ps5-codegen1/function_call.vsl @@ -1,9 +1,9 @@ -func add(a, b) begin +func add(a, b, c) begin return a + b end func main() begin - print add(40, 2) + print add(40, 2, 4) return 0 end \ No newline at end of file diff --git a/exercises/05/vslc/vsl_programs/ps5-codegen1/lists.vsl b/exercises/05/vslc/vsl_programs/ps5-codegen1/lists.vsl new file mode 100644 index 0000000..947fcaa --- /dev/null +++ b/exercises/05/vslc/vsl_programs/ps5-codegen1/lists.vsl @@ -0,0 +1,18 @@ + +func my_func(a, b, c, d, e, f, g, h) begin + var i, j, k, l, m + + i := a + b + d + + if i = f then begin + print "hmmm" + end + return i +end + +func main() begin + var n, o, p, q, r, s, t, u, v, w + n := 5 + n += my_func(1, 2, 3, 5, 8, 13, 21, 34) + return 0 +end \ No newline at end of file