diff options
author | Eduardo Julian | 2016-07-01 19:06:04 -0400 |
---|---|---|
committer | Eduardo Julian | 2016-07-01 19:06:04 -0400 |
commit | 512598de80963203cf162d2f353d43b47273ffaf (patch) | |
tree | e24f68a1a7a4a79cb6eb5741566804f08d70718c /src | |
parent | 7d31a4df9b6582b9abb11c221b18a27a788c6f91 (diff) |
- Small fixes to reader & type-system.
- Test suites for reader, lexer and parser got updated.
- Added unit-tests for type-system.
Diffstat (limited to 'src')
-rw-r--r-- | src/lux/type.clj | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/lux/type.clj b/src/lux/type.clj index 70a2f69fa..295d7bfdb 100644 --- a/src/lux/type.clj +++ b/src/lux/type.clj @@ -756,21 +756,15 @@ [(&/$ExQ e!env e!def) _] (with-var (fn [$arg] - (|do [:let [expected* (beta-reduce (->> e!env - (&/$Cons $arg) - (&/$Cons expected)) - e!def)] + (|do [expected* (apply-type expected $arg) =output (check* class-loader fixpoints invariant?? expected* actual) _ (clean $arg actual)] (return =output)))) [_ (&/$ExQ a!env a!def)] - (|do [$arg existential] - (|let [actual* (beta-reduce (->> a!env - (&/$Cons $arg) - (&/$Cons expected)) - a!def)] - (check* class-loader fixpoints invariant?? expected actual*))) + (|do [$arg existential + actual* (apply-type actual $arg)] + (check* class-loader fixpoints invariant?? expected actual*)) [(&/$HostT e!data) (&/$HostT a!data)] (&&host/check-host-types (partial check* class-loader fixpoints true) |