diff --git a/sample/.gitignore b/sample/.gitignore deleted file mode 100644 index ea8c4bf7..00000000 --- a/sample/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/target diff --git a/sample/J.java b/sample/J.java deleted file mode 100644 index 7ff53681..00000000 --- a/sample/J.java +++ /dev/null @@ -1,8 +0,0 @@ -public interface J { - public int getFoo(); - public int getBarJava(); - public boolean getBool(); - - public int add(int x, int y); - public int add(int x, int y, int z); -} diff --git a/sample/Main.fr b/sample/Main.fr deleted file mode 100644 index 58c77b16..00000000 --- a/sample/Main.fr +++ /dev/null @@ -1,40 +0,0 @@ -module Main where - -data IR = IR - { getFoo :: Int, getBar :: Int, getBool :: Bool - , add2 :: Int -> Int -> Int - , add3 :: Int -> Int -> Int -> Int - } - -data J = pure native J where - pure native new "extends" :: IR -> J - pure native getFoo :: J -> Int - pure native getBar getBarJava :: J -> Int - pure native getBool :: J -> Bool - pure native add2 add :: J -> Int -> Int -> Int - pure native add3 add :: J -> Int -> Int -> Int -> Int - --- an alternative way to create a new J -pure native newJ "extends" :: IR -> J - -main = do - let j = J.new $ IR - { getFoo = 123, getBar = 5, getBool = False - , add2 = \x y -> x + y - , add3 = \x y z -> x + y + z - } - println j.getFoo - println j.getBar - println j.getBool - println $ j.add2 3 4 - println $ j.add3 3 4 5 - let j = newJ $ IR - { getFoo = 15000, getBar = 80, getBool = True - , add2 = \x y -> x * y - , add3 = \x y z -> x * y * z - } - println j.getFoo - println j.getBar - println j.getBool - println $ j.add2 3 4 - println $ j.add3 3 4 5 diff --git a/sample/Makefile b/sample/Makefile deleted file mode 100644 index 9a2293b8..00000000 --- a/sample/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -all: build/Main.class - -clean: - $(RM) -r build - -run: build/Main.class - java -cp ../build:build Main - -.PHONY: all clean run - -build/Main.class: Main.fr build/J.class - mkdir -p build - java -cp ../build frege.compiler.Main -d build -ascii Main - -build/J.class: J.java - mkdir -p build - javac -d build J.java