diff options
Diffstat (limited to 'stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux')
-rw-r--r-- | stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux b/stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux index dc643bcbc..86bf44c0f 100644 --- a/stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/translation/scheme/primitive.jvm.lux @@ -1,25 +1,19 @@ (.module: - [lux (#- i64)] + [lux (#- i64) + [host + ["_" scheme (#+ Expression)]]] [// [runtime (#+ Operation)] - [// (#+ State) - ["//." // ("#/." monad) - [/// - [host - ["_" scheme (#+ Expression)]]]]]]) + [// + ["//." // ("#/." monad)]]]) -(def: #export bit - (-> Bit (Operation Expression)) - (|>> _.bool /////wrap)) +(do-template [<name> <type> <code>] + [(def: #export <name> + (-> <type> (Operation Expression)) + (|>> <code> /////wrap))] -(def: #export i64 - (-> (I64 Any) (Operation Expression)) - (|>> .int _.int /////wrap)) - -(def: #export f64 - (-> Frac (Operation Expression)) - (|>> _.float /////wrap)) - -(def: #export text - (-> Text (Operation Expression)) - (|>> _.string /////wrap)) + [bit Bit _.bool] + [i64 Int _.int] + [f64 Frac _.float] + [text Text _.string] + ) |