From 9cde0397cc7520409853293fd18d8935d2294df9 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Mon, 10 Dec 2018 00:27:23 -0400 Subject: Fixed a bug in recursive sessions. --- stdlib/source/lux/concurrency/session.lux | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/stdlib/source/lux/concurrency/session.lux b/stdlib/source/lux/concurrency/session.lux index cbbe34325..ea0f3666f 100644 --- a/stdlib/source/lux/concurrency/session.lux +++ b/stdlib/source/lux/concurrency/session.lux @@ -208,12 +208,14 @@ (def: #export ($rec scope) (-> (-> Session Session) Session) - (case (type (All $recur [_] - (:~ ($session (scope [$recur $recur]))))) + (case (type (All $recur [$_] + (:~ ($session (scope [(#.Apply $_ $recur) + (#.Apply $_ $recur)]))))) (^multi (#.UnivQ _env $scope) [(type.flatten-tuple $scope) (^ (list mine yours))]) - [(#.UnivQ _env mine) (#.UnivQ _env yours)] + [(#.Apply Any (#.UnivQ _env mine)) + (#.Apply Any (#.UnivQ _env yours))] _ (undefined))) -- cgit v1.2.3