aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/compiler/default/evaluation.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/lux/compiler/default/evaluation.lux10
1 files changed, 6 insertions, 4 deletions
diff --git a/stdlib/source/lux/compiler/default/evaluation.lux b/stdlib/source/lux/compiler/default/evaluation.lux
index d93feca93..3fb1a9984 100644
--- a/stdlib/source/lux/compiler/default/evaluation.lux
+++ b/stdlib/source/lux/compiler/default/evaluation.lux
@@ -3,7 +3,9 @@
[control
[monad (#+ do)]]
[data
- ["." error]]]
+ ["." error]
+ [text
+ format]]]
[//
["." phase
[analysis (#+ Operation)
@@ -14,7 +16,7 @@
["." translation]]])
(type: #export Eval
- (-> Type Code (Operation Any)))
+ (-> Nat Type Code (Operation Any)))
(def: #export (evaluator synthesis-state translation-state translate)
(All [anchor expression statement]
@@ -22,7 +24,7 @@
(translation.State+ anchor expression statement)
(translation.Phase anchor expression statement)
Eval))
- (function (eval type exprC)
+ (function (eval count type exprC)
(do phase.Monad<Operation>
[exprA (type.with-type type
(expressionA.compile exprC))]
@@ -31,4 +33,4 @@
(phase.run translation-state
(do phase.Monad<Operation>
[exprO (translate exprS)]
- (translation.evaluate! exprO))))))))
+ (translation.evaluate! (format "eval" (%n count)) exprO))))))))