From 1703085b25fa82459e306737ae88ee6fb0ece910 Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Fri, 28 Jul 2017 11:54:40 +0200 Subject: Resolve #1: implement lists (tuples have been done earlier) --- examples/issue-1.sil | 11 ----------- examples/lists.sil | 11 +++++++++++ examples/tuples.sil | 11 +++++++++++ 3 files changed, 22 insertions(+), 11 deletions(-) delete mode 100644 examples/issue-1.sil create mode 100644 examples/lists.sil create mode 100644 examples/tuples.sil (limited to 'examples') diff --git a/examples/issue-1.sil b/examples/issue-1.sil deleted file mode 100644 index 28c6958..0000000 --- a/examples/issue-1.sil +++ /dev/null @@ -1,11 +0,0 @@ -Int fst((Int, Int) tup) { - return tup._1; -} - -(Int, Int) swap((Int, Int) tup) { - return (tup._2, tup._1); -} - -Int main() { - return fst(swap((1,10))); -} diff --git a/examples/lists.sil b/examples/lists.sil new file mode 100644 index 0000000..7242649 --- /dev/null +++ b/examples/lists.sil @@ -0,0 +1,11 @@ +[Int] append([Int] xs, [Int] ys) { + if (xs.nil) { + return ys; + } else { + return xs.hd : append(xs.tl, ys); + } +} + +[Int] main() { + return append([1,2,3], [4,5,6]); +} diff --git a/examples/tuples.sil b/examples/tuples.sil new file mode 100644 index 0000000..28c6958 --- /dev/null +++ b/examples/tuples.sil @@ -0,0 +1,11 @@ +Int fst((Int, Int) tup) { + return tup._1; +} + +(Int, Int) swap((Int, Int) tup) { + return (tup._2, tup._1); +} + +Int main() { + return fst(swap((1,10))); +} -- cgit v1.2.3