From 012f6bd41e527479dddbccbdab10daa78fd9a0fd Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Wed, 1 Nov 2017 00:51:45 -0400 Subject: - Re-organized code-generation, and re-named it "translation". --- new-luxc/source/luxc/generator/expression.jvm.lux | 76 ----------------------- 1 file changed, 76 deletions(-) delete mode 100644 new-luxc/source/luxc/generator/expression.jvm.lux (limited to 'new-luxc/source/luxc/generator/expression.jvm.lux') diff --git a/new-luxc/source/luxc/generator/expression.jvm.lux b/new-luxc/source/luxc/generator/expression.jvm.lux deleted file mode 100644 index 798998510..000000000 --- a/new-luxc/source/luxc/generator/expression.jvm.lux +++ /dev/null @@ -1,76 +0,0 @@ -(;module: - lux - (lux (control monad - ["ex" exception #+ exception:] - ["p" parser]) - (data ["e" error] - text/format) - [meta] - (meta ["s" syntax])) - (luxc ["&" base] - (host ["$" jvm]) - (lang ["ls" synthesis] - [";L" variable #+ Variable Register]) - (generator ["&;" common] - ["&;" primitive] - ["&;" structure] - ["&;" eval] - ["&;" procedure] - ["&;" function] - ["&;" reference] - [";G" case]))) - -(exception: #export Unrecognized-Synthesis) - -(def: #export (generate synthesis) - (-> ls;Synthesis (Meta $;Inst)) - (case synthesis - (^code []) - &primitive;generate-unit - - (^code [(~ singleton)]) - (generate singleton) - - (^template [ ] - [_ ( value)] - ( value)) - ([#;Bool &primitive;generate-bool] - [#;Nat &primitive;generate-nat] - [#;Int &primitive;generate-int] - [#;Deg &primitive;generate-deg] - [#;Frac &primitive;generate-frac] - [#;Text &primitive;generate-text]) - - (^code ((~ [_ (#;Nat tag)]) (~ [_ (#;Bool last?)]) (~ valueS))) - (&structure;generate-variant generate tag last? valueS) - - (^code [(~@ members)]) - (&structure;generate-tuple generate members) - - (^ [_ (#;Form (list [_ (#;Int var)]))]) - (if (variableL;captured? var) - (&reference;generate-captured var) - (&reference;generate-variable var)) - - [_ (#;Symbol definition)] - (&reference;generate-definition definition) - - (^code ("lux let" (~ [_ (#;Nat register)]) (~ inputS) (~ exprS))) - (caseG;generate-let generate register inputS exprS) - - (^code ("lux case" (~ inputS) (~ pathPS))) - (caseG;generate-case generate inputS pathPS) - - (^multi (^code ("lux function" (~ [_ (#;Nat arity)]) [(~@ environment)] (~ bodyS))) - [(s;run environment (p;some s;int)) (#e;Success environment)]) - (&function;generate-function generate environment arity bodyS) - - (^code ("lux call" (~ functionS) (~@ argsS))) - (&function;generate-call generate functionS argsS) - - (^code ((~ [_ (#;Text procedure)]) (~@ argsS))) - (&procedure;generate-procedure generate procedure argsS) - - _ - (&;throw Unrecognized-Synthesis (%code synthesis)) - )) -- cgit v1.2.3