aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/macro/template.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/lux/macro/template.lux')
-rw-r--r--stdlib/source/lux/macro/template.lux20
1 files changed, 10 insertions, 10 deletions
diff --git a/stdlib/source/lux/macro/template.lux b/stdlib/source/lux/macro/template.lux
index 6271b7cd4..b970cae05 100644
--- a/stdlib/source/lux/macro/template.lux
+++ b/stdlib/source/lux/macro/template.lux
@@ -1,5 +1,5 @@
(.module:
- [lux #*
+ [lux (#- let)
["." meta]
[abstract
["." monad (#+ do)]]
@@ -55,8 +55,8 @@
(def: (snippet module_side?)
(-> Bit (Parser Text))
- (let [full_identifier (..name_side module_side? <code>.identifier)
- full_tag (..name_side module_side? <code>.tag)]
+ (.let [full_identifier (..name_side module_side? <code>.identifier)
+ full_tag (..name_side module_side? <code>.tag)]
($_ <>.either
<code>.text
(if module_side?
@@ -140,12 +140,12 @@
(-> Local Macro)
("lux macro"
(function (_ inputs compiler)
- (let [parameters_count (list.size parameters)
- inputs_count (list.size inputs)]
+ (.let [parameters_count (list.size parameters)
+ inputs_count (list.size inputs)]
(if (nat.= parameters_count inputs_count)
- (let [environment (: Environment
- (|> (list.zip/2 parameters inputs)
- (dictionary.from_list text.hash)))]
+ (.let [environment (: Environment
+ (|> (list.zip/2 parameters inputs)
+ (dictionary.from_list text.hash)))]
(#.Right [compiler (list\map (..apply environment) template)]))
(exception.throw ..irregular_arguments [parameters_count inputs_count]))))))
@@ -159,7 +159,7 @@
#parameters parameters
#template template})))
-(syntax: #export (with {locals (<code>.tuple (<>.some ..local))}
+(syntax: #export (let {locals (<code>.tuple (<>.some ..local))}
body)
(do meta.monad
[here_name meta.current_module_name
@@ -177,7 +177,7 @@
locals))]
(if expression?
(//.with_gensyms [g!body]
- (wrap (list (` (let [(~ g!body) (~ body)]
+ (wrap (list (` (.let [(~ g!body) (~ body)]
(exec (~ g!pop)
(~ g!body)))))))
(wrap (list body