diff options
Diffstat (limited to 'lux-jvm')
-rw-r--r-- | lux-jvm/source/luxc/lang/directive/jvm.lux | 126 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/host/jvm.lux | 18 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm.lux | 8 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm/common.lux | 8 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux | 76 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm/reference.lux | 4 | ||||
-rw-r--r-- | lux-jvm/source/luxc/lang/translation/jvm/structure.lux | 2 | ||||
-rw-r--r-- | lux-jvm/source/program.lux | 4 |
8 files changed, 123 insertions, 123 deletions
diff --git a/lux-jvm/source/luxc/lang/directive/jvm.lux b/lux-jvm/source/luxc/lang/directive/jvm.lux index 36a498cda..272faea29 100644 --- a/lux-jvm/source/luxc/lang/directive/jvm.lux +++ b/lux-jvm/source/luxc/lang/directive/jvm.lux @@ -18,9 +18,9 @@ ["%" format {"+" [format]}]] [collection [array {"+" [Array]}] - ["[0]" list ("[1]\[0]" mix functor monoid)] + ["[0]" list ("[1]#[0]" mix functor monoid)] ["[0]" dictionary {"+" [Dictionary]}] - ["[0]" row {"+" [Row]} ("[1]\[0]" functor mix)]]] + ["[0]" row {"+" [Row]} ("[1]#[0]" functor mix)]]] [math [number ["[0]" nat]]] @@ -442,7 +442,7 @@ {/.#TABLESWITCH min max default labels} (let [[mapping default] (..relabel [mapping default]) - [mapping labels] (list\mix (function (_ input [mapping output]) + [mapping labels] (list#mix (function (_ input [mapping output]) (let [[mapping input] (..relabel [mapping input])] [mapping (list& input output)])) [mapping (list)] labels)] @@ -450,7 +450,7 @@ {/.#LOOKUPSWITCH default keys+labels} (let [[mapping default] (..relabel [mapping default]) - [mapping keys+labels] (list\mix (function (_ [expected input] [mapping output]) + [mapping keys+labels] (list#mix (function (_ [expected input] [mapping output]) (let [[mapping input] (..relabel [mapping input])] [mapping (list& [expected input] output)])) [mapping (list)] keys+labels)] @@ -515,7 +515,7 @@ (def: (relabel_bytecode [mapping bytecode]) (Re_labeler (/.Bytecode Inst)) - (row\mix (function (_ input [mapping output]) + (row#mix (function (_ input [mapping output]) (let [[mapping input'] (..relabel_instruction [mapping input])] [mapping (row.suffix input' output)])) [mapping (row.row)] @@ -530,7 +530,7 @@ (|>> [..fresh] ..relabel_bytecode product.right - (row\each ..instruction) + (row#each ..instruction) row.list _.fuse)) @@ -553,7 +553,7 @@ (def: (true_handler extender pseudo) (-> jvm.Extender Any jvm.Handler) (function (_ extension_name phase archive inputs) - (\ phase.monad each + (# phase.monad each (|>> (:as (/.Bytecode Inst /.Label)) ..bytecode) ((extender pseudo) extension_name phase archive inputs)))) @@ -847,20 +847,20 @@ _.NULL {.#Right primitiveT} - (cond (or (\ /type.equivalence = /type.boolean primitiveT) - (\ /type.equivalence = /type.byte primitiveT) - (\ /type.equivalence = /type.short primitiveT) - (\ /type.equivalence = /type.int primitiveT) - (\ /type.equivalence = /type.char primitiveT)) + (cond (or (# /type.equivalence = /type.boolean primitiveT) + (# /type.equivalence = /type.byte primitiveT) + (# /type.equivalence = /type.short primitiveT) + (# /type.equivalence = /type.int primitiveT) + (# /type.equivalence = /type.char primitiveT)) _.ICONST_0 - (\ /type.equivalence = /type.long primitiveT) + (# /type.equivalence = /type.long primitiveT) _.LCONST_0 - (\ /type.equivalence = /type.float primitiveT) + (# /type.equivalence = /type.float primitiveT) _.FCONST_0 - ... (\ /type.equivalence = /type.double primitiveT) + ... (# /type.equivalence = /type.double primitiveT) _.DCONST_0))) (def: (header_return returnT) @@ -876,23 +876,23 @@ _.ARETURN) {.#Right primitiveT} - (cond (or (\ /type.equivalence = /type.boolean primitiveT) - (\ /type.equivalence = /type.byte primitiveT) - (\ /type.equivalence = /type.short primitiveT) - (\ /type.equivalence = /type.int primitiveT) - (\ /type.equivalence = /type.char primitiveT)) + (cond (or (# /type.equivalence = /type.boolean primitiveT) + (# /type.equivalence = /type.byte primitiveT) + (# /type.equivalence = /type.short primitiveT) + (# /type.equivalence = /type.int primitiveT) + (# /type.equivalence = /type.char primitiveT)) (|>> (header_value primitiveT) _.IRETURN) - (\ /type.equivalence = /type.long primitiveT) + (# /type.equivalence = /type.long primitiveT) (|>> (header_value primitiveT) _.LRETURN) - (\ /type.equivalence = /type.float primitiveT) + (# /type.equivalence = /type.float primitiveT) (|>> (header_value primitiveT) _.FRETURN) - ... (\ /type.equivalence = /type.double primitiveT) + ... (# /type.equivalence = /type.double primitiveT) (|>> (header_value primitiveT) _.DRETURN))))) @@ -906,7 +906,7 @@ (def.abstract_method (..visibility privacy) jvm.noneM name - (/type.method [variables (list\each product.right arguments) return exceptions])))) + (/type.method [variables (list#each product.right arguments) return exceptions])))) (def: (method_header super_class method) (-> (Type Class) (Method Code) jvm.Def) @@ -916,10 +916,10 @@ body]} (let [[super_name super_vars] (parser.read_class super_class) init_constructor_arguments (|> constructor_arguments - (list\each (|>> product.left ..header_value)) + (list#each (|>> product.left ..header_value)) _.fuse) super_constructorT (/type.method [(list) - (list\each product.left constructor_arguments) + (list#each product.left constructor_arguments) /type.void (list)])] (def.method (..visibility privacy) @@ -927,7 +927,7 @@ jvm.strictM jvm.noneM) ..constructor_name - (/type.method [variables (list\each product.right arguments) /type.void exceptions]) + (/type.method [variables (list#each product.right arguments) /type.void exceptions]) (|>> (_.ALOAD 0) init_constructor_arguments (_.INVOKESPECIAL super_class ..constructor_name super_constructorT) @@ -941,7 +941,7 @@ jvm.strictM jvm.noneM) name - (/type.method [variables (list\each product.right arguments) return exceptions]) + (/type.method [variables (list#each product.right arguments) return exceptions]) (..header_return return)) {#Virtual [name privacy final? strict_floating_point? annotations variables @@ -956,7 +956,7 @@ jvm.finalM jvm.noneM))) name - (/type.method [variables (list\each product.right arguments) return exceptions]) + (/type.method [variables (list#each product.right arguments) return exceptions]) (..header_return return)) {#Static [name privacy strict_floating_point? annotations variables @@ -968,7 +968,7 @@ jvm.strictM jvm.noneM))) name - (/type.method [variables (list\each product.right arguments) return exceptions]) + (/type.method [variables (list#each product.right arguments) return exceptions]) (..header_return return)) {#Abstract method} @@ -988,10 +988,10 @@ (List Field) (List (Method Code)) [External Binary]) - (let [constraints (list\each ..constraint type_variables) - field_definitions (list\each ..field_header fields) - method_definitions (list\each (..method_header super_class) methods) - definitions (def.fuse (list\composite field_definitions + (let [constraints (list#each ..constraint type_variables) + field_definitions (list#each ..field_header fields) + method_definitions (list#each (..method_header super_class) methods) + definitions (def.fuse (list#composite field_definitions method_definitions))] [class_name (case inheritance @@ -1028,14 +1028,14 @@ selfT (//A.reflection_type mapping (/type.class class_name class_tvars)) arguments' (monad.each ! (function (_ [name type]) - (\ ! each (|>> [name]) + (# ! each (|>> [name]) (//A.boxed_reflection_type mapping type))) arguments) returnT (//A.boxed_reflection_return mapping /type.void) [_scope bodyA] (|> arguments' {.#Item [self selfT]} list.reversed - (list\mix scopeA.with_local (analyse archive bodyC)) + (list#mix scopeA.with_local (analyse archive bodyC)) (typeA.with_type returnT) analysis.with_scope)] (in [privacy strict_floating_point? annotations method_tvars exceptions @@ -1058,14 +1058,14 @@ selfT (//A.reflection_type mapping (/type.class class_name class_tvars)) arguments' (monad.each ! (function (_ [name type]) - (\ ! each (|>> [name]) + (# ! each (|>> [name]) (//A.boxed_reflection_type mapping type))) arguments) returnT (//A.boxed_reflection_return mapping returnJ) [_scope bodyA] (|> arguments' {.#Item [self selfT]} list.reversed - (list\mix scopeA.with_local (analyse archive bodyC)) + (list#mix scopeA.with_local (analyse archive bodyC)) (typeA.with_type returnT) analysis.with_scope)] (in [[super_name super_tvars] method_name strict_floating_point? annotations @@ -1086,14 +1086,14 @@ selfT (//A.reflection_type mapping (/type.class class_name class_tvars)) arguments' (monad.each ! (function (_ [name type]) - (\ ! each (|>> [name]) + (# ! each (|>> [name]) (//A.boxed_reflection_type mapping type))) arguments) returnT (//A.boxed_reflection_return mapping returnJ) [_scope bodyA] (|> arguments' {.#Item [self selfT]} list.reversed - (list\mix scopeA.with_local (analyse archive bodyC)) + (list#mix scopeA.with_local (analyse archive bodyC)) (typeA.with_type returnT) analysis.with_scope)] (in [name privacy final? strict_floating_point? annotations method_tvars @@ -1112,13 +1112,13 @@ [mapping (//A.with_fresh_type_vars method_tvars luxT.fresh) arguments' (monad.each ! (function (_ [name type]) - (\ ! each (|>> [name]) + (# ! each (|>> [name]) (//A.boxed_reflection_type mapping type))) arguments) returnT (//A.boxed_reflection_return mapping returnJ) [_scope bodyA] (|> arguments' list.reversed - (list\mix scopeA.with_local (analyse archive bodyC)) + (list#mix scopeA.with_local (analyse archive bodyC)) (typeA.with_type returnT) analysis.with_scope)] (in [name privacy strict_floating_point? annotations method_tvars @@ -1129,23 +1129,23 @@ (-> Archive Declaration (List (Type Class)) (Method Code) (Operation (Method Analysis))) (case method {#Constructor method} - (\ phase.monad each (|>> {#Constructor}) + (# phase.monad each (|>> {#Constructor}) (constructor_method_analysis archive declaration method)) {#Override method} - (\ phase.monad each (|>> {#Override}) + (# phase.monad each (|>> {#Override}) (override_method_analysis archive declaration supers method)) {#Virtual method} - (\ phase.monad each (|>> {#Virtual}) + (# phase.monad each (|>> {#Virtual}) (virtual_method_analysis archive declaration method)) {#Static method} - (\ phase.monad each (|>> {#Static}) + (# phase.monad each (|>> {#Static}) (static_method_analysis archive method)) {#Abstract method} - (\ phase.monad in {#Abstract method}) + (# phase.monad in {#Abstract method}) )) (template: (method_body <bodyS>) @@ -1165,7 +1165,7 @@ (directive.lifted_synthesis (do ! [constructor_argumentsS (monad.each ! (function (_ [typeJ termA]) - (\ ! each (|>> [typeJ]) + (# ! each (|>> [typeJ]) (synthesise archive termA))) constructor_argumentsA) bodyS (synthesise archive {analysis.#Function (list) (//A.hide_method_body (list.size arguments) bodyA)})] @@ -1239,23 +1239,23 @@ (-> Archive (Method Analysis) (Operation (Method Synthesis))) (case method {#Constructor method} - (\ phase.monad each (|>> {#Constructor}) + (# phase.monad each (|>> {#Constructor}) (constructor_method_synthesis archive method)) {#Override method} - (\ phase.monad each (|>> {#Override}) + (# phase.monad each (|>> {#Override}) (override_method_synthesis archive method)) {#Virtual method} - (\ phase.monad each (|>> {#Virtual}) + (# phase.monad each (|>> {#Virtual}) (virtual_method_synthesis archive method)) {#Static method} - (\ phase.monad each (|>> {#Static}) + (# phase.monad each (|>> {#Static}) (static_method_synthesis archive method)) {#Abstract method} - (\ phase.monad in {#Abstract method}) + (# phase.monad in {#Abstract method}) )) (def: (constructor_method_generation archive super_class method) @@ -1273,10 +1273,10 @@ .let [[super_name super_vars] (parser.read_class super_class) super_constructor_argument_values (_.fuse constructor_argumentsG) super_constructorT (/type.method [(list) - (list\each product.left constructor_argumentsS) + (list#each product.left constructor_argumentsS) /type.void (list)]) - argumentsT (list\each product.right arguments) + argumentsT (list#each product.right arguments) initialize_object! (: Inst (|>> (_.ALOAD 0) super_constructor_argument_values @@ -1302,7 +1302,7 @@ (directive.lifted_generation (do ! [bodyG (generate archive (//G.hidden_method_body (list.size arguments) bodyS)) - .let [argumentsT (list\each product.right arguments)]] + .let [argumentsT (list#each product.right arguments)]] (in (def.method {jvm.#Public} (if strict_floating_point? jvm.strictM @@ -1323,7 +1323,7 @@ (directive.lifted_generation (do ! [bodyG (generate archive (//G.hidden_method_body (list.size arguments) bodyS)) - .let [argumentsT (list\each product.right arguments)]] + .let [argumentsT (list#each product.right arguments)]] (in (def.method (..visibility privacy) (|> jvm.noneM (jvm.++M (if strict_floating_point? @@ -1348,7 +1348,7 @@ (directive.lifted_generation (do ! [bodyG (generate archive (//G.hidden_method_body (list.size arguments) bodyS)) - .let [argumentsT (list\each product.right arguments)]] + .let [argumentsT (list#each product.right arguments)]] (in (def.method (..visibility privacy) (|> jvm.staticM (jvm.++M (if strict_floating_point? @@ -1376,7 +1376,7 @@ (..static_method_generation archive method) {#Abstract method} - (\ phase.monad in (..abstract_method_generation method)) + (# phase.monad in (..abstract_method_generation method)) )) (import: java/lang/ClassLoader) @@ -1436,10 +1436,10 @@ methodsG (monad.each ! (method_generation archive super_class) methodsS) .let [directive [class_name (def.class {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name - (list\each ..constraint type_variables) + (list#each ..constraint type_variables) super_class super_interfaces - (def.fuse (list\composite (list\each ..field_header fields) + (def.fuse (list#composite (list#each ..field_header fields) methodsG)))]]] (directive.lifted_generation (do ! @@ -1461,10 +1461,10 @@ (do [! phase.monad] [.let [directive [class_name (def.interface {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name - (list\each ..constraint type_variables) + (list#each ..constraint type_variables) supers (|> method_declarations - (list\each (function (_ (^slots [#name #annotations #type_variables #exceptions #arguments #return])) + (list#each (function (_ (^slots [#name #annotations #type_variables #exceptions #arguments #return])) (def.abstract_method {jvm.#Public} jvm.noneM name (/type.method [type_variables arguments return exceptions])))) def.fuse))]]] diff --git a/lux-jvm/source/luxc/lang/host/jvm.lux b/lux-jvm/source/luxc/lang/host/jvm.lux index 3bb609324..8977c374c 100644 --- a/lux-jvm/source/luxc/lang/host/jvm.lux +++ b/lux-jvm/source/luxc/lang/host/jvm.lux @@ -10,7 +10,7 @@ [data [binary {"+" [Binary]}] [collection - ["[0]" list ("[1]\[0]" monad)]]] + ["[0]" list ("[1]#[0]" monad)]]] [macro ["[0]" code] [syntax {"+" [syntax:]}]] @@ -96,10 +96,10 @@ options (<code>.tuple (<>.many <code>.local_identifier))]) (let [g!type (code.local_identifier type) g!none (code.local_identifier none) - g!tags+ (list\each code.local_tag options) + g!tags+ (list#each code.local_tag options) g!_left (code.local_identifier "_left") g!_right (code.local_identifier "_right") - g!options+ (list\each (function (_ option) + g!options+ (list#each (function (_ option) (` (def: .public (~ (code.local_identifier option)) (~ g!type) (|> (~ g!none) @@ -108,26 +108,26 @@ (in (list& (` (type: .public (~ g!type) (.Record (~ (|> g!tags+ - (list\each (function (_ tag) + (list#each (function (_ tag) (list tag (` .Bit)))) - list\conjoint + list#conjoint code.tuple))))) (` (def: .public (~ g!none) (~ g!type) (~ (|> g!tags+ - (list\each (function (_ tag) + (list#each (function (_ tag) (list tag (` #0)))) - list\conjoint + list#conjoint code.tuple)))) (` (def: .public ((~ (code.local_identifier ++)) (~ g!_left) (~ g!_right)) (-> (~ g!type) (~ g!type) (~ g!type)) (~ (|> g!tags+ - (list\each (function (_ tag) + (list#each (function (_ tag) (list tag (` (or (value@ (~ tag) (~ g!_left)) (value@ (~ tag) (~ g!_right))))))) - list\conjoint + list#conjoint code.tuple)))) g!options+)))) diff --git a/lux-jvm/source/luxc/lang/translation/jvm.lux b/lux-jvm/source/luxc/lang/translation/jvm.lux index a44bc67e3..1da7db420 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm.lux @@ -132,7 +132,7 @@ (io.run! (do (try.with io.monad) [_ (loader.store eval_class bytecode library) class (loader.load eval_class loader) - value (\ io.monad in (..class_value eval_class class))] + value (# io.monad in (..class_value eval_class class))] (in [value [eval_class bytecode]]))))) @@ -140,7 +140,7 @@ (-> Library java/lang/ClassLoader Definition (Try Any)) (io.run! (do (try.with io.monad) [existing_class? (|> (atom.read! library) - (\ io.monad each (function (_ library) + (# io.monad each (function (_ library) (dictionary.key? library class_name))) (try.lifted io.monad) (: (IO (Try Bit)))) @@ -165,7 +165,7 @@ (: Host (implementation (def: (evaluate! context valueI) - (\ try.monad each product.left + (# try.monad each product.left (..evaluate! library loader context valueI))) (def: execute! @@ -188,7 +188,7 @@ custom)] _ (loader.store class_name bytecode library) class (loader.load class_name loader)] - (\ io.monad in (..class_value class_name class)))))))]))) + (# io.monad in (..class_value class_name class)))))))]))) (def: .public $Variant (type.array ..$Value)) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/common.lux b/lux-jvm/source/luxc/lang/translation/jvm/common.lux index 456a20694..642f5f83e 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/common.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/common.lux @@ -9,7 +9,7 @@ ... ["[0]" io]] ... [data ... [binary {"+" [Binary]}] - ... ["[0]" text ("[1]/[0]" hash) + ... ["[0]" text {"+" [\n]} ("[1]#[0]" hash) ... format] ... [collection ... ["[0]" dictionary {"+" [Dictionary]}]]] @@ -51,7 +51,7 @@ ... (def: .public (load-definition state) ... (-> Lux (-> Name Binary (Try Any))) ... (function (_ (^@ def-name [def-module def-name]) def-bytecode) -... (let [normal-name (format (name.normalize def-name) (%n (text/hash def-name))) +... (let [normal-name (format (name.normalize def-name) (%n (text#hash def-name))) ... class-name (format (text.replace-all "/" "." def-module) "." normal-name)] ... (<| (macro.result state) ... (do macro.monad @@ -68,6 +68,6 @@ ... {try.#Failure error} ... (phase.throw cannot-load-definition -... (format "Definition: " (%name def-name) "\n" -... "Error:\n" +... (format "Definition: " (%name def-name) \n +... "Error:" \n ... error)))))))) 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 930e219a5..3120b66b4 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/extension/host.lux @@ -5,18 +5,18 @@ [abstract ["[0]" monad {"+" [do]}]] [control - ["[0]" maybe ("[1]\[0]" functor)] + ["[0]" maybe ("[1]#[0]" functor)] ["[0]" exception {"+" [exception:]}] ["[0]" function] - ["<>" parser ("[1]\[0]" monad) + ["<>" parser ("[1]#[0]" monad) ["<[0]>" text] ["<[0]>" synthesis {"+" [Parser]}]]] [data ["[0]" product] - ["[0]" text ("[1]\[0]" equivalence) + ["[0]" text ("[1]#[0]" equivalence) ["%" format {"+" [format]}]] [collection - ["[0]" list ("[1]\[0]" monad mix)] + ["[0]" list ("[1]#[0]" monad mix)] ["[0]" dictionary {"+" [Dictionary]}] ["[0]" set]]] [macro @@ -35,7 +35,7 @@ ["[0]" parser]]]] [tool [compiler - ["[0]" phase ("[1]\[0]" monad)] + ["[0]" phase ("[1]#[0]" monad)] [reference {"+" []} ["[0]" variable {"+" [Variable Register]}]] [meta @@ -570,15 +570,15 @@ (do phase.monad [valueI (generate archive valueS)] (`` (cond (~~ (template [<object> <primitive>] - [(and (text\= (reflection.reflection (type.reflection <primitive>)) + [(and (text#= (reflection.reflection (type.reflection <primitive>)) from) - (text\= <object> + (text#= <object> to)) (in (|>> valueI (_.wrap <primitive>))) - (and (text\= <object> + (and (text#= <object> from) - (text\= (reflection.reflection (type.reflection <primitive>)) + (text#= (reflection.reflection (type.reflection <primitive>)) to)) (in (|>> valueI (_.unwrap <primitive>)))] @@ -735,8 +735,8 @@ (function (_ extension_name generate archive [class method outputT inputsTS]) (do [! phase.monad] [inputsTI (monad.each ! (generate_input generate archive) inputsTS)] - (in (|>> (_.fuse (list\each product.right inputsTI)) - (_.INVOKESTATIC class method (type.method [(list) (list\each product.left inputsTI) outputT (list)])) + (in (|>> (_.fuse (list#each product.right inputsTI)) + (_.INVOKESTATIC class method (type.method [(list) (list#each product.left inputsTI) outputT (list)])) (prepare_output outputT)))))])) (template [<name> <invoke>] @@ -750,10 +750,10 @@ inputsTI (monad.each ! (generate_input generate archive) inputsTS)] (in (|>> objectI (_.CHECKCAST class) - (_.fuse (list\each product.right inputsTI)) + (_.fuse (list#each product.right inputsTI)) (<invoke> class method (type.method [(list) - (list\each product.left inputsTI) + (list#each product.left inputsTI) outputT (list)])) (prepare_output outputT)))))]))] @@ -772,8 +772,8 @@ [inputsTI (monad.each ! (generate_input generate archive) inputsTS)] (in (|>> (_.NEW class) _.DUP - (_.fuse (list\each product.right inputsTI)) - (_.INVOKESPECIAL class "<init>" (type.method [(list) (list\each product.left inputsTI) type.void (list)]))))))])) + (_.fuse (list#each product.right inputsTI)) + (_.INVOKESPECIAL class "<init>" (type.method [(list) (list#each product.left inputsTI) type.void (list)]))))))])) (def: member_bundle Bundle @@ -886,12 +886,12 @@ [synthesis.#Access]) {synthesis.#Bit_Fork when then else} - {synthesis.#Bit_Fork when (recur then) (maybe\each recur else)} + {synthesis.#Bit_Fork when (recur then) (maybe#each recur else)} (^template [<tag>] [{<tag> [[test then] elses]} {<tag> [[test (recur then)] - (list\each (function (_ [else_test else_then]) + (list#each (function (_ [else_test else_then]) [else_test (recur else_then)]) elses)]}]) ([synthesis.#I64_Fork] @@ -913,7 +913,7 @@ (synthesis.variant [lefts right? (recur sub)]) (^ (synthesis.tuple members)) - (synthesis.tuple (list\each recur members)) + (synthesis.tuple (list#each recur members)) (^ (synthesis.variable var)) (|> mapping @@ -934,13 +934,13 @@ (synthesis.branch/get [path (recur recordS)]) (^ (synthesis.loop/scope [offset initsS+ bodyS])) - (synthesis.loop/scope [offset (list\each recur initsS+) (recur bodyS)]) + (synthesis.loop/scope [offset (list#each recur initsS+) (recur bodyS)]) (^ (synthesis.loop/recur updatesS+)) - (synthesis.loop/recur (list\each recur updatesS+)) + (synthesis.loop/recur (list#each recur updatesS+)) (^ (synthesis.function/abstraction [environment arity bodyS])) - (synthesis.function/abstraction [(list\each (function (_ captured) + (synthesis.function/abstraction [(list#each (function (_ captured) (case captured (^ (synthesis.variable var)) (|> mapping @@ -955,10 +955,10 @@ bodyS]) (^ (synthesis.function/apply [functionS inputsS+])) - (synthesis.function/apply [(recur functionS) (list\each recur inputsS+)]) + (synthesis.function/apply [(recur functionS) (list#each recur inputsS+)]) {synthesis.#Extension [name inputsS+]} - {synthesis.#Extension [name (list\each recur inputsS+)]}))) + {synthesis.#Extension [name (list#each recur inputsS+)]}))) (def: $Object (type.class "java.lang.Object" (list))) @@ -975,15 +975,15 @@ (let [store_capturedI (|> env list.size list.indices - (list\each (.function (_ register) + (list#each (.function (_ register) (|>> (_.ALOAD 0) (_.ALOAD (++ register)) (_.PUTFIELD class (///reference.foreign_name register) $Object)))) _.fuse)] (_def.method #$.Public $.noneM "<init>" (anonymous_init_method env) (|>> (_.ALOAD 0) - ((_.fuse (list\each product.right inputsTI))) - (_.INVOKESPECIAL super_class "<init>" (type.method [(list) (list\each product.left inputsTI) type.void (list)])) + ((_.fuse (list#each product.right inputsTI))) + (_.INVOKESPECIAL super_class "<init>" (type.method [(list) (list#each product.left inputsTI) type.void (list)])) store_capturedI _.RETURN)))) @@ -1013,7 +1013,7 @@ (_.wrap <type>) (_.ASTORE lux_register))]]] (`` (cond (~~ (template [<shift> <load> <type>] - [(\ type.equivalence = <type> argumentT) + [(# type.equivalence = <type> argumentT) (wrap_primitive <shift> <load> <type>)] [1 _.ILOAD type.boolean] @@ -1024,14 +1024,14 @@ [1 _.FLOAD type.float] [2 _.LLOAD type.long])) - ... (\ type.equivalence = type.double argumentT) + ... (# type.equivalence = type.double argumentT) (wrap_primitive 2 _.DLOAD type.double)))))) (def: .public (prepare_arguments offset types) (-> Nat (List (Type Value)) Inst) (|> types list.enumeration - (list\mix (function (_ [lux_register type] [jvm_register before]) + (list#mix (function (_ [lux_register type] [jvm_register before]) (let [[jvm_register' after] (prepare_argument (n.+ offset lux_register) type jvm_register)] [jvm_register' (|>> before after)])) (: [Register Inst] [offset (|>>)])) @@ -1059,7 +1059,7 @@ [(|>> (_.unwrap <type>) <return>)]] (`` (cond (~~ (template [<return> <type>] - [(\ type.equivalence = <type> returnT) + [(# type.equivalence = <type> returnT) (unwrap_primitive <return> <type>)] [_.IRETURN type.boolean] @@ -1070,7 +1070,7 @@ [_.FRETURN type.float] [_.LRETURN type.long])) - ... (\ type.equivalence = type.double returnT) + ... (# type.equivalence = type.double returnT) (unwrap_primitive _.DRETURN type.double))))))) (def: class::anonymous @@ -1092,26 +1092,26 @@ class (type.class anonymous_class_name (list)) total_environment (|> overriden_methods ... Get all the environments. - (list\each product.left) + (list#each product.left) ... Combine them. - list\conjoint + list#conjoint ... Remove duplicates. (set.of_list synthesis.hash) set.list) global_mapping (|> total_environment ... Give them names as "foreign" variables. list.enumeration - (list\each (function (_ [id capture]) + (list#each (function (_ [id capture]) [capture {variable.#Foreign id}])) (dictionary.of_list synthesis.hash)) - normalized_methods (list\each (function (_ [environment + normalized_methods (list#each (function (_ [environment [ownerT name strict_fp? annotations vars self_name arguments returnT exceptionsT body]]) (let [local_mapping (|> environment list.enumeration - (list\each (function (_ [foreign_id capture]) + (list#each (function (_ [foreign_id capture]) [(synthesis.variable/foreign foreign_id) (|> global_mapping (dictionary.value capture) @@ -1131,7 +1131,7 @@ (do ! [bodyG (generation.with_context artifact_id (generate archive bodyS)) - .let [argumentsT (list\each product.right arguments)]] + .let [argumentsT (list#each product.right arguments)]] (in (_def.method #$.Public (if strict_fp? ($_ $.++M $.finalM $.strictM) @@ -1141,7 +1141,7 @@ (|>> (prepare_arguments 1 argumentsT) bodyG (returnI returnT))))))) - (\ ! each _def.fuse)) + (# ! each _def.fuse)) .let [directive [anonymous_class_name (_def.class #$.V1_6 #$.Public $.finalC anonymous_class_name (list) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/reference.lux b/lux-jvm/source/luxc/lang/translation/jvm/reference.lux index 1c1beda17..aebd84a60 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/reference.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/reference.lux @@ -39,7 +39,7 @@ (def: (foreign archive variable) (-> Archive Register (Operation Inst)) (do [@ phase.monad] - [class_name (\ @ each //.class_name + [class_name (# @ each //.class_name (generation.context archive))] (in (|>> (_.ALOAD 0) (_.GETFIELD (type.class class_name (list)) @@ -62,6 +62,6 @@ (def: .public (constant archive name) (-> Archive Name (Operation Inst)) (do [@ phase.monad] - [class_name (\ @ each //.class_name + [class_name (# @ each //.class_name (generation.remember archive name))] (in (_.GETSTATIC (type.class class_name (list)) //.value_field //.$Value)))) diff --git a/lux-jvm/source/luxc/lang/translation/jvm/structure.lux b/lux-jvm/source/luxc/lang/translation/jvm/structure.lux index e1c0c9f5f..3f113e83d 100644 --- a/lux-jvm/source/luxc/lang/translation/jvm/structure.lux +++ b/lux-jvm/source/luxc/lang/translation/jvm/structure.lux @@ -57,7 +57,7 @@ (_.int (.int idx)) memberI _.AASTORE))))) - (\ @ each _.fuse))] + (# @ each _.fuse))] (in (|>> (_.int (.int size)) (_.array //runtime.$Value) membersI)))) diff --git a/lux-jvm/source/program.lux b/lux-jvm/source/program.lux index 0fc2e7912..254f99e8b 100644 --- a/lux-jvm/source/program.lux +++ b/lux-jvm/source/program.lux @@ -274,7 +274,7 @@ (def: (declare_success! _) (-> Any (Async Any)) - (async.future (\ world/program.default exit +0))) + (async.future (# world/program.default exit +0))) (program: [service /cli.service] (let [static [/static.#host @.jvm @@ -298,6 +298,6 @@ ..extender service [(packager.package static) - (format (/cli.target service) (\ file.default separator) "program.jar")])] + (format (/cli.target service) (# file.default separator) "program.jar")])] (..declare_success! [])) (io.io [])))) |