Added default functions, isEmpty does not typecheck...
[cc1516.git] / examples / codeGen.spl
index 53ed358..ebede23 100644 (file)
@@ -1,8 +1,36 @@
+//f(x, y) {
+//    var ret = 0;
+//    if (x < y) {
+//        ret = x;
+//    }
+//    else {
+//        ret = y;
+//    }
+//    return ret;
+//}//
+
+//main() {
+//     Int x1 = 1;
+//    var x2 = 4;
+//    var x3 = f(x1, x2);
+//    print(x1);
+//    x1 = 5;
+//    return x3 + x1;
+//}
+
+isE(x) :: [a] -> Bool {
+    if (x == []) {
+        return True;
+    } else {
+        return False;
+    }
+}
+
 main() {
-    Int x1 = 3;
-    Char x2 = '\n';
-    Bool x3 = True;
-    (Int, Char) x4 = (4, '\n');
-    [Bool] x5 = True : False : True : True : []; 
-    return x5;
+    [Int] x1 = 1 : 2 : [];
+    [Int] x2 = 0 : x1;
+    [Int] x3 = [];
+    //Bool y1 = isEmpty(x2); //gives weird type error, not sure why
+    isEmpty(x2);
+    return;
 }