diff options
Diffstat (limited to 'new-luxc/source/luxc/lang/host')
-rw-r--r-- | new-luxc/source/luxc/lang/host/jvm.lux | 24 | ||||
-rw-r--r-- | new-luxc/source/luxc/lang/host/jvm/def.lux | 18 | ||||
-rw-r--r-- | new-luxc/source/luxc/lang/host/jvm/inst.lux | 11 | ||||
-rw-r--r-- | new-luxc/source/luxc/lang/host/jvm/type.lux | 4 |
4 files changed, 31 insertions, 26 deletions
diff --git a/new-luxc/source/luxc/lang/host/jvm.lux b/new-luxc/source/luxc/lang/host/jvm.lux index 7e5abd6d4..6f56f9e0e 100644 --- a/new-luxc/source/luxc/lang/host/jvm.lux +++ b/new-luxc/source/luxc/lang/host/jvm.lux @@ -5,17 +5,18 @@ ["p" parser]] [data [collection - [list ("list/" Functor<List>)]]] + [list ("list/." Functor<List>)]]] [macro - [code] + ["." code] ["s" syntax (#+ syntax:)]] [host (#+ import:)] [world - [blob (#+ Blob)]] - [language - [reference (#+ Register)] - [compiler - ["." translation]]]]) + [binary (#+ Binary)]] + [compiler + [default + [reference (#+ Register)] + [phase + ["." translation]]]]]) ## [Host] (import: org/objectweb/asm/MethodVisitor) @@ -86,7 +87,7 @@ #V1_7 #V1_8) -(type: #export ByteCode Blob) +(type: #export ByteCode Binary) (type: #export Definition [Text ByteCode]) @@ -101,8 +102,11 @@ (type: #export Operation (translation.Operation ..Anchor Inst Definition)) -(type: #export Compiler - (translation.Compiler ..Anchor Inst Definition)) +(type: #export Phase + (translation.Phase ..Anchor Inst Definition)) + +(type: #export Bundle + (translation.Bundle ..Anchor Inst Definition)) ## [Values] (syntax: (config: {type s.local-identifier} diff --git a/new-luxc/source/luxc/lang/host/jvm/def.lux b/new-luxc/source/luxc/lang/host/jvm/def.lux index 3d3f8d80d..f70543ff7 100644 --- a/new-luxc/source/luxc/lang/host/jvm/def.lux +++ b/new-luxc/source/luxc/lang/host/jvm/def.lux @@ -6,16 +6,16 @@ ["." product] [collection ["a" array] - [list ("list/" Functor<List>)]]] - [host (#+ do-to)] - [function]] + ["." list ("list/." Functor<List>)]]] + ["." host (#+ import: do-to)] + ["." function]] ["$" // ["$t" type]]) -(host.import: #long java/lang/Object) -(host.import: #long java/lang/String) +(import: #long java/lang/Object) +(import: #long java/lang/String) -(host.import: org/objectweb/asm/Opcodes +(import: org/objectweb/asm/Opcodes (#static ACC_PUBLIC int) (#static ACC_PROTECTED int) (#static ACC_PRIVATE int) @@ -42,15 +42,15 @@ (#static V1_8 int) ) -(host.import: org/objectweb/asm/FieldVisitor +(import: org/objectweb/asm/FieldVisitor (visitEnd [] void)) -(host.import: org/objectweb/asm/MethodVisitor +(import: org/objectweb/asm/MethodVisitor (visitCode [] void) (visitMaxs [int int] void) (visitEnd [] void)) -(host.import: org/objectweb/asm/ClassWriter +(import: org/objectweb/asm/ClassWriter (#static COMPUTE_MAXS int) (#static COMPUTE_FRAMES int) (new [int]) diff --git a/new-luxc/source/luxc/lang/host/jvm/inst.lux b/new-luxc/source/luxc/lang/host/jvm/inst.lux index 463861798..d63ca3795 100644 --- a/new-luxc/source/luxc/lang/host/jvm/inst.lux +++ b/new-luxc/source/luxc/lang/host/jvm/inst.lux @@ -9,14 +9,15 @@ [text format] [collection - ["." list ("list/" Functor<List>)]]] - [host (#+ import: do-to)] + ["." list ("list/." Functor<List>)]]] + ["." host (#+ import: do-to)] [macro ["." code] ["s" syntax (#+ syntax:)]] - [function] - [language - [compiler (#+ Operation)]]] + ["." function] + [compiler + [default + [phase (#+ Operation)]]]] ["." // (#+ Primitive Inst) ["." type]]) diff --git a/new-luxc/source/luxc/lang/host/jvm/type.lux b/new-luxc/source/luxc/lang/host/jvm/type.lux index f9a956b86..866ef1cef 100644 --- a/new-luxc/source/luxc/lang/host/jvm/type.lux +++ b/new-luxc/source/luxc/lang/host/jvm/type.lux @@ -4,8 +4,8 @@ ["." text format] [collection - [list ("list/" Functor<List>)]]]] - [//]) + ["." list ("list/." Functor<List>)]]]] + ["." //]) ## Types (do-template [<name> <primitive>] |