From 4ef2dbc49cd6dae1b8235dfd13dcd298c8aa3bfe Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 14 Apr 2018 02:02:13 -0400 Subject: - Initial R back-end implementation. --- .../luxc/lang/translation/r/primitive.jvm.lux | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 new-luxc/source/luxc/lang/translation/r/primitive.jvm.lux (limited to 'new-luxc/source/luxc/lang/translation/r/primitive.jvm.lux') diff --git a/new-luxc/source/luxc/lang/translation/r/primitive.jvm.lux b/new-luxc/source/luxc/lang/translation/r/primitive.jvm.lux new file mode 100644 index 000000000..2afe41421 --- /dev/null +++ b/new-luxc/source/luxc/lang/translation/r/primitive.jvm.lux @@ -0,0 +1,30 @@ +(.module: + lux + (lux [macro "meta/" Monad]) + (luxc (lang (host [r #+ Expression Statement]))) + [//] + (// [".T" runtime])) + +(def: #export translate-bool + (-> Bool (Meta Expression)) + (|>> r.bool meta/wrap)) + +(def: #export translate-int + (-> Int (Meta Expression)) + (|>> runtimeT.int meta/wrap)) + +(def: #export translate-nat + (-> Nat (Meta Expression)) + (|>> (:! Int) runtimeT.int meta/wrap)) + +(def: #export translate-deg + (-> Deg (Meta Expression)) + (|>> (:! Int) runtimeT.int meta/wrap)) + +(def: #export translate-frac + (-> Frac (Meta Expression)) + (|>> r.float meta/wrap)) + +(def: #export translate-text + (-> Text (Meta Expression)) + (|>> r.string meta/wrap)) -- cgit v1.2.3