From 35c0807799717cd720ab28b35851c1a01a67445d Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Tue, 7 Sep 2021 22:50:21 -0400 Subject: De-taggification | part 4 --- lux-jvm/source/luxc/lang/directive/jvm.lux | 58 ++++++++--------- lux-jvm/source/luxc/lang/host/jvm.lux | 12 ++-- lux-jvm/source/luxc/lang/host/jvm/def.lux | 30 ++++----- lux-jvm/source/luxc/lang/host/jvm/inst.lux | 34 +++++----- lux-jvm/source/luxc/lang/synthesis/variable.lux | 2 +- lux-jvm/source/luxc/lang/translation/jvm.lux | 44 ++++++------- lux-jvm/source/luxc/lang/translation/jvm/case.lux | 24 +++---- .../source/luxc/lang/translation/jvm/common.lux | 16 ++--- .../luxc/lang/translation/jvm/expression.lux | 18 ++--- .../source/luxc/lang/translation/jvm/extension.lux | 8 +-- .../luxc/lang/translation/jvm/extension/common.lux | 26 ++++---- .../luxc/lang/translation/jvm/extension/host.lux | 64 +++++++++--------- .../source/luxc/lang/translation/jvm/function.lux | 26 ++++---- lux-jvm/source/luxc/lang/translation/jvm/loop.lux | 14 ++-- .../source/luxc/lang/translation/jvm/primitive.lux | 14 ++-- .../source/luxc/lang/translation/jvm/program.lux | 4 +- .../source/luxc/lang/translation/jvm/reference.lux | 12 ++-- .../source/luxc/lang/translation/jvm/runtime.lux | 26 ++++---- .../source/luxc/lang/translation/jvm/structure.lux | 26 ++++---- lux-jvm/source/program.lux | 76 +++++++++++----------- lux-jvm/source/test/program.lux | 6 +- lux-jvm/test/test/luxc/lang/analysis/host.jvm.lux | 20 +++--- lux-jvm/test/test/luxc/lang/synthesis/loop.lux | 6 +- .../test/test/luxc/lang/synthesis/procedure.lux | 4 +- lux-jvm/test/test/luxc/lang/translation/jvm.lux | 8 +-- 25 files changed, 289 insertions(+), 289 deletions(-) (limited to 'lux-jvm') diff --git a/lux-jvm/source/luxc/lang/directive/jvm.lux b/lux-jvm/source/luxc/lang/directive/jvm.lux index 246e49761..b41e0b75f 100644 --- a/lux-jvm/source/luxc/lang/directive/jvm.lux +++ b/lux-jvm/source/luxc/lang/directive/jvm.lux @@ -1,72 +1,72 @@ (.module: [library [lux {"-" [Type static local]} - ["." ffi {"+" [Inheritance Privacy State import:]}] + ["[0]" ffi {"+" [Inheritance Privacy State import:]}] [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control [pipe {"+" [case>]}] - ["." try {"+" [Try]}] + ["[0]" try {"+" [Try]}] ["<>" parser - ["<.>" code {"+" [Parser]}] - ["<.>" text]]] + ["<[0]>" code {"+" [Parser]}] + ["<[0]>" text]]] [data [identity {"+" [Identity]}] [binary {"+" [Binary]}] - ["." product] + ["[0]" product] [text ["%" format {"+" [format]}]] [collection [array {"+" [Array]}] - ["." list ("#\." mix functor monoid)] - ["." dictionary {"+" [Dictionary]}] - ["." row {"+" [Row]} ("#\." functor mix)]]] + ["[0]" list ("[1]\[0]" mix functor monoid)] + ["[0]" dictionary {"+" [Dictionary]}] + ["[0]" row {"+" [Row]} ("[1]\[0]" functor mix)]]] [math [number - ["." nat]]] + ["[0]" nat]]] [target ["/" jvm [encoding - ["." name {"+" [External]}]] - ["#." type {"+" [Type Constraint]} + ["[0]" name {"+" [External]}]] + ["[1][0]" type {"+" [Type Constraint]} [category {"+" [Void Value Return Primitive Object Class Var Parameter]}] - ["." parser] - [".T" lux] - ["#/." signature] - ["#/." descriptor]]]] + ["[0]" parser] + ["[0]T" lux] + ["[1]/[0]" signature] + ["[1]/[0]" descriptor]]]] [tool [compiler - ["." phase] + ["[0]" phase] [language [lux - ["." analysis {"+" [Analysis]}] - ["." synthesis {"+" [Synthesis]}] - ["." generation] - ["." directive {"+" [Requirements]}] + ["[0]" analysis {"+" [Analysis]}] + ["[0]" synthesis {"+" [Synthesis]}] + ["[0]" generation] + ["[0]" directive {"+" [Requirements]}] [phase [analysis - [".A" scope] - [".A" type]] - ["." extension - ["." bundle] + ["[0]A" scope] + ["[0]A" type]] + ["[0]" extension + ["[0]" bundle] [analysis ["//A" jvm]] [directive - ["./" lux]]]]]] + ["[0]/" lux]]]]]] [meta [archive {"+" [Archive]}]]]]]] [/// [host - ["." jvm {"+" [Inst]} + ["[0]" jvm {"+" [Inst]} ["_" inst] - ["." def]]] + ["[0]" def]]] [translation [jvm [extension ["//G" host]]]]]) (import: org/objectweb/asm/Label - ["#::." + ["[1]::[0]" (new [])]) (def: (literal literal) diff --git a/lux-jvm/source/luxc/lang/host/jvm.lux b/lux-jvm/source/luxc/lang/host/jvm.lux index 206408ce0..a7eb07777 100644 --- a/lux-jvm/source/luxc/lang/host/jvm.lux +++ b/lux-jvm/source/luxc/lang/host/jvm.lux @@ -6,17 +6,17 @@ monad] [control ["<>" parser - ["<.>" code]]] + ["<[0]>" code]]] [data [binary {"+" [Binary]}] [collection - ["." list ("#\." monad)]]] + ["[0]" list ("[1]\[0]" monad)]]] [macro - ["." code] + ["[0]" code] [syntax {"+" [syntax:]}]] [target [jvm - ["." type {"+" [Type]} + ["[0]" type {"+" [Type]} [category {"+" [Class]}]]]] [tool [compiler @@ -24,7 +24,7 @@ [variable {"+" [Register]}]] [language [lux - ["." generation]]] + ["[0]" generation]]] [meta [archive {"+" [Archive]}]]]]]]) @@ -33,7 +33,7 @@ (import: org/objectweb/asm/ClassWriter) (import: org/objectweb/asm/Label - ["#::." + ["[1]::[0]" (new [])]) (type: .public Def diff --git a/lux-jvm/source/luxc/lang/host/jvm/def.lux b/lux-jvm/source/luxc/lang/host/jvm/def.lux index 3260e954c..36aed2d61 100644 --- a/lux-jvm/source/luxc/lang/host/jvm/def.lux +++ b/lux-jvm/source/luxc/lang/host/jvm/def.lux @@ -1,28 +1,28 @@ (.module: [library [lux {"-" [Type]} - ["." ffi {"+" [import: do_to]}] + ["[0]" ffi {"+" [import: do_to]}] [control - ["." function]] + ["[0]" function]] [data - ["." product] - ["." text + ["[0]" product] + ["[0]" text ["%" format {"+" [format]}]] [collection - ["." array {"+" [Array]}] - ["." list ("#@." functor)]]] + ["[0]" array {"+" [Array]}] + ["[0]" list ("[1]@[0]" functor)]]] [math [number ["i" int]]] [target [jvm [encoding - ["." name]] - ["." type {"+" [Type Constraint]} + ["[0]" name]] + ["[0]" type {"+" [Type Constraint]} [category {"+" [Class Value Method]}] - ["." signature] - ["." descriptor]]]]]] - ["." //]) + ["[0]" signature] + ["[0]" descriptor]]]]]] + ["[0]" //]) (def: signature (|>> type.signature signature.signature)) (def: descriptor (|>> type.descriptor descriptor.descriptor)) @@ -32,7 +32,7 @@ (import: java/lang/String) (import: org/objectweb/asm/Opcodes - ["#::." + ["[1]::[0]" ("static" ACC_PUBLIC int) ("static" ACC_PROTECTED int) ("static" ACC_PRIVATE int) @@ -59,17 +59,17 @@ ("static" V1_8 int)]) (import: org/objectweb/asm/FieldVisitor - ["#::." + ["[1]::[0]" (visitEnd [] void)]) (import: org/objectweb/asm/MethodVisitor - ["#::." + ["[1]::[0]" (visitCode [] void) (visitMaxs [int int] void) (visitEnd [] void)]) (import: org/objectweb/asm/ClassWriter - ["#::." + ["[1]::[0]" ("static" COMPUTE_MAXS int) ("static" COMPUTE_FRAMES int) (new [int]) diff --git a/lux-jvm/source/luxc/lang/host/jvm/inst.lux b/lux-jvm/source/luxc/lang/host/jvm/inst.lux index 9a622da03..2255774f8 100644 --- a/lux-jvm/source/luxc/lang/host/jvm/inst.lux +++ b/lux-jvm/source/luxc/lang/host/jvm/inst.lux @@ -1,23 +1,23 @@ (.module: [library [lux {"-" [Type int char try]} - ["." ffi {"+" [import: do_to]}] + ["[0]" ffi {"+" [import: do_to]}] [abstract [monad {"+" [do]}]] [control - ["." function] - ["." maybe] - ["." try] + ["[0]" function] + ["[0]" maybe] + ["[0]" try] ["p" parser ["s" code]]] [data - ["." product] + ["[0]" product] [collection - ["." list ("#@." functor)]]] + ["[0]" list ("[1]@[0]" functor)]]] [macro [syntax {"+" [syntax:]}] - ["." code] - ["." template]] + ["[0]" code] + ["[0]" template]] [math [number ["n" nat] @@ -25,16 +25,16 @@ [target [jvm [encoding - ["." name {"+" [External]}]] - ["." type {"+" [Type]} ("#@." equivalence) + ["[0]" name {"+" [External]}]] + ["[0]" type {"+" [Type]} ("[1]@[0]" equivalence) [category {"+" [Void Value Return Method Primitive Object Class Array Var Parameter]}] - ["." box] - ["." descriptor] - ["." reflection]]]] + ["[0]" box] + ["[0]" descriptor] + ["[0]" reflection]]]] [tool [compiler [phase {"+" [Operation]}]]]]] - ["." // {"+" [Inst]}]) + ["[0]" // {"+" [Inst]}]) (def: class_name (|>> type.descriptor descriptor.class_name name.read)) (def: descriptor (|>> type.descriptor descriptor.descriptor)) @@ -50,7 +50,7 @@ in)) (`` (import: org/objectweb/asm/Opcodes - ["#::." + ["[1]::[0]" ("static" NOP int) ... Conversion @@ -126,11 +126,11 @@ )) (import: org/objectweb/asm/Label - ["#::." + ["[1]::[0]" (new [])]) (import: org/objectweb/asm/MethodVisitor - ["#::." + ["[1]::[0]" (visitCode [] void) (visitMaxs [int int] void) (visitEnd [] void) diff --git a/lux-jvm/source/luxc/lang/synthesis/variable.lux b/lux-jvm/source/luxc/lang/synthesis/variable.lux index 73f1e031d..12594e154 100644 --- a/lux-jvm/source/luxc/lang/synthesis/variable.lux +++ b/lux-jvm/source/luxc/lang/synthesis/variable.lux @@ -6,7 +6,7 @@ ["s" set]))) (luxc (lang ["la" analysis] ["ls" synthesis] - [".L" variable {"+" [Variable]}]))) + ["[0]L" variable {"+" [Variable]}]))) (def: (bound-vars path) (-> ls.Path (List Variable)) diff --git a/lux-jvm/source/luxc/lang/translation/jvm.lux b/lux-jvm/source/luxc/lang/translation/jvm.lux index 3a2c38718..0dde7a2e7 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm.lux @@ -1,58 +1,58 @@ (.module: [library [lux {"-" [Module Definition]} - ["." ffi {"+" [import: do_to object]}] + ["[0]" ffi {"+" [import: do_to object]}] [abstract [monad {"+" [do]}]] [control pipe - ["." maybe] - ["." try {"+" [Try]}] - ["." exception {"+" [exception:]}] - ["." io {"+" [IO io]}] + ["[0]" maybe] + ["[0]" try {"+" [Try]}] + ["[0]" exception {"+" [exception:]}] + ["[0]" io {"+" [IO io]}] [concurrency - ["." atom {"+" [Atom atom]}]]] + ["[0]" atom {"+" [Atom atom]}]]] [data [binary {"+" [Binary]}] - ["." product] - ["." text ("#@." hash) + ["[0]" product] + ["[0]" text ("[1]@[0]" hash) ["%" format {"+" [format]}]] [collection - ["." array] - ["." dictionary {"+" [Dictionary]}]]] + ["[0]" array] + ["[0]" dictionary {"+" [Dictionary]}]]] [target [jvm - ["." loader {"+" [Library]}] - ["." type - ["." descriptor]]]] + ["[0]" loader {"+" [Library]}] + ["[0]" type + ["[0]" descriptor]]]] [tool [compiler [language [lux - ["." version] - ["." generation]]] + ["[0]" version] + ["[0]" generation]]] [meta [io {"+" [lux_context]}] [archive [descriptor {"+" [Module]}] - ["." artifact]]]]]]] + ["[0]" artifact]]]]]]] [/// [host - ["." jvm {"+" [Inst Definition Host State]} - ["." def] - ["." inst]]]] + ["[0]" jvm {"+" [Inst Definition Host State]} + ["[0]" def] + ["[0]" inst]]]] ) (import: java/lang/reflect/Field - ["#::." + ["[1]::[0]" (get ["?" java/lang/Object] "try" "?" java/lang/Object)]) (import: (java/lang/Class a) - ["#::." + ["[1]::[0]" (getField [java/lang/String] "try" java/lang/reflect/Field)]) (import: java/lang/Object - ["#::." + ["[1]::[0]" (getClass [] (java/lang/Class java/lang/Object))]) (import: java/lang/ClassLoader) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/case.lux b/lux-jvm/source/luxc/lang/translation/jvm/case.lux index b8ef09945..a6d0a725f 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/case.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/case.lux @@ -2,38 +2,38 @@ [library [lux {"-" [Type Label if let case]} [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control - ["." function] + ["[0]" function] ["ex" exception {"+" [exception:]}]] [data [collection - ["." list ("#@." mix)]]] + ["[0]" list ("[1]@[0]" mix)]]] [math [number ["n" nat]]] [target [jvm - ["." type {"+" [Type]} - ["." category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] - ["." descriptor {"+" [Descriptor]}] - ["." signature {"+" [Signature]}]]]] + ["[0]" type {"+" [Type]} + ["[0]" category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] + ["[0]" descriptor {"+" [Descriptor]}] + ["[0]" signature {"+" [Signature]}]]]] [tool [compiler - ["." phase ("operation@." monad)] + ["[0]" phase ("operation@[0]" monad)] [meta [archive {"+" [Archive]}]] [language [lux - ["." synthesis {"+" [Path Synthesis]}]]]]]]] + ["[0]" synthesis {"+" [Path Synthesis]}]]]]]]] [luxc [lang [host ["$" jvm {"+" [Label Inst Operation Phase Generator]} ["_" inst]]]]] - ["." // - ["." runtime] - ["." structure]]) + ["[0]" // + ["[0]" runtime] + ["[0]" structure]]) (def: (pop_altI stack_depth) (-> Nat Inst) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/common.lux b/lux-jvm/source/luxc/lang/translation/jvm/common.lux index 1430a3ea4..8db12bd7e 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/common.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/common.lux @@ -4,27 +4,27 @@ ... [abstract ... [monad {"+" [do]}]] ... [control - ... ["." try {"+" [Try]}] + ... ["[0]" try {"+" [Try]}] ... ["ex" exception {"+" [exception:]}] - ... ["." io]] + ... ["[0]" io]] ... [data ... [binary {"+" [Binary]}] - ... ["." text ("#/." hash) + ... ["[0]" text ("[1]/[0]" hash) ... format] ... [collection - ... ["." dictionary {"+" [Dictionary]}]]] - ... ["." macro] + ... ["[0]" dictionary {"+" [Dictionary]}]]] + ... ["[0]" macro] ... [host {"+" [import:]}] ... [tool ... [compiler ... [reference {"+" [Register]}] - ... ["." name] - ... ["." phase]]] + ... ["[0]" name] + ... ["[0]" phase]]] ]] ... [luxc ... [lang ... [host - ... ["." jvm + ... ["[0]" jvm ... [type]]]]] ) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/expression.lux b/lux-jvm/source/luxc/lang/translation/jvm/expression.lux index 0586646da..087ebfaff 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/expression.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/expression.lux @@ -5,21 +5,21 @@ [compiler [language [lux - ["." synthesis] + ["[0]" synthesis] [phase - ["." extension]]]]]]]] + ["[0]" extension]]]]]]]] [luxc [lang [host [jvm {"+" [Phase]}]]]] [// - ["." common] - ["." primitive] - ["." structure] - ["." reference] - ["." case] - ["." loop] - ["." function]]) + ["[0]" common] + ["[0]" primitive] + ["[0]" structure] + ["[0]" reference] + ["[0]" case] + ["[0]" loop] + ["[0]" function]]) (def: .public (translate archive synthesis) Phase diff --git a/lux-jvm/source/luxc/lang/translation/jvm/extension.lux b/lux-jvm/source/luxc/lang/translation/jvm/extension.lux index ce0a3991b..fff364f52 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/extension.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/extension.lux @@ -3,13 +3,13 @@ [lux "*" [data [collection - ["." dictionary]]]]] + ["[0]" dictionary]]]]] [//// [host [jvm {"+" [Bundle]}]]] - ["." / "_" - ["#." common] - ["#." host]]) + ["[0]" / "_" + ["[1][0]" common] + ["[1][0]" host]]) (def: .public bundle Bundle diff --git a/lux-jvm/source/luxc/lang/translation/jvm/extension/common.lux b/lux-jvm/source/luxc/lang/translation/jvm/extension/common.lux index 706c69c00..e3ac4141b 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/extension/common.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/extension/common.lux @@ -3,43 +3,43 @@ [lux {"-" [Type Label]} [ffi {"+" [import:]}] [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control - ["." try] + ["[0]" try] ["<>" parser ["" synthesis {"+" [Parser]}]]] [data - ["." product] + ["[0]" product] [collection - ["." list ("#@." monad)] - ["." dictionary]]] + ["[0]" list ("[1]@[0]" monad)] + ["[0]" dictionary]]] [math [number ["f" frac]]] [target [jvm - ["." type]]] + ["[0]" type]]] [tool [compiler - ["." phase] + ["[0]" phase] [meta [archive {"+" [Archive]}]] [language [lux - ["." synthesis {"+" [Synthesis %synthesis]}] + ["[0]" synthesis {"+" [Synthesis %synthesis]}] [phase [generation [extension {"+" [Nullary Unary Binary Trinary Variadic nullary unary binary trinary variadic]}]] - ["." extension - ["." bundle]]]]]]]]] + ["[0]" extension + ["[0]" bundle]]]]]]]]] [luxc [lang [host ["$" jvm {"+" [Label Inst Def Handler Bundle Operation Phase]} ["_" inst]]]]] - ["." /// - ["." runtime]]) + ["[0]" /// + ["[0]" runtime]]) (def: .public (custom [parser handler]) (All (_ s) @@ -55,7 +55,7 @@ (phase.except extension.invalid_syntax [extension_name %synthesis input])))) (import: java/lang/Double - ["#::." + ["[1]::[0]" ("static" MIN_VALUE java/lang/Double) ("static" MAX_VALUE java/lang/Double)]) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux b/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux index 802d13d3f..4539ea17e 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux @@ -3,56 +3,56 @@ [lux {"-" [Type Label primitive int char type]} [ffi {"+" [import:]}] [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control - ["." maybe ("#\." functor)] - ["." exception {"+" [exception:]}] - ["." function] - ["<>" parser ("#\." monad) - ["<.>" text] - ["<.>" synthesis {"+" [Parser]}]]] + ["[0]" maybe ("[1]\[0]" functor)] + ["[0]" exception {"+" [exception:]}] + ["[0]" function] + ["<>" parser ("[1]\[0]" monad) + ["<[0]>" text] + ["<[0]>" synthesis {"+" [Parser]}]]] [data - ["." product] - ["." text ("#\." equivalence) + ["[0]" product] + ["[0]" text ("[1]\[0]" equivalence) ["%" format {"+" [format]}]] [collection - ["." list ("#\." monad mix)] - ["." dictionary {"+" [Dictionary]}] - ["." set]]] + ["[0]" list ("[1]\[0]" monad mix)] + ["[0]" dictionary {"+" [Dictionary]}] + ["[0]" set]]] [macro - ["." template]] + ["[0]" template]] [math [number ["n" nat]]] [target [jvm - ["." type {"+" [Type Typed Argument]} - ["." category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] - ["." box] - ["." reflection] - ["." signature] - ["." descriptor] - ["." parser]]]] + ["[0]" type {"+" [Type Typed Argument]} + ["[0]" category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] + ["[0]" box] + ["[0]" reflection] + ["[0]" signature] + ["[0]" descriptor] + ["[0]" parser]]]] [tool [compiler - ["." phase ("#\." monad)] + ["[0]" phase ("[1]\[0]" monad)] [reference {"+" []} - ["." variable {"+" [Variable Register]}]] + ["[0]" variable {"+" [Variable Register]}]] [meta [archive {"+" [Archive]}]] [language [lux [analysis {"+" [Environment]}] - ["." synthesis {"+" [Synthesis Path %synthesis]}] - ["." generation] + ["[0]" synthesis {"+" [Synthesis Path %synthesis]}] + ["[0]" generation] [phase [generation [extension {"+" [Nullary Unary Binary nullary unary binary]}]] [analysis - [".A" reference]] - ["." extension - ["." bundle] + ["[0]A" reference]] + ["[0]" extension + ["[0]" bundle] [analysis ["/" jvm]]]]]]]]]] [luxc @@ -60,12 +60,12 @@ [host ["$" jvm {"+" [Label Inst Def Handler Bundle Operation Phase]} ["_" inst] - ["_." def]]]]] - ["." // "_" + ["_[0]" def]]]]] + ["[0]" // "_" [common {"+" [custom]}] - ["/#" // - ["#." reference] - ["#." function]]]) + ["/[1]" // + ["[1][0]" reference] + ["[1][0]" function]]]) (template [ ] [(def: .public diff --git a/lux-jvm/source/luxc/lang/translation/jvm/function.lux b/lux-jvm/source/luxc/lang/translation/jvm/function.lux index 9cd5efdfb..2a202fbcd 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/function.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/function.lux @@ -2,47 +2,47 @@ [library [lux {"-" [Type Label function]} [abstract - ["." monad {"+" [do]}] - ["." enum]] + ["[0]" monad {"+" [do]}] + ["[0]" enum]] [control [pipe {"+" [when> new>]}] - ["." function]] + ["[0]" function]] [data - ["." product] + ["[0]" product] [text ["%" format {"+" [format]}]] [collection - ["." list ("#@." functor monoid)]]] + ["[0]" list ("[1]@[0]" functor monoid)]]] [math [number ["n" nat] ["i" int]]] [target [jvm - ["." type {"+" [Type]} - ["." category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}]]]] + ["[0]" type {"+" [Type]} + ["[0]" category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}]]]] [tool [compiler [arity {"+" [Arity]}] - ["." phase] + ["[0]" phase] [reference [variable {"+" [Register]}]] [language [lux [analysis {"+" [Environment]}] [synthesis {"+" [Synthesis Abstraction Apply]}] - ["." generation {"+" [Context]}]]] + ["[0]" generation {"+" [Context]}]]] [meta [archive {"+" [Archive]}]]]]]] [luxc [lang [host ["$" jvm {"+" [Label Inst Def Operation Phase Generator]} - ["." def] + ["[0]" def] ["_" inst]]]]] - ["." // - ["#." runtime] - ["." reference]]) + ["[0]" // + ["[1][0]" runtime] + ["[0]" reference]]) (def: arity_field Text "arity") diff --git a/lux-jvm/source/luxc/lang/translation/jvm/loop.lux b/lux-jvm/source/luxc/lang/translation/jvm/loop.lux index 1583cbed3..7d037280d 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/loop.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/loop.lux @@ -2,30 +2,30 @@ [library [lux "*" [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control - ["." function]] + ["[0]" function]] [data [collection - ["." list ("#@." functor monoid)]]] + ["[0]" list ("[1]@[0]" functor monoid)]]] [math [number ["n" nat]]] [tool [compiler - ["." phase] + ["[0]" phase] [reference [variable {"+" [Register]}]] [language [lux - ["." synthesis {"+" [Synthesis]}] - ["." generation]]]]]]] + ["[0]" synthesis {"+" [Synthesis]}] + ["[0]" generation]]]]]]] [luxc [lang [host [jvm {"+" [Inst Operation Phase Generator]} ["_" inst]]]]] - ["." //]) + ["[0]" //]) (def: (invariant? expected actual) (-> Register Synthesis Bit) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/primitive.lux b/lux-jvm/source/luxc/lang/translation/jvm/primitive.lux index 1b1c0dd3b..1e93db481 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/primitive.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/primitive.lux @@ -1,20 +1,20 @@ (.module: [library [lux {"-" [i64]} - ["." ffi {"+" [import:]}] + ["[0]" ffi {"+" [import:]}] [math [number ["i" int]]] [target [jvm - ["." type]]] + ["[0]" type]]] [tool [compiler - [phase ("operation@." monad)]]]]] + [phase ("operation@[0]" monad)]]]]] [luxc [lang [host - ["." jvm {"+" [Inst Operation]} + ["[0]" jvm {"+" [Inst Operation]} ["_" inst]]]]]) (def: .public bit @@ -24,12 +24,12 @@ (operation@in (_.GETSTATIC Boolean (if value "TRUE" "FALSE") Boolean))))) (import: java/lang/Byte - ["#::." + ["[1]::[0]" ("static" MAX_VALUE byte) ("static" MIN_VALUE byte)]) (import: java/lang/Short - ["#::." + ["[1]::[0]" ("static" MAX_VALUE short) ("static" MIN_VALUE short)]) @@ -67,7 +67,7 @@ (operation@in (|>> constantI (_.wrap type.long)))))) (import: java/lang/Double - ["#::." + ["[1]::[0]" ("static" doubleToRawLongBits "manual" [double] int)]) (def: d0-bits diff --git a/lux-jvm/source/luxc/lang/translation/jvm/program.lux b/lux-jvm/source/luxc/lang/translation/jvm/program.lux index e12e3b0e7..1db9028d1 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/program.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/program.lux @@ -20,8 +20,8 @@ ["$d" def] ["$i" inst]]] [translation - ["." jvm - ["." runtime]]]]]) + ["[0]" jvm + ["[0]" runtime]]]]]) (def: ^Object ($t.class "java.lang.Object" (list))) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/reference.lux b/lux-jvm/source/luxc/lang/translation/jvm/reference.lux index 204fddfa8..9b0feeb78 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/reference.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/reference.lux @@ -8,24 +8,24 @@ ["%" format {"+" [format]}]]] [target [jvm - ["." type]]] + ["[0]" type]]] [tool [compiler [reference - ["." variable {"+" [Register Variable]}]] - ["." phase ("operation@." monad)] + ["[0]" variable {"+" [Register Variable]}]] + ["[0]" phase ("operation@[0]" monad)] [meta [archive {"+" [Archive]}]] [language [lux - ["." generation]]]]]]] + ["[0]" generation]]]]]]] [luxc [lang [host [jvm {"+" [Inst Operation]} ["_" inst]]]]] - ["." // - ["#." runtime]]) + ["[0]" // + ["[1][0]" runtime]]) (template [ ] [(def: .public diff --git a/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux b/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux index c351dd21c..8deac8430 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux @@ -3,41 +3,41 @@ [lux {"-" [Type Label try]} [abstract [monad {"+" [do]}] - ["." enum]] + ["[0]" enum]] [data [binary {"+" [Binary]}] - ["." product] + ["[0]" product] [text ["%" format {"+" [format]}]] [collection - ["." list ("#@." functor)] - ["." row]]] - ["." math + ["[0]" list ("[1]@[0]" functor)] + ["[0]" row]]] + ["[0]" math [number ["n" nat]]] [target [jvm - ["." type {"+" [Type]} - ["." category {"+" [Void Value' Value Return' Return Primitive Object Class Array Var Parameter Method]}] - ["." reflection]]]] + ["[0]" type {"+" [Type]} + ["[0]" category {"+" [Void Value' Value Return' Return Primitive Object Class Array Var Parameter Method]}] + ["[0]" reflection]]]] [tool [compiler [arity {"+" [Arity]}] - ["." phase] + ["[0]" phase] [language [lux - ["." synthesis] - ["." generation]]] + ["[0]" synthesis] + ["[0]" generation]]] [meta [archive {"+" [Output]} - ["." artifact {"+" [Registry]}]]]]]]] + ["[0]" artifact {"+" [Registry]}]]]]]]] [luxc [lang [host ["$" jvm {"+" [Label Inst Def Operation]} ["$d" def] ["_" inst]]]]] - ["." // {"+" [ByteCode]}]) + ["[0]" // {"+" [ByteCode]}]) (def: $Text (type.class "java.lang.String" (list))) (def: .public $Lefts type.int) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/structure.lux b/lux-jvm/source/luxc/lang/translation/jvm/structure.lux index a8c117f6e..2a688f4cc 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/structure.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/structure.lux @@ -1,29 +1,29 @@ (.module: [library [lux {"-" [Type]} - ["." ffi {"+" [import:]}] + ["[0]" ffi {"+" [import:]}] [abstract - ["." monad {"+" [do]}]] + ["[0]" monad {"+" [do]}]] [control - ["." exception {"+" [exception:]}]] + ["[0]" exception {"+" [exception:]}]] [data [text ["%" format {"+" [format]}]] [collection - ["." list]]] + ["[0]" list]]] [math [number ["n" nat] ["i" int]]] [target [jvm - ["." type {"+" [Type]} - ["." category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] - ["." descriptor {"+" [Descriptor]}] - ["." signature {"+" [Signature]}]]]] + ["[0]" type {"+" [Type]} + ["[0]" category {"+" [Void Value Return Primitive Object Class Array Var Parameter Method]}] + ["[0]" descriptor {"+" [Descriptor]}] + ["[0]" signature {"+" [Signature]}]]]] [tool [compiler - ["." phase] + ["[0]" phase] [meta [archive {"+" [Archive]}]] [language @@ -34,8 +34,8 @@ [host [jvm {"+" [Inst Operation Phase Generator]} ["_" inst]]]]] - ["." // - ["#." runtime]]) + ["[0]" // + ["[1][0]" runtime]]) (exception: .public (not_a_tuple {size Nat}) (exception.report @@ -63,12 +63,12 @@ membersI)))) (import: java/lang/Byte - ["#::." + ["[1]::[0]" ("static" MAX_VALUE byte) ("static" MIN_VALUE byte)]) (import: java/lang/Short - ["#::." + ["[1]::[0]" ("static" MAX_VALUE short) ("static" MIN_VALUE short)]) diff --git a/lux-jvm/source/program.lux b/lux-jvm/source/program.lux index 6a908d1b1..b2319af7e 100644 --- a/lux-jvm/source/program.lux +++ b/lux-jvm/source/program.lux @@ -3,89 +3,89 @@ [lux {"-" [Definition]} [program {"+" [program:]}] ["@" target] - ["." ffi {"+" [import:]}] + ["[0]" ffi {"+" [import:]}] [abstract [monad {"+" [do]}]] [control - ["." io {"+" [IO]}] - ["." try {"+" [Try]}] + ["[0]" io {"+" [IO]}] + ["[0]" try {"+" [Try]}] [concurrency - ["." async {"+" [Async]}]]] + ["[0]" async {"+" [Async]}]]] [data - ["." product] + ["[0]" product] [text ["%" format {"+" [format]}]] [collection [array {"+" [Array]}] - ["." dictionary]]] - ["." world "_" - ["." file] - ["#/." program]] + ["[0]" dictionary]]] + ["[0]" world "_" + ["[0]" file] + ["[1]/[0]" program]] [target - ["." jvm "_" + ["[0]" jvm "_" [bytecode {"+" [Bytecode]}] - ["#/." type - ["#/." box]]]] + ["[1]/[0]" type + ["[1]/[0]" box]]]] [tool [compiler [reference {"+" []}] - ["." phase] + ["[0]" phase] [default - ["." platform {"+" [Platform]}]] + ["[0]" platform {"+" [Platform]}]] [meta [archive {"+" [Archive]}] - ["." packager "_" - ["#" jvm]]] + ["[0]" packager "_" + ["[1]" jvm]]] [language [lux ["$" synthesis {"+" [Synthesis]}] - ["." generation] + ["[0]" generation] [analysis [macro {"+" [Expander]}]] [phase [extension {"+" [Phase Bundle Operation Handler Extender]} - ["." analysis "_" - ["#" jvm]] - ... ["." generation "_" - ... ["#" jvm]] - ... ["." directive "_" - ... ["#" jvm]] + ["[0]" analysis "_" + ["[1]" jvm]] + ... ["[0]" generation "_" + ... ["[1]" jvm]] + ... ["[0]" directive "_" + ... ["[1]" jvm]] ] [generation - ["." jvm "_" - ["#/." runtime] - ... ["#/." host] + ["[0]" jvm "_" + ["[1]/[0]" runtime] + ... ["[1]/[0]" host] ]]]]]]]]] [program ["/" compositor - ["/." cli] - ["/." static]]] + ["/[0]" cli] + ["/[0]" static]]] [luxc [lang [host ["_" jvm]] - ["." directive "_" - ["#" jvm]] + ["[0]" directive "_" + ["[1]" jvm]] [translation - ["." jvm - ["." runtime] - ["." expression] - ["." function] - ["#/." program] + ["[0]" jvm + ["[0]" runtime] + ["[0]" expression] + ["[0]" function] + ["[1]/[0]" program] ["translation" extension]]]]]) (import: java/lang/reflect/Method - ["#::." + ["[1]::[0]" (invoke [java/lang/Object [java/lang/Object]] "try" java/lang/Object)]) (import: java/lang/ClassLoader) (import: (java/lang/Class c) - ["#::." + ["[1]::[0]" (getMethod [java/lang/String [(java/lang/Class java/lang/Object)]] "try" java/lang/reflect/Method)]) (import: java/lang/Object - ["#::." + ["[1]::[0]" (getClass [] (java/lang/Class java/lang/Object))]) (def: _object_class diff --git a/lux-jvm/source/test/program.lux b/lux-jvm/source/test/program.lux index e8cf0df53..53463255a 100644 --- a/lux-jvm/source/test/program.lux +++ b/lux-jvm/source/test/program.lux @@ -2,13 +2,13 @@ [lux "*" ["_" test {"+" [Test]}] [control - ["." io] + ["[0]" io] [parser [cli {"+" [program:]}]]]] [spec - ["." compositor]] + ["[0]" compositor]] {1 - ["." /]}) + ["[0]" /]}) (program: args (<| io.io diff --git a/lux-jvm/test/test/luxc/lang/analysis/host.jvm.lux b/lux-jvm/test/test/luxc/lang/analysis/host.jvm.lux index e8a585408..ef12fcf25 100644 --- a/lux-jvm/test/test/luxc/lang/analysis/host.jvm.lux +++ b/lux-jvm/test/test/luxc/lang/analysis/host.jvm.lux @@ -3,33 +3,33 @@ [control pipe [monad {"+" [do]}] - ["." maybe]] + ["[0]" maybe]] [data ["e" error] - ["." product] + ["[0]" product] [text ("text/" Equivalence) format] [collection - ["." array] + ["[0]" array] [list ("list/" Mix)] ["dict" dictionary]]] [math ["r" random "r/" Monad]] - ["." type] + ["[0]" type] [macro {"+" [Monad]} - ["." code]] + ["[0]" code]] [compiler - ["." default - [".L" init] + ["[0]" default + ["[0]L" init] [phase [analysis - [".A" type]] + ["[0]A" type]] [extension [analysis - [".AE" host]]]]]] + ["[0]AE" host]]]]]] test] [/// - ["_." primitive]]) + ["_[0]" primitive]]) (template [ ] [(def: ( procedure params output-type) diff --git a/lux-jvm/test/test/luxc/lang/synthesis/loop.lux b/lux-jvm/test/test/luxc/lang/synthesis/loop.lux index 7c059ac2e..ad2a67deb 100644 --- a/lux-jvm/test/test/luxc/lang/synthesis/loop.lux +++ b/lux-jvm/test/test/luxc/lang/synthesis/loop.lux @@ -12,9 +12,9 @@ test) (luxc (lang ["la" analysis] ["ls" synthesis] - (synthesis [".S" expression] - [".S" loop]) - [".L" extension])) + (synthesis ["[0]S" expression] + ["[0]S" loop]) + ["[0]L" extension])) (// common)) (def: (does-recursion? arity exprS) diff --git a/lux-jvm/test/test/luxc/lang/synthesis/procedure.lux b/lux-jvm/test/test/luxc/lang/synthesis/procedure.lux index ccbb28320..1262f2252 100644 --- a/lux-jvm/test/test/luxc/lang/synthesis/procedure.lux +++ b/lux-jvm/test/test/luxc/lang/synthesis/procedure.lux @@ -10,8 +10,8 @@ test) (luxc (lang ["la" analysis] ["ls" synthesis] - (synthesis [".S" expression]) - [".L" extension])) + (synthesis ["[0]S" expression]) + ["[0]L" extension])) (// common)) (context: "Procedures" diff --git a/lux-jvm/test/test/luxc/lang/translation/jvm.lux b/lux-jvm/test/test/luxc/lang/translation/jvm.lux index 060081e13..95812e6ca 100644 --- a/lux-jvm/test/test/luxc/lang/translation/jvm.lux +++ b/lux-jvm/test/test/luxc/lang/translation/jvm.lux @@ -17,11 +17,11 @@ [host] test) (luxc [lang] - (lang [".L" host] + (lang ["[0]L" host] ["ls" synthesis] - (translation (jvm [".T" expression] - [".T" eval] - [".T" runtime])))) + (translation (jvm ["[0]T" expression] + ["[0]T" eval] + ["[0]T" runtime])))) (test/luxc common)) (context: "Conversions [Part 1]" -- cgit v1.2.3