From 9142fcff76eabaabe984760c211be1a0f31bcb55 Mon Sep 17 00:00:00 2001 From: krasimir Date: Sat, 13 Jun 2009 13:54:06 +0000 Subject: split the testsuite to different directories for compiler, runtime and libraries --- testsuite/runtime/paraphrase/City.gf | 26 +++++++++++++++++++++ testsuite/runtime/paraphrase/CityEng.gf | 16 +++++++++++++ testsuite/runtime/paraphrase/Nat.gf | 34 ++++++++++++++++++++++++++++ testsuite/runtime/paraphrase/lambda.gf | 17 ++++++++++++++ testsuite/runtime/paraphrase/lambda.gfs | 9 ++++++++ testsuite/runtime/paraphrase/lambda.gfs.gold | 12 ++++++++++ testsuite/runtime/paraphrase/test.gfs.gold | 7 ++++++ 7 files changed, 121 insertions(+) create mode 100644 testsuite/runtime/paraphrase/City.gf create mode 100644 testsuite/runtime/paraphrase/CityEng.gf create mode 100644 testsuite/runtime/paraphrase/Nat.gf create mode 100644 testsuite/runtime/paraphrase/lambda.gf create mode 100644 testsuite/runtime/paraphrase/lambda.gfs create mode 100644 testsuite/runtime/paraphrase/lambda.gfs.gold create mode 100644 testsuite/runtime/paraphrase/test.gfs.gold (limited to 'testsuite/runtime/paraphrase') diff --git a/testsuite/runtime/paraphrase/City.gf b/testsuite/runtime/paraphrase/City.gf new file mode 100644 index 000000000..2ea8a10ff --- /dev/null +++ b/testsuite/runtime/paraphrase/City.gf @@ -0,0 +1,26 @@ +abstract City = { + +cat S ; City ; Country ; Adj ; + +data + PredIn : City -> Country -> S ; +fun + PredAdj : City -> Adj -> S ; + Capital : Country -> City ; + CountryAdj : Adj -> Country ; +data + Stockholm, Helsinki : City ; + Sweden, Finland : Country ; + Swedish, Finnish : Adj ; + +def + PredAdj city x = PredIn city (CountryAdj x) ; + + Capital Finland = Helsinki ; + Capital Sweden = Stockholm ; + + CountryAdj Finnish = Finland ; + CountryAdj Swedish = Sweden ; + + +} diff --git a/testsuite/runtime/paraphrase/CityEng.gf b/testsuite/runtime/paraphrase/CityEng.gf new file mode 100644 index 000000000..39a0974c8 --- /dev/null +++ b/testsuite/runtime/paraphrase/CityEng.gf @@ -0,0 +1,16 @@ +concrete CityEng of City = { + +lincat S, City, Country, Adj = Str ; + +lin + PredIn ci co = ci ++ "is in" ++ co ; + PredAdj ci ad = ci ++ "is" ++ ad ; + Capital co = "the capital of" ++ co ; + CountryAdj ad = "the" ++ ad ++ "country" ; + Stockholm = "Stockholm" ; + Helsinki = "Helsinki" ; + Sweden = "Sweden" ; + Finland = "Finland" ; + Swedish = "Swedish" ; + Finnish = "Finnish" ; +} diff --git a/testsuite/runtime/paraphrase/Nat.gf b/testsuite/runtime/paraphrase/Nat.gf new file mode 100644 index 000000000..b55333472 --- /dev/null +++ b/testsuite/runtime/paraphrase/Nat.gf @@ -0,0 +1,34 @@ +abstract Nat = { + +cat Nat ; + +data + Zero : Nat ; + Succ : Nat -> Nat ; + +fun one : Nat ; +def one = Succ Zero ; + +fun plus : Nat -> Nat -> Nat ; +def plus x Zero = x ; +def plus x (Succ y) = Succ (plus x y) ; + +fun twice : Nat -> Nat ; +def twice x = plus x x ; + +fun times : Nat -> Nat -> Nat ; +def times x Zero = Zero ; +def times x (Succ y) = plus (times x y) x ; + +fun four : Nat ; +def four = twice (twice one) ; + +fun exp : Nat -> Nat ; +def exp Zero = one ; +def exp (Succ x) = twice (exp x) ; + +fun plus' : Nat -> Nat -> Nat ; +def plus' Zero = \y -> y ; +def plus' (Succ x) = \y -> Succ (plus x y) ; + +} diff --git a/testsuite/runtime/paraphrase/lambda.gf b/testsuite/runtime/paraphrase/lambda.gf new file mode 100644 index 000000000..3476866c9 --- /dev/null +++ b/testsuite/runtime/paraphrase/lambda.gf @@ -0,0 +1,17 @@ +abstract lambda = { + +fun f1 : Int -> Int ; +def f1 = (\x -> x) ; + +fun f2 : Int ; +def f2 = f1 1 ; + +cat D ; +data D1 : D ; + D2 : D ; + +fun d : D -> Int -> Int ; +def d D1 = \x -> x ; + d D2 = \x -> 2 ; + +} \ No newline at end of file diff --git a/testsuite/runtime/paraphrase/lambda.gfs b/testsuite/runtime/paraphrase/lambda.gfs new file mode 100644 index 000000000..5313751b5 --- /dev/null +++ b/testsuite/runtime/paraphrase/lambda.gfs @@ -0,0 +1,9 @@ +i testsuite/runtime/paraphrase/lambda.gf + +pt -compute f1 +pt -compute f2 + +pt -compute d D1 +pt -compute d D2 +pt -compute d D1 1 +pt -compute d D2 1 diff --git a/testsuite/runtime/paraphrase/lambda.gfs.gold b/testsuite/runtime/paraphrase/lambda.gfs.gold new file mode 100644 index 000000000..0d8f027d6 --- /dev/null +++ b/testsuite/runtime/paraphrase/lambda.gfs.gold @@ -0,0 +1,12 @@ +\v0 -> v0 + +1 + +\v0 -> v0 + +\v0 -> 2 + +1 + +2 + diff --git a/testsuite/runtime/paraphrase/test.gfs.gold b/testsuite/runtime/paraphrase/test.gfs.gold new file mode 100644 index 000000000..82b443d48 --- /dev/null +++ b/testsuite/runtime/paraphrase/test.gfs.gold @@ -0,0 +1,7 @@ +Succ (Succ Zero) + +Succ (Succ (Succ Zero)) + +Succ (Succ Zero) + +unknown variable two -- cgit v1.2.3