aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/macro/syntax/common/reader.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/lux/macro/syntax/common/reader.lux10
1 files changed, 6 insertions, 4 deletions
diff --git a/stdlib/source/lux/macro/syntax/common/reader.lux b/stdlib/source/lux/macro/syntax/common/reader.lux
index 408edae91..a3dafa296 100644
--- a/stdlib/source/lux/macro/syntax/common/reader.lux
+++ b/stdlib/source/lux/macro/syntax/common/reader.lux
@@ -15,8 +15,8 @@
## Exports
(def: #export export
(Syntax Bit)
- (p.either (p.after (s.this (' #export)) (parser/wrap true))
- (parser/wrap false)))
+ (p.either (p.after (s.this (' #export)) (parser/wrap #1))
+ (parser/wrap #0)))
## Declarations
(def: #export declaration
@@ -106,8 +106,10 @@
(-> Lux (Syntax //.Definition))
(do p.Monad<Parser>
[definition-raw s.any
- me-definition-raw (s.on compiler
- (macro.expand-all definition-raw))]
+ me-definition-raw (|> definition-raw
+ macro.expand-all
+ (macro.run compiler)
+ s.lift)]
(s.local me-definition-raw
(s.form (do @
[_ (s.this (' "lux def"))