aboutsummaryrefslogtreecommitdiff
path: root/src/lux/analyser/lux.clj
diff options
context:
space:
mode:
authorEduardo Julian2015-09-12 15:06:14 -0400
committerEduardo Julian2015-09-12 15:06:14 -0400
commit5fd179352bbf25bbe4000ae51132fd5553ba256a (patch)
tree8a242937777a76bd420fb6da414ed97280e513f5 /src/lux/analyser/lux.clj
parent5148900e02c8e05808afc8a3ec7fc51a901bcc7b (diff)
- Primitive data-types can now be parameterized by other types.
Diffstat (limited to '')
-rw-r--r--src/lux/analyser/lux.clj12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/lux/analyser/lux.clj b/src/lux/analyser/lux.clj
index b8239d1a9..6205adccb 100644
--- a/src/lux/analyser/lux.clj
+++ b/src/lux/analyser/lux.clj
@@ -364,7 +364,7 @@
(|do [;; :let [_ (prn 'MACRO-EXPAND|PRE (&/ident->text real-name))]
macro-expansion #(-> macro (.apply ?args) (.apply %))
;; :let [_ (prn 'MACRO-EXPAND|POST (&/ident->text real-name))]
- ;; :let [_ (when (or (= "defsig" (aget real-name 1))
+ ;; :let [_ (when (or (= "zip" (aget real-name 1))
;; ;; (= "..?" (aget real-name 1))
;; ;; (= "try$" (aget real-name 1))
;; )
@@ -431,13 +431,9 @@
(|do [exo-type* (&type/actual-type exo-type)]
(|case exo-type
(&/$UnivQ _)
- (&type/with-var
- (fn [$var]
- (|do [exo-type** (&type/apply-type exo-type* $var)]
- (analyse-lambda* analyse exo-type** ?self ?arg ?body))))
- ;; (|do [$var &type/existential
- ;; exo-type** (&type/apply-type exo-type* $var)]
- ;; (analyse-lambda* analyse exo-type** ?self ?arg ?body))
+ (|do [$var &type/existential
+ exo-type** (&type/apply-type exo-type* $var)]
+ (analyse-lambda* analyse exo-type** ?self ?arg ?body))
(&/$LambdaT ?arg-t ?return-t)
(|do [[=scope =captured =body] (&&lambda/with-lambda ?self exo-type*