diff options
| author | Tom Smeding <tom@tomsmeding.com> | 2025-10-23 23:50:17 +0200 |
|---|---|---|
| committer | Tom Smeding <tom@tomsmeding.com> | 2025-10-23 23:50:17 +0200 |
| commit | 3698d4d3a309d34dc154a90f9f09b9893bf22013 (patch) | |
| tree | 271cfa91e69aa26c0cc1f220a80f0fbeb044558e /src/AST/SplitLets.hs | |
| parent | 3bb0ddec78194ebc1c133f8dcaf1ff83b873d320 (diff) | |
Helper functions bpush and weakenBindingsE
Diffstat (limited to 'src/AST/SplitLets.hs')
| -rw-r--r-- | src/AST/SplitLets.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/AST/SplitLets.hs b/src/AST/SplitLets.hs index dcaf82f..82ec1d6 100644 --- a/src/AST/SplitLets.hs +++ b/src/AST/SplitLets.hs @@ -89,10 +89,10 @@ splitLets' = \sub -> \case -> STy bind1 -> STy bind2 -> Ex (bind2 : bind1 : env) t -> Ex (bind2 : bind1 : env') t split2 sub tbind1 tbind2 body = let (ptrs1', bs1') = split @env' tbind1 - bs1 = fst (weakenBindings weakenExpr WSink bs1') + bs1 = fst (weakenBindingsE WSink bs1') (ptrs2, bs2) = split @(bind1 : env') tbind2 in letBinds bs1 $ - letBinds (fst (weakenBindings weakenExpr (sinkWithBindings @(bind2 : bind1 : env') bs1) bs2)) $ + letBinds (fst (weakenBindingsE (sinkWithBindings @(bind2 : bind1 : env') bs1) bs2)) $ splitLets' (\cases _ IZ w -> subPointers ptrs2 (w .> wCopies (bindingsBinds bs2) (wSinks @(bind2 : bind1 : env') (bindingsBinds bs1))) _ (IS IZ) w -> subPointers ptrs1' (w .> wSinks (bindingsBinds bs2) .> wCopies (bindingsBinds bs1) (WSink @bind2 @(bind1 : env'))) t (IS (IS i)) w -> sub t i (WPop @bind1 (WPop @bind2 (wPops (bindingsBinds bs1) (wPops (bindingsBinds bs2) w))))) |
