From 8aaba6fa5ce1a0f1d0c9117512ccac855899b5e2 Mon Sep 17 00:00:00 2001 From: Yura Lazarev Date: Tue, 28 Jul 2026 15:04:38 +0200 Subject: [PATCH 1/2] feat(optimizer): admit saturated n-ary worker calls to the call-site inliner (#245) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The budgeted call-site inliner matched an n-ary worker call — the direct AppN(f$w, args) call the uncurry split mints — only when the worker body was a bare tree of primops over trivial operands. The gate is now the same one the curried tier uses: a manifest AbsN of exactly matching arity within inlineSizeBudget, minus multi-value bodies (a result-split worker's Values tail pasted into expression position would truncate in a single-value slot). Small workers — dictionary-method residues, constructors, tiny helpers — dissolve into their call sites, where the pasted bodies meet the constructor and primop folds and frequently reduce further, down to constants. The growth veto's fallback becomes a ladder: a sweep whose pastes overrun the expression's growth allowance is redone with the n-ary worker tier disarmed (CurriedPastesOnly, exactly the pre-change arming) before every heuristic tier is disarmed (DirectedPastesOnly). Without the middle rung, non-collapsing worker pastes drag the collapsing dictionary-method cascade down with them in the all-or-nothing revert: Golden.NativeLoopsGuard's loop guard regressed from the folded 'v >= 0 and v ~= 0' back to a materialized Ord dictionary call until the rung restored it. Measured on the bench corpus, only Bench.CtorBuild moves: the V$w constructor worker dissolves into in-place table builds (-6.9% bytes, one prototype and one load-time FNEW fewer, -4.5%/-3.2% median wall clock under PUC Lua/LuaJIT); every other artifact is byte-identical. The golden corpus shrinks 0.7% in bytes outside the two adversarial stress goldens; Golden.LongStackBind (+55%) and Golden.LongStateBind (+14%) trade printed size for one call fewer per site by pasting the closures the workers allocated per call anyway — the growth veto's documented per-sweep line-blindness. Eval goldens are unchanged. --- bench/goldens/fnew_Bench.CtorBuild.txt | 14 +- bench/goldens/tnew_Bench.CtorBuild.txt | 9 +- bench/goldens/trace_ctor_build.txt | 15 +- ...8_120000_unisay_nary_call_site_inlining.md | 13 + .../PureScript/Backend/IR/Optimizer.hs | 148 +- lib/Language/PureScript/Backend/IR/Types.hs | 5 +- .../PureScript/Backend/IR/Optimizer/Spec.hs | 160 +- .../output/Golden.ArrayOfUnits.Test/golden.ir | 58 +- .../Golden.ArrayOfUnits.Test/golden.lua | 18 +- .../Golden.BugListGenericEq.Test/golden.ir | 557 +- .../Golden.BugListGenericEq.Test/golden.lua | 66 +- test/ps/output/Golden.CSE.Test/golden.ir | 44 +- .../output/Golden.CasePruning.Test/golden.ir | 14 +- .../ps/output/Golden.CprResult.Test/golden.ir | 86 +- .../output/Golden.CprResult.Test/golden.lua | 9 +- test/ps/output/Golden.CprState.Test/golden.ir | 304 +- .../ps/output/Golden.CprState.Test/golden.lua | 33 +- .../Golden.DerivedFunctor.Test/golden.ir | 202 +- .../Golden.DerivedFunctor.Test/golden.lua | 44 +- .../Golden.DirectiveDerived.Test/golden.ir | 4 +- .../Golden.DirectivePack.Test/golden.ir | 264 +- .../Golden.DirectivePack.Test/golden.lua | 52 +- test/ps/output/Golden.FloatIn.Test/golden.ir | 180 +- test/ps/output/Golden.FloatIn.Test/golden.lua | 29 +- .../Golden.GenericEqTwoTypes.Test/golden.ir | 481 +- .../Golden.GenericEqTwoTypes.Test/golden.lua | 48 +- .../Golden.LongStackBind.Test/golden.ir | 7967 +++++++++++------ .../Golden.LongStackBind.Test/golden.lua | 1069 ++- .../Golden.LongStateBind.Test/golden.ir | 4234 ++++----- .../Golden.LongStateBind.Test/golden.lua | 518 +- .../Golden.LongWriterBind.Test/golden.ir | 92 +- .../Golden.LongWriterBind.Test/golden.lua | 12 +- .../output/Golden.MaybeChain.Test/golden.ir | 164 +- .../output/Golden.MaybeChain.Test/golden.lua | 36 +- .../Golden.MaybeChainModule.Test/golden.ir | 86 +- .../Golden.MaybeChainModule.Test/golden.lua | 39 +- .../Golden.NameShadowing.Test/golden.ir | 52 +- .../Golden.NameShadowing.Test/golden.lua | 17 +- .../Golden.NativeLoopsGuard.Test/golden.ir | 68 +- test/ps/output/Golden.Primops.Test/golden.ir | 205 +- test/ps/output/Golden.Primops.Test/golden.lua | 37 +- .../ps/output/Golden.STDoBlock.Test/golden.ir | 6 +- .../output/Golden.SpecConstr.Test/golden.ir | 258 +- .../output/Golden.SpecConstr.Test/golden.lua | 48 +- .../Golden.StringCodePoints.Test/golden.ir | 271 +- .../Golden.StringCodePoints.Test/golden.lua | 75 +- .../Golden.TailRecM2Shadow.Test/golden.ir | 14 +- .../Golden.UncurriedLift.Test/golden.ir | 101 +- .../Golden.UncurriedLift.Test/golden.lua | 43 +- test/ps/output/Golden.Uncurry.Test/golden.ir | 293 +- test/ps/output/Golden.Uncurry.Test/golden.lua | 74 +- .../output/Golden.UncurryCtor.Test/golden.ir | 226 +- .../output/Golden.UncurryCtor.Test/golden.lua | 60 +- 53 files changed, 10855 insertions(+), 8067 deletions(-) create mode 100644 changelog.d/20260728_120000_unisay_nary_call_site_inlining.md diff --git a/bench/goldens/fnew_Bench.CtorBuild.txt b/bench/goldens/fnew_Bench.CtorBuild.txt index f279bdba..f03834a3 100644 --- a/bench/goldens/fnew_Bench.CtorBuild.txt +++ b/bench/goldens/fnew_Bench.CtorBuild.txt @@ -1,9 +1,9 @@ chunk: Bench.CtorBuild.lua runtime: LuaJIT 2.1.1741730670 -main-chunk FNEW: 8 +main-chunk FNEW: 7 function-body FNEW: 13 -total FNEW: 21 -prototypes: 22 +total FNEW: 20 +prototypes: 21 function-body FNEW sites: Bench.CtorBuild.lua:8 Bench.CtorBuild.lua:20 @@ -13,8 +13,8 @@ function-body FNEW sites: Bench.CtorBuild.lua:54 Bench.CtorBuild.lua:53 Bench.CtorBuild.lua:52 - Bench.CtorBuild.lua:66 - Bench.CtorBuild.lua:65 - Bench.CtorBuild.lua:71 - Bench.CtorBuild.lua:73 + Bench.CtorBuild.lua:63 + Bench.CtorBuild.lua:62 + Bench.CtorBuild.lua:68 Bench.CtorBuild.lua:70 + Bench.CtorBuild.lua:67 diff --git a/bench/goldens/tnew_Bench.CtorBuild.txt b/bench/goldens/tnew_Bench.CtorBuild.txt index 13a14d2e..9d686f7f 100644 --- a/bench/goldens/tnew_Bench.CtorBuild.txt +++ b/bench/goldens/tnew_Bench.CtorBuild.txt @@ -1,10 +1,11 @@ chunk: Bench.CtorBuild.lua runtime: LuaJIT 2.1.1741730670 main-chunk TNEW+TDUP: 5 -function-body TNEW+TDUP: 3 -total TNEW+TDUP: 8 -prototypes: 22 +function-body TNEW+TDUP: 4 +total TNEW+TDUP: 9 +prototypes: 21 function-body TNEW+TDUP sites: Bench.CtorBuild.lua:5 TNEW Bench.CtorBuild.lua:36 TNEW - Bench.CtorBuild.lua:58 TNEW + Bench.CtorBuild.lua:61 TNEW + Bench.CtorBuild.lua:69 TNEW diff --git a/bench/goldens/trace_ctor_build.txt b/bench/goldens/trace_ctor_build.txt index 3ae85108..a604e83d 100644 --- a/bench/goldens/trace_ctor_build.txt +++ b/bench/goldens/trace_ctor_build.txt @@ -5,18 +5,17 @@ aborts (distinct site -- reason): Bench.CtorBuild.lua:29 -- NYI: bytecode FNEW Bench.CtorBuild.lua:30 -- NYI: bytecode FNEW Bench.CtorBuild.lua:38 -- inner loop in root trace - Bench.CtorBuild.lua:70 -- NYI: bytecode FNEW - Bench.CtorBuild.lua:71 -- NYI: bytecode FNEW - Bench.CtorBuild.lua:73 -- NYI: bytecode UCLO + Bench.CtorBuild.lua:67 -- NYI: bytecode FNEW + Bench.CtorBuild.lua:68 -- NYI: bytecode FNEW + Bench.CtorBuild.lua:70 -- NYI: bytecode UCLO Bench.CtorBuild.lua:8 -- NYI: bytecode FNEW bytecode end state (J*=compiled, I*=blacklisted): Bench.CtorBuild.lua:27 IFORL Bench.CtorBuild.lua:3 JFUNCF Bench.CtorBuild.lua:38 JLOOP - Bench.CtorBuild.lua:57 JFUNCF Bench.CtorBuild.lua:6 JFORI Bench.CtorBuild.lua:6 JFORL - Bench.CtorBuild.lua:69 IFUNCF - Bench.CtorBuild.lua:70 JFUNCF - Bench.CtorBuild.lua:71 JFUNCF -counts: aborts=7 compiled=7 blacklisted=2 + Bench.CtorBuild.lua:66 IFUNCF + Bench.CtorBuild.lua:67 JFUNCF + Bench.CtorBuild.lua:68 JFUNCF +counts: aborts=7 compiled=6 blacklisted=2 diff --git a/changelog.d/20260728_120000_unisay_nary_call_site_inlining.md b/changelog.d/20260728_120000_unisay_nary_call_site_inlining.md new file mode 100644 index 00000000..6faa7a93 --- /dev/null +++ b/changelog.d/20260728_120000_unisay_nary_call_site_inlining.md @@ -0,0 +1,13 @@ +### Changed + +- The budgeted call-site inliner now admits saturated n-ary worker calls — + the direct `f$w(a, b)` calls the uncurrying split mints — under the same + size budget as curried call spines, instead of only bare-primop worker + bodies. Small workers (dictionary-method residues, constructors, tiny + helpers) dissolve into their call sites, where the pasted bodies meet the + constructor and primop folds and frequently reduce to constants. The + growth veto now falls back one rung at a time: a sweep whose n-ary worker + pastes overrun the expression's growth allowance is redone with only the + curried paste tiers armed before every heuristic tier is disarmed, so the + new pastes can never crowd out a previously collapsing dictionary-method + cascade (#245). diff --git a/lib/Language/PureScript/Backend/IR/Optimizer.hs b/lib/Language/PureScript/Backend/IR/Optimizer.hs index 220125c3..d6b89769 100644 --- a/lib/Language/PureScript/Backend/IR/Optimizer.hs +++ b/lib/Language/PureScript/Backend/IR/Optimizer.hs @@ -818,25 +818,31 @@ optimizeModule ctorTags inlining policy UberModule {..} = runWriterT do optimizeExp ∷ Exp → WriterT WasRewritten SupplyM Exp optimizeExp e = case inlining of SkipCallSites → keepSweep HeuristicPastes - InlineCallSites → do - -- The armed sweep is speculative: kept only while the pastes' - -- growth stays within the expression's allowance; a sweep that - -- grew without collapse is discarded — result and change flag - -- both — and the fallback sweep decides instead. - -- See Note [Bounded call-site inlining growth]. + InlineCallSites → speculativeSweep HeuristicPastes + where + -- An armed sweep is speculative: kept only while the pastes' growth + -- stays within the expression's allowance; a sweep that grew + -- without collapse is discarded — result and change flag both — and + -- redone one rung down: first with the n-ary worker tier disarmed, + -- then with every heuristic tier disarmed. + -- See Note [Bounded call-site inlining growth]. + speculativeSweep ∷ CallSitePastes → WriterT WasRewritten SupplyM Exp + speculativeSweep pastes = do (e', rewritten) ← lift $ optimizedExpressionWithPastes ctorTags canonEnv - HeuristicPastes + pastes policy inlineEnv e if expSize e' <= inlineGrowthBudget (expSize e) then e' <$ tell rewritten - else keepSweep DirectedPastesOnly - where + else case pastes of + HeuristicPastes → speculativeSweep CurriedPastesOnly + _ → keepSweep DirectedPastesOnly + keepSweep ∷ CallSitePastes → WriterT WasRewritten SupplyM Exp keepSweep pastes = do (e', rewritten) ← @@ -994,10 +1000,9 @@ match), the payload the cascade is built to collapse. inlineSizeBudget ∷ Natural inlineSizeBudget = 64 -{- | The largest expression the Deref and KnownSize inlining tiers and -the cheap-worker unfolding ('isCheapWorkerBody') paste (Note -[Complexity and Capture gate inlining]), sized in IR nodes like -'inlineSizeBudget' but far below it: these admissions duplicate at +{- | The largest expression the Deref and KnownSize inlining tiers +paste (Note [Complexity and Capture gate inlining]), sized in IR nodes +like 'inlineSizeBudget' but far below it: these admissions duplicate at every use site, so growth scales with the use count. -} smallInlineBudget ∷ Natural @@ -1021,11 +1026,17 @@ So the sweep is speculative, measured, and reverted at expression granularity ('optimizeExp'): run the rewrite with every paste tier armed, compare 'expSize' before and after, and when the result grew past 'inlineGrowthBudget' — growth without collapse — discard it, -result and change flag both, and redo the sweep with the heuristic -paste tiers disarmed ('DirectedPastesOnly'). Explicit @inline@ -directives keep firing in the fallback sweep: a directive is the user -overriding the heuristics, so the growth bound never vetoes it. The -env-reading folds ('reduceKnownCtorRefRead', +result and change flag both, and redo the sweep one rung down. The +first fallback rung ('CurriedPastesOnly') disarms only the n-ary worker +tier, the most speculative pastes (an uncurried worker's body often has +nothing at the site to fold into): without this rung, worker pastes +that alone overrun the allowance would drag the collapsing pastes at +curried spines — the dictionary-method cascade — down with them in the +all-or-nothing revert. Only when the curried tiers still overrun does +the sweep fall to 'DirectedPastesOnly', every heuristic tier disarmed. +Explicit @inline@ directives keep firing in the fallback sweeps: a +directive is the user overriding the heuristics, so the growth bound +never vetoes it. The env-reading folds ('reduceKnownCtorRefRead', 'propagateKnownCtorThroughLet') also keep firing: they only shrink, and disarming them would make the fallback sweep strictly worse than the sweep it replaces. @@ -1034,10 +1045,9 @@ The allowance is linear with a floor: @before + max smallInlineBudget (before `div` 4)@. A paste that collapses leaves little residue — the Maybe match folds to the continuation's body — so the floor only needs to admit that residue in a small host, and 'smallInlineBudget' already -prices what is free to leave at a site. A paste surviving whole is -bigger than that by construction ('isCheapWorkerBody' would have -admitted anything smaller), so even a single non-folding paste into a -small expression is refused — which is the point, not a casualty. +prices what is free to leave at a site. A paste surviving whole past +that floor is refused even alone in a small host — which is the point, +not a casualty. The proportional term is calibrated from both sides of the corpus. It must reject the chains where every paste survives — the transformer @@ -1069,12 +1079,17 @@ enforces exactly this contract). The cost is one extra sweep per vetoed expression per 'optimizeExp' call. -} -{- | Which call-site paste tiers a rewrite sweep may use: all of them, -or only those an explicit @inline@ directive commands. The fallback -sweep of the growth veto runs with 'DirectedPastesOnly'. +{- | Which call-site paste tiers a rewrite sweep may use: all of them; +the heuristic tiers at curried spines only, with the n-ary worker tier +disarmed; or only those an explicit @inline@ directive commands. The +growth veto falls back one rung at a time. See Note [Bounded call-site inlining growth]. -} -data CallSitePastes = HeuristicPastes | DirectedPastesOnly +data CallSitePastes + = HeuristicPastes + | CurriedPastesOnly + | DirectedPastesOnly + deriving stock (Eq) {- | Per-expression growth allowance for one call-site inlining sweep: the largest 'expSize' the sweep may leave behind, given the size it @@ -2451,13 +2466,13 @@ resolveDictionaryProp pastes policy env = \case , Just method ← List.lookup prop props , countFreeRef dictName method == 0 , case pastes of - HeuristicPastes → + DirectedPastesOnly → + fieldPolicy policy dictName prop == Just Always + _ → maybe (expSize method <= inlineSizeBudget) (== Always) - (fieldPolicy policy dictName prop) - DirectedPastesOnly → - fieldPolicy policy dictName prop == Just Always → + (fieldPolicy policy dictName prop) → Just . setAnn ann <$> freshenBinders method _ → pure Nothing @@ -2547,12 +2562,13 @@ Pasting a lambda (a value) duplicates no work, and 'betaReduce' let-binds any non-trivial argument rather than copy it into each use, so the reduction is behaviour-preserving (issue #167). Growth is bounded per paste by 'inlineSizeBudget' and per expression by the growth veto in 'optimizeExp' -(Note [Bounded call-site inlining growth]); in a 'DirectedPastesOnly' sweep -both heuristic tiers below are disarmed and only the directed-arity gate -pastes. The rule declines a self-referential RHS, which cannot arise for a -Standalone binding under GUC but must not be unfolded on the non-GUC input -the rewrite also runs on (Note [Eta reduction is unsound] is the reason the -environment holds no recursive-group members either). +(Note [Bounded call-site inlining growth]); a 'CurriedPastesOnly' sweep +disarms the n-ary worker tier below, and a 'DirectedPastesOnly' sweep every +heuristic tier, leaving only the directed-arity gate. The rule declines a +self-referential RHS, which cannot arise for a Standalone binding under GUC +but must not be unfolded on the non-GUC input the rewrite also runs on +(Note [Eta reduction is unsound] is the reason the environment holds no +recursive-group members either). A binding under an @inline arity=N@ directive takes a different gate: the site qualifies by argument count alone — at least N arguments applied — and @@ -2564,16 +2580,17 @@ directive pins the binding as a shared reference at partial sites. An n-ary call — the direct worker call the uncurry split mints — is not a unary spine, so 'unwindApp' leaves it whole and the paths above never -see it. Most workers are meant to stay shared bindings, but a small -worker whose body is cheap to duplicate ('isCheapWorkerBody' under -'smallInlineBudget' — the residue of a floated dictionary application -like @add = Data.Semiring.add semiringInt@, resolved through the lifted -foreign, or a tiny helper purs shares because its operator occurs more -than once) makes the call itself the whole cost: pasting folds each -site to the inline expression (issues #281, #211). The n-ary 'AbsN' -root is pasted under the original 'AppN' node — never rebuilt as a -unary spine, which would leave an under-applied redex ('pasteableRoot') -— so the exact-arity 'betaReduce' consumes it in the same pass. +see it. It takes the same heuristic gate as the unary tier: a manifest +'AbsN' within 'inlineSizeBudget', minus a multi-value body — the mark +of a result-split worker, whose 'Values' tail pasted into expression +position would truncate in a single-value slot ('containsMultiValue'). +The match requires the argument count to equal the manifest parameter +count: workers are saturated by construction, so a mismatched count +marks a shape the pipeline did not produce, left alone rather than +guessed at. The n-ary 'AbsN' root is pasted under the original 'AppN' +node — never rebuilt as a unary spine, which would leave an +under-applied redex ('pasteableRoot') — so the exact-arity 'betaReduce' +consumes it in the same pass. -} inlineSaturatedCall ∷ CallSitePastes → InlinePolicy → InlineEnv → RewriteRuleM SupplyM Ann @@ -2582,10 +2599,11 @@ inlineSaturatedCall pastes policy env expr = case expr of | HeuristicPastes ← pastes , _ : _ : _ ← toList args , Nothing ← directedArity fname - , Just rhs@(AbsN _ params body) ← Map.lookup fname env + , Just rhs@(AbsN _ params _) ← Map.lookup fname env , length args == length params - , expSize rhs < smallInlineBudget - , isCheapWorkerBody body + , expSize rhs <= inlineSizeBudget + , -- A multi-value body is never pasted (see 'containsMultiValue'). + not (containsMultiValue rhs) , countFreeRef fname rhs == 0 → (\rhs' → Just (AppN ann rhs' args)) <$> freshenBinders rhs (unwindApp → (Ref _ fname, args)) @@ -2605,7 +2623,7 @@ inlineSaturatedCall pastes policy env expr = case expr of <$> freshenBinders rhs Just _underApplied → pure Nothing Nothing - | HeuristicPastes ← pastes + | pastes /= DirectedPastesOnly , AbsN _ params _ ← rhs , length args >= length params , countFreeRef fname rhs == 0 @@ -2617,36 +2635,6 @@ inlineSaturatedCall pastes policy env expr = case expr of directedArity ∷ Qualified Name → Maybe Natural directedArity fname = refQName fname >>= (`Map.lookup` policyArity policy) -{- | Whether a worker body is cheap enough to duplicate at every -saturated call site: a tree of arithmetic, comparison, equality and -negation nodes over leaves 'complexityOf' classifies at most 'Deref' — -references (in practice the worker's parameters), scalar-sized -literals, and cheap-read chains over them, all free to re-evaluate — -possibly under nested abstractions. Such a body pastes to an inline -operator expression that duplicates no work and allocates nothing -beyond what the worker call already performed (an inner lambda pasted -at the site is exactly the closure the worker's own body allocated per -call), so 'inlineSaturatedCall' unfolds it at every saturated n-ary -call site regardless of use count (issues #281, #211), with code -growth bounded by 'smallInlineBudget' at the call site. - -'IfThenElse' is deliberately not admitted: a decision tree pasted into -expression position lowers to a per-call IIFE — the allocation the -case-of-case rules of issue #203 exist to remove — worse than the -shared worker call it would replace. An application may hide arbitrary -work and the allocating shapes (constructors, non-empty literals, -'Let') price above 'Deref', so all of them decline through the -'complexityOf' fallback, conservative for unlisted node kinds by -construction. --} -isCheapWorkerBody ∷ RawExp ann → Bool -isCheapWorkerBody = \case - PrimBinOp _ _ a b → isCheapWorkerBody a && isCheapWorkerBody b - Eq _ a b → isCheapWorkerBody a && isCheapWorkerBody b - PrimNot _ e → isCheapWorkerBody e - AbsN _ _params body → isCheapWorkerBody body - leaf → complexityOf leaf <= Deref - -- | Re-apply the arguments 'unwindApp' peeled, as a unary spine. rebuildSpine ∷ [Exp] → Exp → Exp rebuildSpine args head' = foldl' (\f a → AppN Nothing f (a :| [])) head' args diff --git a/lib/Language/PureScript/Backend/IR/Types.hs b/lib/Language/PureScript/Backend/IR/Types.hs index 13ecad94..b36ac7b0 100644 --- a/lib/Language/PureScript/Backend/IR/Types.hs +++ b/lib/Language/PureScript/Backend/IR/Types.hs @@ -225,8 +225,9 @@ user-written curried function has, so the uncurrying worker/wrapper split ("Language.PureScript.Backend.IR.Uncurry") turns an arity-≥2 constructor into an n-ary worker @λ(p₁,…,pₙ). Ctor [p₁,…,pₙ]@ plus a curried wrapper, and 'inlineSaturatedCall' pastes an arity-1 constructor at its saturated -sites, beta-reducing to an in-place 'Ctor'. A partial application stays a -call of the curried wrapper. Every rewrite that builds a 'Ctor' preserves +curried sites and an n-ary constructor worker at its saturated calls, +beta-reducing to an in-place 'Ctor'. A partial application stays a call of +the curried wrapper. Every rewrite that builds a 'Ctor' preserves saturation; the case-of-known-constructor folds (see 'reduceKnownConstructor' and 'resolveKnownCtorApp' in the optimizer) rely on it. -} diff --git a/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs b/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs index bce2e5a3..d0f0e3c2 100644 --- a/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs +++ b/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs @@ -91,6 +91,7 @@ import Language.PureScript.Backend.IR.Types , reflectCtor , setAnn , subexpressions + , values , pattern EffectRunArg ) import Language.PureScript.Backend.IR.Uniquify (uniquifyNamesInExpr) @@ -2459,13 +2460,27 @@ spec = describe "IR Optimizer" do it "drops the wrapper once every site calls the worker directly" do -- Two saturated sites and no other use: the split sends both to -- f$w, the wrapper loses its last reference, and the post-uncurry - -- fixpoint removes it. The worker (used twice) stays a shared + -- fixpoint removes it. The worker's body is grown past + -- 'inlineSizeBudget' so the call-site inliner cannot dissolve the + -- worker calls, and the worker (used twice) stays a shared -- binding. + let bulkyDef = + abstraction (paramNamed (Name "a")) $ + abstraction (paramNamed (Name "b")) $ + foldl' + (primBinOp PrimAdd) + ( application + (application g (refLocal (Name "a"))) + (refLocal (Name "b")) + ) + ( concat . replicate 16 $ + [refLocal (Name "a"), refLocal (Name "b")] + ) optimized ← checked Linker.UberModule { uberModuleForeigns = [] - , uberModuleBindings = [Standalone (fName, fDef)] + , uberModuleBindings = [Standalone (fName, bulkyDef)] , uberModuleExports = [(Name "main1", saturated 1 2), (Name "main2", saturated 3 4)] } @@ -2686,9 +2701,50 @@ spec = describe "IR Optimizer" do ) ] - it "keeps a worker whose body applies a function" do - -- callAdd = λx. λy. g (x + y): an application may hide arbitrary - -- work, so the call sites keep sharing the worker. + it "keeps a mid-sized worker out of a small host (growth veto)" do + -- Same shape as add3, but grown well past what its sites can + -- absorb: the paste is within 'inlineSizeBudget', but each site's + -- host expression is tiny, so the sweep exceeds the host's growth + -- allowance and the veto discards it + -- (Note [Bounded call-site inlining growth]). + let wideRef = refImported mainModule (Name "wide") + wideDef = + abstraction (paramNamed x) $ + abstraction (paramNamed y) $ + foldl' + (primBinOp PrimAdd) + (refLocal x) + (concat (replicate 8 [refLocal y, refLocal x])) + saturated a = application (application wideRef a) + optimized ← + checked $ + uberWith (Name "wide") wideDef [saturated n1 n2, saturated n2 n1] + topLevelNames optimized `shouldBe` [QName mainModule (Name "wide$w")] + + describe "dissolves budgeted n-ary workers into saturated call sites (#245)" do + let mainModule = moduleNameFromString "Main" + extern = moduleNameFromString "Extern" + n1 = refImported extern (Name "n1") + n2 = refImported extern (Name "n2") + n3 = refImported extern (Name "n3") + x = Name "x" + y = Name "y" + checked = either (fail . show) pure . optimizedUberModuleChecked mempty + uberWith name def sites = + Linker.UberModule + { uberModuleForeigns = [] + , uberModuleBindings = [Standalone (QName mainModule name, def)] + , uberModuleExports = + [(Name ("main" <> show i), site) | (i, site) ← zip [1 ∷ Int ..] sites] + } + topLevelNames uber = + fst <$> (listGrouping =<< Linker.uberModuleBindings uber) + + it "folds a worker whose body applies a function" do + -- callAdd = λx. λy. g (x + y): the body is not free to re-evaluate + -- (the application may hide arbitrary work), but pasting a literal + -- lambda duplicates no work and the body is far under + -- 'inlineSizeBudget', so both saturated sites paste and reduce. let g = refImported extern (Name "g") callAddRef = refImported mainModule (Name "callAdd") callAddDef = @@ -2701,12 +2757,16 @@ spec = describe "IR Optimizer" do optimized ← checked $ uberWith (Name "callAdd") callAddDef [saturated n1 n2, saturated n2 n1] - topLevelNames optimized `shouldBe` [QName mainModule (Name "callAdd$w")] + Linker.uberModuleBindings optimized `shouldBe` [] + Linker.uberModuleExports optimized + `shouldBe` [ (Name "main1", application g (primBinOp PrimAdd n1 n2)) + , (Name "main2", application g (primBinOp PrimAdd n2 n1)) + ] - it "keeps a worker whose body branches" do - -- pickOr = λx. λy. if x then y else 0: an IfThenElse pasted into - -- expression position lowers to a per-call IIFE (issue #203) — - -- worse than the shared worker call it would replace. + it "folds a worker whose body branches" do + -- pickOr = λx. λy. if x then y else 0: the site collapses to the + -- conditional itself — no worse a shape than the unary path pastes + -- at a saturated curried spine. let pickOrRef = refImported mainModule (Name "pickOr") pickOrDef = abstraction (paramNamed x) $ @@ -2716,24 +2776,74 @@ spec = describe "IR Optimizer" do optimized ← checked $ uberWith (Name "pickOr") pickOrDef [saturated n1 n2, saturated n2 n1] - topLevelNames optimized `shouldBe` [QName mainModule (Name "pickOr$w")] + Linker.uberModuleBindings optimized `shouldBe` [] + Linker.uberModuleExports optimized + `shouldBe` [ (Name "main1", ifThenElse n1 n2 (literalInt 0)) + , (Name "main2", ifThenElse n2 n1 (literalInt 0)) + ] - it "keeps a worker whose primop tree exceeds the small budget" do - -- Same shape as add3, but grown past 'smallInlineBudget': pasting - -- it at every site trades one call for unbounded code growth. - let wideRef = refImported mainModule (Name "wide") - wideDef = - abstraction (paramNamed x) $ - abstraction (paramNamed y) $ - foldl' - (primBinOp PrimAdd) - (refLocal x) - (concat (replicate 8 [refLocal y, refLocal x])) - saturated a = application (application wideRef a) + it "keeps an under- or over-applied n-ary site (guard pin)" do + -- The rule pastes at exact arity only: the uncurry run mints + -- saturated worker calls by construction, so a mismatched argument + -- count marks a shape the pipeline did not produce. + let z = Name "z" + pick3Ref = refImported mainModule (Name "pick3") + pick3Def = + abstractionN + (paramNamed x :| [paramNamed y, paramNamed z]) + ( primBinOp + PrimAdd + (primBinOp PrimAdd (refLocal x) (refLocal y)) + (refLocal z) + ) + under = applicationN pick3Ref (n1 :| [n2]) + over = applicationN pick3Ref (n1 :| [n2, n3, n1]) + optimized ← checked $ uberWith (Name "pick3") pick3Def [under, over] + topLevelNames optimized `shouldBe` [QName mainModule (Name "pick3")] + Linker.uberModuleExports optimized + `shouldBe` [(Name "main1", under), (Name "main2", over)] + + it "keeps a worker past the inline budget even in a large host" do + -- The worker body exceeds 'inlineSizeBudget', and each host is big + -- enough that the growth veto alone would admit the paste + -- (allowance is linear in host size) — the per-paste budget is + -- what keeps the worker shared. + let vs = [refImported extern (Name ("v" <> show i)) | i ← [1 ∷ Int .. 34]] + bigRef = refImported mainModule (Name "big") + bigDef = + abstractionN + (paramNamed x :| [paramNamed y]) + (foldl' (primBinOp PrimAdd) (refLocal x) (vs <> [refLocal y])) + host prefix site = + foldl' + (primBinOp PrimAdd) + site + [refImported extern (Name (prefix <> show i)) | i ← [1 ∷ Int .. 160]] optimized ← checked $ - uberWith (Name "wide") wideDef [saturated n1 n2, saturated n2 n1] - topLevelNames optimized `shouldBe` [QName mainModule (Name "wide$w")] + uberWith + (Name "big") + bigDef + [ host "h" (applicationN bigRef (n1 :| [n2])) + , host "k" (applicationN bigRef (n2 :| [n1])) + ] + topLevelNames optimized `shouldBe` [QName mainModule (Name "big")] + + it "keeps a multi-value worker" do + -- A worker minted by the result split returns its fields as Lua + -- multiple values; pasting its 'Values' tail into expression + -- position would truncate it in a single-value slot (see + -- 'containsMultiValue'). + let pairRef = refImported mainModule (Name "pair$w") + pairDef = + abstractionN + (paramNamed x :| [paramNamed y]) + (values (refLocal x :| [refLocal y])) + site a b = applicationN pairRef (a :| [b]) + optimized ← + checked $ + uberWith (Name "pair$w") pairDef [site n1 n2, site n2 n1] + topLevelNames optimized `shouldBe` [QName mainModule (Name "pair$w")] describe "bounds call-site growth on non-collapsing chains (#221)" do let mainModule = moduleNameFromString "Main" diff --git a/test/ps/output/Golden.ArrayOfUnits.Test/golden.ir b/test/ps/output/Golden.ArrayOfUnits.Test/golden.ir index e1a8c49b..c462b91b 100644 --- a/test/ps/output/Golden.ArrayOfUnits.Test/golden.ir +++ b/test/ps/output/Golden.ArrayOfUnits.Test/golden.ir @@ -41,6 +41,12 @@ UberModule }, ForeignImport Nothing ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) ), RecursiveGroup ( ( QName @@ -296,24 +302,6 @@ UberModule ) ) ] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "logShow$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) - ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictShow" ) ) ) - ( PropName "show" ) - ) - ( Ref Nothing ( Local ( Name "a" ) ) :| [] ) :| [] - ) - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -342,7 +330,7 @@ UberModule ( PropName "foldr" ) ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "x$954" ) :| [] ) + ( ParamUnused Nothing :| [] ) ( AppN Nothing ( Let Nothing ( Standalone @@ -406,17 +394,9 @@ UberModule ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) + ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "unit" ) - ) - ] :| - [ Ref Nothing ( Local ( Name "x$954" ) ) ] - ) :| [] + ( LiteralString Nothing "unit" :| [] ) :| [] ) ) :| [] ) @@ -435,15 +415,13 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( LiteralObject Nothing - [ - ( PropName "show", ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PropName "showIntImpl" ) - ) - ] :| - [ AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) + ) + ( AppN Nothing ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -465,8 +443,8 @@ UberModule ) ( LiteralInt Nothing 0 :| [] ) ) - ( Ref Nothing ( Local ( Name "arr$0" ) ) :| [] ) - ] + ( Ref Nothing ( Local ( Name "arr$0" ) ) :| [] ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.ArrayOfUnits.Test/golden.lua b/test/ps/output/Golden.ArrayOfUnits.Test/golden.lua index 6eafbac6..c09783df 100644 --- a/test/ps/output/Golden.ArrayOfUnits.Test/golden.lua +++ b/test/ps/output/Golden.ArrayOfUnits.Test/golden.lua @@ -51,6 +51,7 @@ local Effect_pureE = Effect_foreign.pureE local Effect_Console_foreign = { log = function(s) return function() print(s) end end } +local Effect_Console_log = Effect_Console_foreign.log local Data_Foldable_foldableArray Data_Foldable_foldableArray = { foldr = Data_Foldable_foreign.foldrArray, @@ -106,29 +107,22 @@ Effect_Lazy_applyEffect = PSLUA_runtime_lazy("applyEffect")(function() Functor0 = function() return Effect_Lazy_functorEffect(0) end } end) -local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_foreign.log(dictShow.show(a)) -end return (function() local arr_S_0 = { [1] = Data_Unit_unit, [2] = Data_Unit_unit, [3] = Data_Unit_unit } - local _ = Data_Foldable_foldableArray.foldr(function(x_S_1) + local _ = Data_Foldable_foldableArray.foldr(function() local dictApply_S_0 = Effect_applicativeEffect.Apply0() - local a_S_2 = Effect_Console_logShow_S_w({ - show = function() return "unit" end - }, x_S_1) + local a_S_2 = Effect_Console_log("unit") return function(b_S_0) return dictApply_S_0.apply((dictApply_S_0.Functor0()).map(function() - return function(x_S_2) return x_S_2 end + return function(x_S_1) return x_S_1 end end)(a_S_2))(b_S_0) end end)(Effect_pureE(Data_Unit_unit))(arr_S_0)() - return Effect_Console_logShow_S_w({ - show = Data_Show_foreign.showIntImpl - }, Data_Foldable_foldableArray.foldl(function(c_S_0) + return Effect_Console_log(Data_Show_foreign.showIntImpl(Data_Foldable_foldableArray.foldl(function( c_S_0 ) return function() return 1 + c_S_0 end - end)(0)(arr_S_0))() + end)(0)(arr_S_0)))() end)() diff --git a/test/ps/output/Golden.BugListGenericEq.Test/golden.ir b/test/ps/output/Golden.BugListGenericEq.Test/golden.ir index c30a7e30..9163cbc3 100644 --- a/test/ps/output/Golden.BugListGenericEq.Test/golden.ir +++ b/test/ps/output/Golden.BugListGenericEq.Test/golden.ir @@ -7,6 +7,12 @@ UberModule ( ModuleName "Record.Unsafe" ) ".spago/p/prelude/5718c84fdde6247749cb053e816df696c30fe691/src/Record/Unsafe.purs" [ ( Nothing, Name "unsafeGet" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Record.Unsafe", qnameName = Name "unsafeGet" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Record.Unsafe" ) ( Name "foreign" ) ) ) + ( PropName "unsafeGet" ) + ), Standalone ( QName { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -18,13 +24,6 @@ UberModule }, ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "log" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Type.Proxy", qnameName = Name "Proxy" - }, Ctor Nothing ProductType - ( ModuleName "Type.Proxy" ) - ( TyName "Proxy" ) - ( CtorName "Proxy" ) [] ), RecursiveGroup ( ( QName @@ -92,98 +91,6 @@ UberModule ] ) :| [] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Eq", qnameName = Name "eqRowCons$w" }, AbsN Nothing - ( ParamNamed Nothing - ( Name "dictEqRecord" ) :| - [ ParamNamed Nothing - ( Name "eqRowCons$u2" ), ParamNamed Nothing - ( Name "dictIsSymbol" ), ParamNamed Nothing - ( Name "dictEq" ) - ] - ) - ( LiteralObject Nothing - [ - ( PropName "eqRecord", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "ra" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "rb" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "key", AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictIsSymbol" ) ) ) - ( PropName "reflectSymbol" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Type.Proxy" ) ( Name "Proxy" ) ) :| [] - ) - ) :| - [ Standalone - ( Nothing, Name "get", AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Record.Unsafe" ) ( Name "foreign" ) ) - ) - ( PropName "unsafeGet" ) - ) - ( Ref Nothing ( Local ( Name "key" ) ) :| [] ) - ) - ] - ) - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.HeytingAlgebra" ) - ( Name "heytingAlgebraBoolean" ) - ) - ) - ( PropName "conj" ) - ) - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictEq" ) ) ) - ( PropName "eq" ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "get" ) ) ) - ( Ref Nothing ( Local ( Name "ra" ) ) :| [] ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "get" ) ) ) - ( Ref Nothing ( Local ( Name "rb" ) ) :| [] ) :| [] - ) :| [] - ) - ) - ( AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictEqRecord" ) ) ) - ( PropName "eqRecord" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Type.Proxy" ) ( Name "Proxy" ) ) :| [] - ) - ) - ( Ref Nothing ( Local ( Name "ra" ) ) :| [] ) - ) - ( Ref Nothing ( Local ( Name "rb" ) ) :| [] ) :| [] - ) - ) - ) - ) - ) - ) - ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.BugListGenericEq.Test", qnameName = Name "Nil" }, Ctor Nothing SumType @@ -264,7 +171,7 @@ UberModule ( ParamNamed Nothing ( Name "y" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse264", Ctor Nothing SumType + ( Nothing, Name "$cse305", Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) ( TyName "Sum" ) ( CtorName "Inl" ) @@ -283,7 +190,7 @@ UberModule ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Nil" ) ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x" ) ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse264" ) ) ) + ( Ref Nothing ( Local ( Name "$cse305" ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) ( TyName "Sum" ) @@ -298,117 +205,161 @@ UberModule ( ParamNamed Nothing ( Name "v1$8" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse266", ReflectCtor Nothing + ( Nothing, Name "$cse310", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v1$8" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse265", ReflectCtor Nothing + ( Nothing, Name "$cse309", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v$7" ) ) ) ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse265" ) ) ) - ) - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse266" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse308", ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.HeytingAlgebra" ) + ( Name "heytingAlgebraBoolean" ) + ) + ) + ( PropName "conj" ) + ) :| [] ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse265" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse307", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v1$8" ) ) ) + ) :| [] ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse266" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse306", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v$7" ) ) ) + ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) + ( Ref Nothing ( Local ( Name "$cse306" ) ) ) + ) + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) + ( Ref Nothing ( Local ( Name "$cse307" ) ) ) + ) + ( PrimBinOp Nothing PrimAnd + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) + ( Ref Nothing ( Local ( Name "$cse306" ) ) ) + ) + ( PrimBinOp Nothing PrimAnd + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) + ( Ref Nothing ( Local ( Name "$cse307" ) ) ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "key$254", LiteralString Nothing "head" + ) :| + [ Standalone + ( Nothing, Name "get$255", AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Record.Unsafe" ) + ( Name "unsafeGet" ) + ) + ) + ( Ref Nothing ( Local ( Name "key$254" ) ) :| [] ) ) - ) + ] + ) + ( AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) + ( Ref Nothing ( Local ( Name "$cse308" ) ) ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictEq" ) ) ) + ( PropName "eq" ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "get$255" ) ) ) + ( Ref Nothing + ( Local ( Name "$cse309" ) ) :| [] + ) :| [] + ) ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "get$255" ) ) ) + ( Ref Nothing + ( Local ( Name "$cse310" ) ) :| [] + ) :| [] + ) :| [] ) - ( LiteralObject Nothing - [ - ( PropName "eqRecord", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) ( LiteralBool Nothing True ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "key$244", LiteralString Nothing "tail" + ) :| + [ Standalone + ( Nothing, Name "get$245", AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Record.Unsafe" ) + ( Name "unsafeGet" ) ) ) - ) - ] :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "tail" ) + ( Ref Nothing + ( Local ( Name "key$244" ) ) :| [] ) - ], AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "eqList" ) - ) - ) - ( Ref Nothing - ( Local ( Name "dictEq" ) ) :| [] ) ] - ) :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "head" ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "$cse308" ) ) ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.BugListGenericEq.Test" ) + ( Name "eqList" ) + ) + ) + ( Ref Nothing + ( Local ( Name "dictEq" ) ) :| [] + ) + ) + ( PropName "eq" ) + ) + ( AppN Nothing + ( Ref Nothing + ( Local ( Name "get$245" ) ) + ) + ( Ref Nothing + ( Local ( Name "$cse309" ) ) :| [] + ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Local ( Name "get$245" ) ) + ) + ( Ref Nothing + ( Local ( Name "$cse310" ) ) :| [] + ) :| [] + ) :| [] ) - ], Ref Nothing - ( Local ( Name "dictEq" ) ) - ] + ) + ( LiteralBool Nothing True :| [] ) + ) :| [] ) ) - ( PropName "eqRecord" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Type.Proxy" ) - ( Name "Proxy" ) - ) :| [] ) ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$7" ) ) ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$8" ) ) ) :| [] ) ) ) @@ -423,7 +374,7 @@ UberModule ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Nil" ) ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "y" ) ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse264" ) ) ) + ( Ref Nothing ( Local ( Name "$cse305" ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) ( TyName "Sum" ) @@ -464,22 +415,6 @@ UberModule ) ) ( PropName "eq" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.BugListGenericEq.Test", qnameName = Name "cons$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "head" ) :| [ ParamNamed Nothing ( Name "tail" ) ] ) - ( Ctor Nothing SumType - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( TyName "List" ) - ( CtorName "Cons" ) - [ LiteralObject Nothing - [ - ( PropName "head", Ref Nothing ( Local ( Name "head" ) ) ), - ( PropName "tail", Ref Nothing ( Local ( Name "tail" ) ) ) - ] - ] - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -493,14 +428,16 @@ UberModule ( ParamNamed Nothing ( Name "cons$p1$229" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "cons$p2$230" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "cons$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "cons$p1$229" ) ) :| - [ Ref Nothing ( Local ( Name "cons$p2$230" ) ) ] - ) + ( Ctor Nothing SumType + ( ModuleName "Golden.BugListGenericEq.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", Ref Nothing ( Local ( Name "cons$p1$229" ) ) ), + ( PropName "tail", Ref Nothing ( Local ( Name "cons$p2$230" ) ) ) + ] + ] ) ) ), @@ -508,98 +445,117 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "Nil" ) - ) :| [] - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "Nil" ) - ) :| [] - ) + ( Nothing, Name "$cse312", Ctor Nothing SumType + ( ModuleName "Golden.BugListGenericEq.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 2 ), + ( PropName "tail", Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse311", Ctor Nothing SumType + ( ModuleName "Golden.BugListGenericEq.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 1 ), + ( PropName "tail", Ref Nothing ( Local ( Name "$cse312" ) ) ) + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) - ) ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) + ) ( Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "cons$w" ) - ) + ( Name "Nil" ) + ) :| [] ) - ( LiteralInt Nothing 1 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "cons$w" ) - ) - ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "Nil" ) - ) - ] - ) - ] - ) :| [] ) - ) - ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "cons$w" ) - ) + ( Name "Nil" ) + ) :| [] ) - ( LiteralInt Nothing 1 :| - [ AppN Nothing + ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "cons$w" ) + ( Name "eq" ) ) ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing + ( Ref Nothing ( Local ( Name "$cse311" ) ) :| [] ) + ) + ( Ref Nothing ( Local ( Name "$cse311" ) ) :| [] ) + ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.BugListGenericEq.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 1 ), + ( PropName "tail", Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) - ] - ) - ] - ) :| [] + ) + ] + ] :| [] + ) ) + ( Ref Nothing ( Local ( Name "$cse312" ) ) :| [] ) ) ( LiteralString Nothing "true" ) ( LiteralString Nothing "false" ) :| [] @@ -607,44 +563,7 @@ UberModule ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) - ] - ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "cons$w" ) ) - ) - ( LiteralInt Nothing 1 :| - [ Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) - ] - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "cons$w" ) ) - ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) - ] - ) :| [] - ) - ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] - ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ), diff --git a/test/ps/output/Golden.BugListGenericEq.Test/golden.lua b/test/ps/output/Golden.BugListGenericEq.Test/golden.lua index 1e065453..489dc786 100644 --- a/test/ps/output/Golden.BugListGenericEq.Test/golden.lua +++ b/test/ps/output/Golden.BugListGenericEq.Test/golden.lua @@ -2,11 +2,11 @@ local M = {} local Record_Unsafe_foreign = { unsafeGet = function(l) return function(r) return r[l] end end } +local Record_Unsafe_unsafeGet = Record_Unsafe_foreign.unsafeGet local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log -local Type_Proxy_Proxy = {} local Data_HeytingAlgebra_heytingAlgebraBoolean Data_HeytingAlgebra_heytingAlgebraBoolean = { ff = false, @@ -24,22 +24,6 @@ Data_HeytingAlgebra_heytingAlgebraBoolean = { end, _not_ = function(b_S_0) return not(b_S_0) end } -local Data_Eq_eqRowCons_S_w = function( dictEqRecord -, eqRowCons_S_u2 -, dictIsSymbol -, dictEq ) - return { - eqRecord = function() - return function(ra) - return function(rb) - local key = dictIsSymbol.reflectSymbol(Type_Proxy_Proxy) - local get = Record_Unsafe_foreign.unsafeGet(key) - return Data_HeytingAlgebra_heytingAlgebraBoolean.conj(dictEq.eq(get(ra))(get(rb)))(dictEqRecord.eqRecord(Type_Proxy_Proxy)(ra)(rb)) - end - end - end - } -end local Golden_BugListGenericEq_Test_Nil = { "Golden.BugListGenericEq.Test∷List.Nil" } @@ -82,20 +66,23 @@ Golden_BugListGenericEq_Test_eqList = function(dictEq) return { "Data.Generic.Rep∷Sum.Inr", y[2] } end end)() - local _S_cse1 = v1_S_0[1] - local _S_cse2 = v_S_0[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse2 then - return "Data.Generic.Rep∷Sum.Inl" == _S_cse1 + local _S_cse1 = v1_S_0[2] + local _S_cse2 = v_S_0[2] + local _S_cse3 = Data_HeytingAlgebra_heytingAlgebraBoolean.conj + local _S_cse4 = v1_S_0[1] + local _S_cse5 = v_S_0[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse5 then + return "Data.Generic.Rep∷Sum.Inl" == _S_cse4 else - return "Data.Generic.Rep∷Sum.Inr" == _S_cse2 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse1 and (Data_Eq_eqRowCons_S_w(Data_Eq_eqRowCons_S_w({ - eqRecord = function() - return function() return function() return true end end - end - }, nil, { - reflectSymbol = function() return "tail" end - }, Golden_BugListGenericEq_Test_eqList(dictEq)), nil, { - reflectSymbol = function() return "head" end - }, dictEq)).eqRecord(Type_Proxy_Proxy)(v_S_0[2])(v1_S_0[2])) + return "Data.Generic.Rep∷Sum.Inr" == _S_cse5 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse4 and (function( ) + local key_S_0 = "head" + local get_S_0 = Record_Unsafe_unsafeGet(key_S_0) + return _S_cse3(dictEq.eq(get_S_0(_S_cse2))(get_S_0(_S_cse1)))((function( ) + local key_S_1 = "tail" + local get_S_1 = Record_Unsafe_unsafeGet(key_S_1) + return _S_cse3((Golden_BugListGenericEq_Test_eqList(dictEq)).eq(get_S_1(_S_cse2))(get_S_1(_S_cse1)))(true) + end)()) + end)()) end end end @@ -104,13 +91,15 @@ end local Golden_BugListGenericEq_Test_eq = (Golden_BugListGenericEq_Test_eqList({ eq = function(r1_S_0) return function(r2_S_0) return r1_S_0 == r2_S_0 end end })).eq -local Golden_BugListGenericEq_Test_cons_S_w = function(head, tail) - return { +return (function() + local _S_cse6 = { "Golden.BugListGenericEq.Test∷List.Cons", - { head = head, tail = tail } + { head = 2, tail = Golden_BugListGenericEq_Test_Nil } + } + local _S_cse7 = { + "Golden.BugListGenericEq.Test∷List.Cons", + { head = 1, tail = _S_cse6 } } -end -return (function() local _ = Effect_Console_log((function() if Golden_BugListGenericEq_Test_eq(Golden_BugListGenericEq_Test_Nil)(Golden_BugListGenericEq_Test_Nil) then return "true" @@ -119,14 +108,17 @@ return (function() end end)())() local _ = Effect_Console_log((function() - if Golden_BugListGenericEq_Test_eq(Golden_BugListGenericEq_Test_cons_S_w(1, Golden_BugListGenericEq_Test_cons_S_w(2, Golden_BugListGenericEq_Test_Nil)))(Golden_BugListGenericEq_Test_cons_S_w(1, Golden_BugListGenericEq_Test_cons_S_w(2, Golden_BugListGenericEq_Test_Nil))) then + if Golden_BugListGenericEq_Test_eq(_S_cse7)(_S_cse7) then return "true" else return "false" end end)())() return Effect_Console_log((function() - if Golden_BugListGenericEq_Test_eq(Golden_BugListGenericEq_Test_cons_S_w(1, Golden_BugListGenericEq_Test_Nil))(Golden_BugListGenericEq_Test_cons_S_w(2, Golden_BugListGenericEq_Test_Nil)) then + if Golden_BugListGenericEq_Test_eq({ + "Golden.BugListGenericEq.Test∷List.Cons", + { head = 1, tail = Golden_BugListGenericEq_Test_Nil } + })(_S_cse6) then return "true" else return "false" diff --git a/test/ps/output/Golden.CSE.Test/golden.ir b/test/ps/output/Golden.CSE.Test/golden.ir index 60c5f75e..0524f6e4 100644 --- a/test/ps/output/Golden.CSE.Test/golden.ir +++ b/test/ps/output/Golden.CSE.Test/golden.ir @@ -124,15 +124,15 @@ UberModule ( ParamNamed Nothing ( Name "x" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse260", ObjectProp Nothing + ( Nothing, Name "$cse280", ObjectProp Nothing ( Ref Nothing ( Local ( Name "r" ) ) ) ( PropName "run" ) ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse260" ) ) ) + ( Ref Nothing ( Local ( Name "$cse280" ) ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse260" ) ) ) + ( Ref Nothing ( Local ( Name "$cse280" ) ) ) ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) :| [] ) ) @@ -145,7 +145,7 @@ UberModule ( ParamNamed Nothing ( Name "e" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse261", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse281", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "e" ) ) ) ) :| [] ) @@ -157,14 +157,14 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Num" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Zero" ) ( ReflectCtor Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "$cse261" ) ) ) + ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ) @@ -174,7 +174,7 @@ UberModule ( LiteralString Nothing "Golden.CSE.Test∷N.Succ" ) ( ReflectCtor Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "$cse261" ) ) ) + ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ) @@ -185,7 +185,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Not" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ( LiteralInt Nothing 2 ) ( Exception Nothing "No patterns matched" ) @@ -194,13 +194,13 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Zero" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ( LiteralInt Nothing 3 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Succ" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse281" ) ) ) ) ) ( LiteralInt Nothing 4 ) ( Exception Nothing "No patterns matched" ) @@ -215,7 +215,7 @@ UberModule ( ParamNamed Nothing ( Name "f" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse262", LiteralArray Nothing + ( Nothing, Name "$cse282", LiteralArray Nothing [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 ] ) :| [] ) @@ -224,12 +224,12 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "append" ) ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse262" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse282" ) ) :| [] ) :| [] ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse262" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse282" ) ) :| [] ) :| [] ) ) ) @@ -242,7 +242,7 @@ UberModule ( ParamNamed Nothing ( Name "xs" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse263", AbsN Nothing + ( Nothing, Name "$cse283", AbsN Nothing ( ParamNamed Nothing ( Name "i" ) :| [] ) ( PrimBinOp Nothing PrimAdd ( Ref Nothing ( Local ( Name "i" ) ) ) @@ -256,7 +256,7 @@ UberModule ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "map" ) ) ) - ( Ref Nothing ( Local ( Name "$cse263" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse283" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "xs" ) ) :| [] ) :| [] ) @@ -264,7 +264,7 @@ UberModule ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "map" ) ) ) - ( Ref Nothing ( Local ( Name "$cse263" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse283" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "xs" ) ) :| [] ) :| [] ) @@ -294,7 +294,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse265", Ctor Nothing SumType + ( Nothing, Name "$cse285", Ctor Nothing SumType ( ModuleName "Golden.CSE.Test" ) ( TyName "E" ) ( CtorName "Num" ) @@ -303,11 +303,11 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse264", Ctor Nothing SumType + ( Nothing, Name "$cse284", Ctor Nothing SumType ( ModuleName "Golden.CSE.Test" ) ( TyName "E" ) ( CtorName "Not" ) - [ Ref Nothing ( Local ( Name "$cse265" ) ) ] + [ Ref Nothing ( Local ( Name "$cse285" ) ) ] ) :| [] ) ( Let Nothing @@ -454,7 +454,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) ) - ( Ref Nothing ( Local ( Name "$cse265" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse285" ) ) :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -494,7 +494,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) ) - ( Ref Nothing ( Local ( Name "$cse264" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse284" ) ) :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -512,7 +512,7 @@ UberModule ( ModuleName "Golden.CSE.Test" ) ( TyName "E" ) ( CtorName "Not" ) - [ Ref Nothing ( Local ( Name "$cse264" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "$cse284" ) ) ] :| [] ) :| [] ) ) diff --git a/test/ps/output/Golden.CasePruning.Test/golden.ir b/test/ps/output/Golden.CasePruning.Test/golden.ir index 8db79ba9..319bfdea 100644 --- a/test/ps/output/Golden.CasePruning.Test/golden.ir +++ b/test/ps/output/Golden.CasePruning.Test/golden.ir @@ -106,31 +106,31 @@ UberModule ( ParamNamed Nothing ( Name "v1" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse244", ReflectCtor Nothing + ( Nothing, Name "$cse283", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse243", ReflectCtor Nothing + ( Nothing, Name "$cse282", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.A" ) - ( Ref Nothing ( Local ( Name "$cse243" ) ) ) + ( Ref Nothing ( Local ( Name "$cse282" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.A" ) - ( Ref Nothing ( Local ( Name "$cse244" ) ) ) + ( Ref Nothing ( Local ( Name "$cse283" ) ) ) ) ( LiteralInt Nothing 1 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse244" ) ) ) + ( Ref Nothing ( Local ( Name "$cse283" ) ) ) ) ( LiteralInt Nothing 3 ) ( LiteralInt Nothing 4 ) @@ -139,12 +139,12 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse244" ) ) ) + ( Ref Nothing ( Local ( Name "$cse283" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse243" ) ) ) + ( Ref Nothing ( Local ( Name "$cse282" ) ) ) ) ( LiteralInt Nothing 2 ) ( LiteralInt Nothing 4 ) diff --git a/test/ps/output/Golden.CprResult.Test/golden.ir b/test/ps/output/Golden.CprResult.Test/golden.ir index 6e93bc16..1d156571 100644 --- a/test/ps/output/Golden.CprResult.Test/golden.ir +++ b/test/ps/output/Golden.CprResult.Test/golden.ir @@ -25,41 +25,31 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "log" ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "sub$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$523" ) :| [ ParamNamed Nothing ( Name "y$524" ) ] ) + ( ParamNamed Nothing ( Name "x$535" ) :| [ ParamNamed Nothing ( Name "y$536" ) ] ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "x$523" ) ) ) - ( Ref Nothing ( Local ( Name "y$524" ) ) ) + ( Ref Nothing ( Local ( Name "x$535" ) ) ) + ( Ref Nothing ( Local ( Name "y$536" ) ) ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "logShow" }, AbsN Nothing - ( ParamNamed Nothing ( Name "a$520" ) :| [] ) + ( ParamNamed Nothing ( Name "a$532" ) :| [] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( Ref Nothing ( Local ( Name "a$520" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "a$532" ) ) :| [] ) :| [] ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "logShow1" }, AbsN Nothing - ( ParamNamed Nothing ( Name "a$517" ) :| [] ) + ( ParamNamed Nothing ( Name "a$529" ) :| [] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( PrimBinOp Nothing PrimConcat @@ -68,7 +58,7 @@ UberModule ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( DataArgumentByIndex Nothing ProductType 0 - ( Ref Nothing ( Local ( Name "a$517" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "a$529" ) ) ) :| [] ) ) ( PrimBinOp Nothing PrimConcat @@ -77,7 +67,7 @@ UberModule ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "a$517" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "a$529" ) ) ) :| [] ) ) ( LiteralString Nothing ")" ) @@ -91,16 +81,16 @@ UberModule { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "step" }, AbsN Nothing ( ParamNamed Nothing ( Name "s" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( PrimBinOp Nothing PrimMul + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ PrimBinOp Nothing PrimMul ( Ref Nothing ( Local ( Name "s" ) ) ) - ( LiteralInt Nothing 2 ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "s" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( LiteralInt Nothing 2 ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "s" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) ), Standalone ( QName @@ -120,9 +110,11 @@ UberModule ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "pair" - }, AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( LiteralInt Nothing 20 :| [ LiteralInt Nothing 11 ] ) + }, Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ LiteralInt Nothing 20, LiteralInt Nothing 11 ] ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "branchy$r" @@ -295,7 +287,7 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "n" ) :| [] ) ( LetValues Nothing - ( ParamNamed Nothing ( Name "$v594" ) :| [ ParamNamed Nothing ( Name "$v595" ) ] ) + ( ParamNamed Nothing ( Name "$v628" ) :| [ ParamNamed Nothing ( Name "$v629" ) ] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) @@ -303,8 +295,8 @@ UberModule ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$v594" ) ) ) - ( Ref Nothing ( Local ( Name "$v595" ) ) ) + ( Ref Nothing ( Local ( Name "$v628" ) ) ) + ( Ref Nothing ( Local ( Name "$v629" ) ) ) ) ) ), Standalone @@ -451,14 +443,14 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "n" ) :| [] ) ( LetValues Nothing - ( ParamNamed Nothing ( Name "$v596" ) :| [ ParamNamed Nothing ( Name "$v597" ) ] ) + ( ParamNamed Nothing ( Name "$v630" ) :| [ ParamNamed Nothing ( Name "$v631" ) ] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "big$r" ) ) ) ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v596" ) ) ) - ( Ref Nothing ( Local ( Name "$v597" ) ) ) + ( Ref Nothing ( Local ( Name "$v630" ) ) ) + ( Ref Nothing ( Local ( Name "$v631" ) ) ) ) ) ) @@ -520,8 +512,8 @@ UberModule ) ( LetValues Nothing ( ParamNamed Nothing - ( Name "$v598" ) :| - [ ParamNamed Nothing ( Name "$v599" ) ] + ( Name "$v632" ) :| + [ ParamNamed Nothing ( Name "$v633" ) ] ) ( AppN Nothing ( Ref Nothing @@ -534,8 +526,8 @@ UberModule ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "sub$w" ) ) ) ( Ref Nothing - ( Local ( Name "$v598" ) ) :| - [ Ref Nothing ( Local ( Name "$v599" ) ) ] + ( Local ( Name "$v632" ) ) :| + [ Ref Nothing ( Local ( Name "$v633" ) ) ] ) ) :| [] ) @@ -549,8 +541,8 @@ UberModule ) ( LetValues Nothing ( ParamNamed Nothing - ( Name "$v600" ) :| - [ ParamNamed Nothing ( Name "$v601" ) ] + ( Name "$v634" ) :| + [ ParamNamed Nothing ( Name "$v635" ) ] ) ( AppN Nothing ( Ref Nothing @@ -563,8 +555,8 @@ UberModule ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "sub$w" ) ) ) ( Ref Nothing - ( Local ( Name "$v600" ) ) :| - [ Ref Nothing ( Local ( Name "$v601" ) ) ] + ( Local ( Name "$v634" ) ) :| + [ Ref Nothing ( Local ( Name "$v635" ) ) ] ) ) :| [] ) @@ -590,7 +582,7 @@ UberModule ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow" ) ) ) ( LetValues Nothing - ( ParamNamed Nothing ( Name "$v602" ) :| [ ParamNamed Nothing ( Name "$v603" ) ] ) + ( ParamNamed Nothing ( Name "$v636" ) :| [ ParamNamed Nothing ( Name "$v637" ) ] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "big$r" ) ) @@ -598,8 +590,8 @@ UberModule ( LiteralInt Nothing 3 :| [] ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v602" ) ) ) - ( Ref Nothing ( Local ( Name "$v603" ) ) ) + ( Ref Nothing ( Local ( Name "$v636" ) ) ) + ( Ref Nothing ( Local ( Name "$v637" ) ) ) ) :| [] ) ) diff --git a/test/ps/output/Golden.CprResult.Test/golden.lua b/test/ps/output/Golden.CprResult.Test/golden.lua index bc2931f0..2ac2d0ab 100644 --- a/test/ps/output/Golden.CprResult.Test/golden.lua +++ b/test/ps/output/Golden.CprResult.Test/golden.lua @@ -5,9 +5,6 @@ local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log -local Data_Tuple_Tuple_S_w = function(value0, value1) - return { value0, value1 } -end local Golden_CprResult_Test_sub_S_w = function(x_S_0, y_S_0) return x_S_0 - y_S_0 end @@ -17,11 +14,9 @@ end local Golden_CprResult_Test_logShow1 = function(a_S_1) return Effect_Console_log("(Tuple " .. Data_Show_showIntImpl(a_S_1[1]) .. " " .. Data_Show_showIntImpl(a_S_1[2]) .. ")") end -M.Golden_CprResult_Test_step = function(s) - return Data_Tuple_Tuple_S_w(s * 2, s + 1) -end +M.Golden_CprResult_Test_step = function(s) return { s * 2, s + 1 } end M.Golden_CprResult_Test_useStep = function(n) return n * 2 + (n + 1) end -local Golden_CprResult_Test_pair = Data_Tuple_Tuple_S_w(20, 11) +local Golden_CprResult_Test_pair = { 20, 11 } local Golden_CprResult_Test_branchy_S_r = function(n) if n >= 0 and n ~= 0 then local b1 = n + 7 diff --git a/test/ps/output/Golden.CprState.Test/golden.ir b/test/ps/output/Golden.CprState.Test/golden.ir index 10efe3ff..129f52e7 100644 --- a/test/ps/output/Golden.CprState.Test/golden.ir +++ b/test/ps/output/Golden.CprState.Test/golden.ir @@ -25,16 +25,6 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Identity", qnameName = Name "applyIdentity" }, LiteralObject Nothing @@ -335,19 +325,17 @@ UberModule ) ( AbsN Nothing ( ParamNamed Nothing ( Name "v1$510" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( AppN Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ AppN Nothing ( Ref Nothing ( Local ( Name "f$507" ) ) ) ( DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "v1$510" ) ) ) :| [] - ) :| - [ DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "v1$510" ) ) ) - ] - ) + ), DataArgumentByIndex Nothing ProductType 1 + ( Ref Nothing ( Local ( Name "v1$510" ) ) ) + ] ) :| [] ) ) @@ -388,12 +376,14 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Local ( Name "a" ) ) :| - [ Ref Nothing ( Local ( Name "s" ) ) ] - ) :| [] + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Local ( Name "a" ) ), Ref Nothing + ( Local ( Name "s" ) ) + ] :| [] ) ) ) @@ -423,10 +413,12 @@ UberModule ( QName { qnameModuleName = ModuleName "Golden.CprState.Test", qnameName = Name "get" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$679" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing ( Local ( Name "x$679" ) ) :| [ Ref Nothing ( Local ( Name "x$679" ) ) ] ) + ( ParamNamed Nothing ( Name "x$701" ) :| [] ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Local ( Name "x$701" ) ), Ref Nothing ( Local ( Name "x$701" ) ) ] ) ), Standalone ( QName @@ -453,15 +445,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x1" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x1" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -491,17 +486,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x2" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x2" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -537,17 +533,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x3" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x3" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -586,23 +583,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x4" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x4" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -641,23 +633,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x5" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x5" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -696,25 +683,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x6" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x6" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -755,25 +735,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x7" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x7" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -814,27 +789,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x8" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x8" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -875,27 +845,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x9" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x9" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -936,27 +901,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x10" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x10" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) diff --git a/test/ps/output/Golden.CprState.Test/golden.lua b/test/ps/output/Golden.CprState.Test/golden.lua index 54f016de..8fea6229 100644 --- a/test/ps/output/Golden.CprState.Test/golden.lua +++ b/test/ps/output/Golden.CprState.Test/golden.lua @@ -4,9 +4,6 @@ local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Tuple_Tuple_S_w = function(value0, value1) - return { value0, value1 } -end local Data_Identity_applyIdentity = { apply = function(v) return function(v1) return v(v1) end end, Functor0 = function() @@ -79,7 +76,7 @@ Control_Monad_State_Trans_applyStateT = function(dictMonad) return function(v_S_1) return function(s_S_0) return (((dictMonad.Bind1()).Apply0()).Functor0()).map(function( v1_S_0 ) - return Data_Tuple_Tuple_S_w(f_S_3(v1_S_0[1]), v1_S_0[2]) + return { f_S_3(v1_S_0[1]), v1_S_0[2] } end)(v_S_1(s_S_0)) end end @@ -91,9 +88,7 @@ end Control_Monad_State_Trans_applicativeStateT = function(dictMonad) return { pure = function(a) - return function(s) - return (dictMonad.Applicative0()).pure(Data_Tuple_Tuple_S_w(a, s)) - end + return function(s) return (dictMonad.Applicative0()).pure({ a, s }) end end, Apply0 = function() return Control_Monad_State_Trans_applyStateT(dictMonad) @@ -101,48 +96,46 @@ Control_Monad_State_Trans_applicativeStateT = function(dictMonad) } end local Golden_CprState_Test_bindStateT = Control_Monad_State_Trans_bindStateT(Data_Identity_monadIdentity) -local Golden_CprState_Test_get = function(x_S_1) - return Data_Tuple_Tuple_S_w(x_S_1, x_S_1) -end +local Golden_CprState_Test_get = function(x_S_1) return { x_S_1, x_S_1 } end local Golden_CprState_Test_go = Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x1 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x1 + 1) + return { Data_Unit_unit, x1 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x2 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x2 + 1) + return { Data_Unit_unit, x2 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x3 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x3 + 1) + return { Data_Unit_unit, x3 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x4 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x4 + 1) + return { Data_Unit_unit, x4 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x5 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x5 + 1) + return { Data_Unit_unit, x5 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x6 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x6 + 1) + return { Data_Unit_unit, x6 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x7 ) return Golden_CprState_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x7 + 1) + return { Data_Unit_unit, x7 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x8 ) return Golden_CprState_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x8 + 1) + return { Data_Unit_unit, x8 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x9 ) return Golden_CprState_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x9 + 1) + return { Data_Unit_unit, x9 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( x10 ) return Golden_CprState_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x10 + 1) + return { Data_Unit_unit, x10 + 1 } end)(function() return Golden_CprState_Test_bindStateT.bind(Golden_CprState_Test_get)(function( final ) return (Control_Monad_State_Trans_applicativeStateT(Data_Identity_monadIdentity)).pure(x1 + x5 + final) diff --git a/test/ps/output/Golden.DerivedFunctor.Test/golden.ir b/test/ps/output/Golden.DerivedFunctor.Test/golden.ir index 1b6cfc72..5c828ae0 100644 --- a/test/ps/output/Golden.DerivedFunctor.Test/golden.ir +++ b/test/ps/output/Golden.DerivedFunctor.Test/golden.ir @@ -32,24 +32,6 @@ UberModule ( TyName "Tree" ) ( CtorName "Leaf" ) [] ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "Node$w" - }, AbsN Nothing - ( ParamNamed Nothing - ( Name "value0" ) :| - [ ParamNamed Nothing ( Name "value1" ), ParamNamed Nothing ( Name "value2" ) ] - ) - ( Ctor Nothing SumType - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( TyName "Tree" ) - ( CtorName "Node" ) - [ Ref Nothing - ( Local ( Name "value0" ) ), Ref Nothing - ( Local ( Name "value1" ) ), Ref Nothing - ( Local ( Name "value2" ) ) - ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "Left" }, AbsN Nothing @@ -118,7 +100,7 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse246", ObjectProp Nothing + ( Nothing, Name "$cse269", ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) @@ -136,32 +118,30 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Node$w" ) ) - ) - ( AppN Nothing + ( Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ AppN Nothing ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse246" ) ) ) + ( Ref Nothing ( Local ( Name "$cse269" ) ) ) ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) ) ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] - ) :| - [ AppN Nothing - ( Ref Nothing ( Local ( Name "f" ) ) ) - ( DataArgumentByIndex Nothing SumType 1 - ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] - ), AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse246" ) ) ) - ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) - ) - ( DataArgumentByIndex Nothing SumType 2 - ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] - ) - ] - ) + ), AppN Nothing + ( Ref Nothing ( Local ( Name "f" ) ) ) + ( DataArgumentByIndex Nothing SumType 1 + ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] + ), AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "$cse269" ) ) ) + ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) + ) + ( DataArgumentByIndex Nothing SumType 2 + ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] + ) + ] ) ) ) @@ -180,7 +160,7 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse247", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse270", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) @@ -193,7 +173,7 @@ UberModule ( ModuleName "Golden.DerivedFunctor.Test" ) ( TyName "Either" ) ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse247" ) ) ] + [ Ref Nothing ( Local ( Name "$cse270" ) ) ] ) ( Ctor Nothing SumType ( ModuleName "Golden.DerivedFunctor.Test" ) @@ -201,7 +181,7 @@ UberModule ( CtorName "Right" ) [ AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse247" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse270" ) ) :| [] ) ] ) ) @@ -209,19 +189,6 @@ UberModule ) ) ] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "fromRight$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "fallback" ) :| [ ParamNamed Nothing ( Name "v" ) ] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Left" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) - ) - ( Ref Nothing ( Local ( Name "fallback" ) ) ) - ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v" ) ) ) ) - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -240,17 +207,15 @@ UberModule ( ParamNamed Nothing ( Name "Node$p2$212" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "Node$p3$213" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Node$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "Node$p1$211" ) ) :| - [ Ref Nothing - ( Local ( Name "Node$p2$212" ) ), Ref Nothing - ( Local ( Name "Node$p3$213" ) ) - ] - ) + ( Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ Ref Nothing + ( Local ( Name "Node$p1$211" ) ), Ref Nothing + ( Local ( Name "Node$p2$212" ) ), Ref Nothing + ( Local ( Name "Node$p3$213" ) ) + ] ) ) ) @@ -259,13 +224,14 @@ UberModule ( ParamNamed Nothing ( Name "fromRight$p1$209" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "fromRight$p2$210" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "fromRight$w" ) ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Left" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "fromRight$p2$210" ) ) ) ) ) - ( Ref Nothing - ( Local ( Name "fromRight$p1$209" ) ) :| - [ Ref Nothing ( Local ( Name "fromRight$p2$210" ) ) ] + ( Ref Nothing ( Local ( Name "fromRight$p1$209" ) ) ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "fromRight$p2$210" ) ) ) ) ) ) @@ -282,22 +248,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "fromRight$w" ) - ) - ) - ( LiteralInt Nothing 0 :| - [ Ctor Nothing SumType - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( TyName "Either" ) - ( CtorName "Right" ) - [ LiteralInt Nothing 42 ] - ] - ) :| [] - ) :| [] + ( LiteralInt Nothing 42 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -308,22 +259,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "fromRight$w" ) - ) - ) - ( LiteralInt Nothing 7 :| - [ Ctor Nothing SumType - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( TyName "Either" ) - ( CtorName "Left" ) - [ LiteralString Nothing "no" ] - ] - ) :| [] - ) :| [] + ( LiteralInt Nothing 7 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -358,44 +294,32 @@ UberModule ) :| [] ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Node$w" ) ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Node$w" ) ) - ) - ( Ref Nothing + ( Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 1, Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) - ] - ) :| - [ LiteralInt Nothing 2, AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "Node$w" ) - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 3, Ref Nothing - ( Imported - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "Leaf" ) - ) - ] - ) + ), LiteralInt Nothing 1, Ref Nothing + ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) + ], LiteralInt Nothing 2, Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ Ref Nothing + ( Imported + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( Name "Leaf" ) + ), LiteralInt Nothing 3, Ref Nothing + ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) ] - ) :| [] + ] :| [] ) :| [] ) :| [] ) :| [] diff --git a/test/ps/output/Golden.DerivedFunctor.Test/golden.lua b/test/ps/output/Golden.DerivedFunctor.Test/golden.lua index b6764066..e2ca9e49 100644 --- a/test/ps/output/Golden.DerivedFunctor.Test/golden.lua +++ b/test/ps/output/Golden.DerivedFunctor.Test/golden.lua @@ -8,9 +8,6 @@ local Effect_Console_log = Effect_Console_foreign.log local Golden_DerivedFunctor_Test_Leaf = { "Golden.DerivedFunctor.Test∷Tree.Leaf" } -local Golden_DerivedFunctor_Test_Node_S_w = function(value0, value1, value2) - return { "Golden.DerivedFunctor.Test∷Tree.Node", value0, value1, value2 } -end M.Golden_DerivedFunctor_Test_Left = function(value0) return { "Golden.DerivedFunctor.Test∷Either.Left", value0 } end @@ -33,7 +30,12 @@ Golden_DerivedFunctor_Test_functorTree = { if "Golden.DerivedFunctor.Test∷Tree.Leaf" == m[1] then return Golden_DerivedFunctor_Test_Leaf else - return Golden_DerivedFunctor_Test_Node_S_w(_S_cse0(f)(m[2]), f(m[3]), _S_cse0(f)(m[4])) + return { + "Golden.DerivedFunctor.Test∷Tree.Node", + _S_cse0(f)(m[2]), + f(m[3]), + (_S_cse0(f)(m[4])) + } end end end @@ -50,23 +52,25 @@ M.Golden_DerivedFunctor_Test_functorEither = { end end } -local Golden_DerivedFunctor_Test_fromRight_S_w = function(fallback, v) - if "Golden.DerivedFunctor.Test∷Either.Left" == v[1] then - return fallback - else - return v[2] - end -end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(0, { - "Golden.DerivedFunctor.Test∷Either.Right", - 42 - })))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(7, { - "Golden.DerivedFunctor.Test∷Either.Left", - "no" - })))() + local _ = Effect_Console_log(Data_Show_showIntImpl(42))() + local _ = Effect_Console_log(Data_Show_showIntImpl(7))() return Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_sumTree(Golden_DerivedFunctor_Test_functorTree.map(function( v1_S_0 ) return v1_S_0 * 2 - end)(Golden_DerivedFunctor_Test_Node_S_w(Golden_DerivedFunctor_Test_Node_S_w(Golden_DerivedFunctor_Test_Leaf, 1, Golden_DerivedFunctor_Test_Leaf), 2, Golden_DerivedFunctor_Test_Node_S_w(Golden_DerivedFunctor_Test_Leaf, 3, Golden_DerivedFunctor_Test_Leaf))))))() + end)({ + "Golden.DerivedFunctor.Test∷Tree.Node", + { + "Golden.DerivedFunctor.Test∷Tree.Node", + Golden_DerivedFunctor_Test_Leaf, + 1, + Golden_DerivedFunctor_Test_Leaf + }, + 2, + { + "Golden.DerivedFunctor.Test∷Tree.Node", + Golden_DerivedFunctor_Test_Leaf, + 3, + Golden_DerivedFunctor_Test_Leaf + } + }))))() end)() diff --git a/test/ps/output/Golden.DirectiveDerived.Test/golden.ir b/test/ps/output/Golden.DirectiveDerived.Test/golden.ir index 7d386f9e..761def04 100644 --- a/test/ps/output/Golden.DirectiveDerived.Test/golden.ir +++ b/test/ps/output/Golden.DirectiveDerived.Test/golden.ir @@ -209,7 +209,7 @@ UberModule ( Imported ( ModuleName "Golden.DirectiveDerived.Test" ) ( Name "combine" ) ) ), ( Name "onePlusTwo", AbsN Nothing - ( ParamNamed Nothing ( Name "c$373" ) :| [] ) + ( ParamNamed Nothing ( Name "c$376" ) :| [] ) ( PrimBinOp Nothing PrimSub ( PrimBinOp Nothing PrimSub ( PrimBinOp Nothing PrimSub @@ -252,7 +252,7 @@ UberModule ( PrimBinOp Nothing PrimSub ( Ref Nothing ( Local - ( Name "c$373" ) + ( Name "c$376" ) ) ) ( LiteralInt Nothing 1 ) diff --git a/test/ps/output/Golden.DirectivePack.Test/golden.ir b/test/ps/output/Golden.DirectivePack.Test/golden.ir index 93ed9d47..eb69e164 100644 --- a/test/ps/output/Golden.DirectivePack.Test/golden.ir +++ b/test/ps/output/Golden.DirectivePack.Test/golden.ir @@ -106,85 +106,6 @@ UberModule ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Nothing" ) [] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Show.Generic", qnameName = Name "genericShowConstructor$w" - }, AbsN Nothing - ( ParamNamed Nothing - ( Name "dictGenericShowArgs" ) :| - [ ParamNamed Nothing ( Name "dictIsSymbol" ) ] - ) - ( LiteralObject Nothing - [ - ( PropName "genericShow'", AbsN Nothing - ( ParamNamed Nothing ( Name "v" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "ctor", AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictIsSymbol" ) ) ) - ( PropName "reflectSymbol" ) - ) - ( Ctor Nothing ProductType - ( ModuleName "Type.Proxy" ) - ( TyName "Proxy" ) - ( CtorName "Proxy" ) [] :| [] - ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v1", AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictGenericShowArgs" ) ) ) - ( PropName "genericShowArgs" ) - ) - ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralInt Nothing 0 ) - ( ArrayLength Nothing ( Ref Nothing ( Local ( Name "v1" ) ) ) ) - ) - ( Ref Nothing ( Local ( Name "ctor" ) ) ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "(" ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show.Generic" ) ( Name "foreign" ) ) - ) - ( PropName "intercalate" ) - ) - ( LiteralString Nothing " " :| [] ) - ) - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Semigroup" ) ( Name "foreign" ) ) - ) - ( PropName "concatArray" ) - ) - ( LiteralArray Nothing - [ Ref Nothing ( Local ( Name "ctor" ) ) ] :| [] - ) - ) - ( Ref Nothing ( Local ( Name "v1" ) ) :| [] ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) - ) - ) - ) - ) - ) - ] - ) ), RecursiveGroup ( ( QName @@ -248,9 +169,9 @@ UberModule ( LiteralObject Nothing [ ( PropName "map", AbsN Nothing - ( ParamNamed Nothing ( Name "f$448" ) :| [] ) + ( ParamNamed Nothing ( Name "f$512" ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "a$449" ) :| [] ) + ( ParamNamed Nothing ( Name "a$513" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -274,10 +195,10 @@ UberModule ) ( PropName "pure" ) ) - ( Ref Nothing ( Local ( Name "f$448" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "f$512" ) ) :| [] ) :| [] ) ) - ( Ref Nothing ( Local ( Name "a$449" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "a$513" ) ) :| [] ) ) ) ) @@ -462,13 +383,13 @@ UberModule }, LiteralObject Nothing [ ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "x$437" ) :| [] ) + ( ParamNamed Nothing ( Name "x$501" ) :| [] ) ( Let Nothing ( Standalone ( Nothing, Name "v$7", IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DirectivePack.Test∷Fruit.Apple" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x$437" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x$501" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -485,7 +406,7 @@ UberModule ( TyName "Sum" ) ( CtorName "Inr" ) [ DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "x$437" ) ) ) + ( Ref Nothing ( Local ( Name "x$501" ) ) ) ] ) ) :| [] @@ -495,75 +416,55 @@ UberModule ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$7" ) ) ) ) ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show.Generic" ) - ( Name "genericShowConstructor$w" ) + ( LiteralString Nothing "Apple" ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v1$490", LiteralArray Nothing + [ AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ) - ( LiteralObject Nothing - [ - ( PropName "genericShowArgs", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralArray Nothing [] ) - ) - ] :| - [ LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "Apple" ) - ) - ] - ] - ) - ) - ( PropName "genericShow'" ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$7" ) ) ) :| [] - ) - ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show.Generic" ) - ( Name "genericShowConstructor$w" ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v$7" ) ) ) :| [] ) - ) - ( LiteralObject Nothing - [ - ( PropName "genericShowArgs", AbsN Nothing - ( ParamNamed Nothing ( Name "v$12" ) :| [] ) - ( LiteralArray Nothing - [ AppN Nothing + ] + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralInt Nothing 0 ) + ( ArrayLength Nothing ( Ref Nothing ( Local ( Name "v1$490" ) ) ) ) + ) + ( LiteralString Nothing "Banana" ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "(" ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Show.Generic" ) ( Name "foreign" ) ) + ) + ( PropName "intercalate" ) + ) + ( LiteralString Nothing " " :| [] ) + ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ( Imported ( ModuleName "Data.Semigroup" ) ( Name "foreign" ) ) ) - ( Ref Nothing ( Local ( Name "v$12" ) ) :| [] ) - ] + ( PropName "concatArray" ) + ) + ( LiteralArray Nothing [ LiteralString Nothing "Banana" ] :| [] ) ) + ( Ref Nothing ( Local ( Name "v1$490" ) ) :| [] ) :| [] ) - ] :| - [ LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "Banana" ) - ) - ] - ] + ) + ( LiteralString Nothing ")" ) ) ) - ( PropName "genericShow'" ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$7" ) ) ) :| [] ) ) ) @@ -574,9 +475,9 @@ UberModule ( QName { qnameModuleName = ModuleName "Golden.DirectivePack.Test", qnameName = Name "pipeline" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$431" ) :| [] ) + ( ParamNamed Nothing ( Name "x$471" ) :| [] ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x$431" ) ) ) + ( Ref Nothing ( Local ( Name "x$471" ) ) ) ( LiteralInt Nothing 1 ) ) ), Standalone @@ -835,44 +736,18 @@ UberModule ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "fruit: " ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show.Generic" ) - ( Name "genericShowConstructor$w" ) - ) - ) - ( LiteralObject Nothing - [ - ( PropName "genericShowArgs", AbsN Nothing - ( ParamNamed Nothing ( Name "v$519" ) :| [] ) - ( LiteralArray Nothing - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ( Ref Nothing ( Local ( Name "v$519" ) ) :| [] ) - ] - ) - ) - ] :| - [ LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "Banana" ) - ) - ] - ] - ) - ) - ( PropName "genericShow'" ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.DirectivePack.Test" ) + ( Name "describeFruit" ) ) - ( LiteralInt Nothing 3 :| [] ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.DirectivePack.Test" ) + ( TyName "Fruit" ) + ( CtorName "Banana" ) + [ LiteralInt Nothing 3 ] :| [] ) :| [] ) ) @@ -885,7 +760,12 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.DirectivePack.Test" ) ( Name "show" ) ) ) - ( LiteralInt Nothing 42 :| [] ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.DirectivePack.Test" ) ( Name "pipeline" ) ) + ) + ( LiteralInt Nothing 41 :| [] ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -926,18 +806,18 @@ UberModule ( PropName "modifyImpl" ) ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "s$499" ) :| [] ) + ( ParamNamed Nothing ( Name "s$601" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "s'$500", PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "s$499" ) ) ) + ( Nothing, Name "s'$602", PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "s$601" ) ) ) ( LiteralInt Nothing 3 ) ) :| [] ) ( LiteralObject Nothing [ - ( PropName "state", Ref Nothing ( Local ( Name "s'$500" ) ) ), - ( PropName "value", Ref Nothing ( Local ( Name "s'$500" ) ) ) + ( PropName "state", Ref Nothing ( Local ( Name "s'$602" ) ) ), + ( PropName "value", Ref Nothing ( Local ( Name "s'$602" ) ) ) ] ) ) :| [] diff --git a/test/ps/output/Golden.DirectivePack.Test/golden.lua b/test/ps/output/Golden.DirectivePack.Test/golden.lua index 2c78d619..7396e18e 100644 --- a/test/ps/output/Golden.DirectivePack.Test/golden.lua +++ b/test/ps/output/Golden.DirectivePack.Test/golden.lua @@ -89,22 +89,6 @@ local Data_Semigroup_semigroupString = { } local Data_Show_show = function(dict) return dict.show end local Data_Maybe_Nothing = { "Data.Maybe∷Maybe.Nothing" } -local Data_Show_Generic_genericShowConstructor_S_w = function( dictGenericShowArgs -, dictIsSymbol ) - return { - genericShowPrime = function(v) - local ctor = dictIsSymbol.reflectSymbol({}) - local v1 = dictGenericShowArgs.genericShowArgs(v) - if 0 == #(v1) then - return ctor - else - return "(" .. Data_Show_Generic_foreign.intercalate(" ")(Data_Semigroup_foreign.concatArray({ - [1] = ctor - })(v1)) .. ")" - end - end - } -end local Effect_bindEffect local Effect_applicativeEffect local Effect_monadEffect = { @@ -180,23 +164,20 @@ local Golden_DirectivePack_Test_showFruit = { end end)() if "Data.Generic.Rep∷Sum.Inl" == v_S_0[1] then - return (Data_Show_Generic_genericShowConstructor_S_w({ - genericShowArgs = function() return {} end - }, { - reflectSymbol = function() return "Apple" end - })).genericShowPrime(v_S_0[2]) + return "Apple" else - return (Data_Show_Generic_genericShowConstructor_S_w({ - genericShowArgs = function(v_S_1) - return { [1] = Data_Show_showIntImpl(v_S_1) } - end - }, { - reflectSymbol = function() return "Banana" end - })).genericShowPrime(v_S_0[2]) + local v1_S_0 = { [1] = Data_Show_showIntImpl(v_S_0[2]) } + if 0 == #(v1_S_0) then + return "Banana" + else + return "(" .. Data_Show_Generic_foreign.intercalate(" ")(Data_Semigroup_foreign.concatArray({ + [1] = "Banana" + })(v1_S_0)) .. ")" + end end end } -M.Golden_DirectivePack_Test_pipeline = function(x_S_1) return x_S_1 + 1 end +local Golden_DirectivePack_Test_pipeline = function(x_S_1) return x_S_1 + 1 end M.Golden_DirectivePack_Test_half = function(n) if Data_EuclideanRing_intMod(n)(2) == 0 then return { "Data.Maybe∷Maybe.Just", (Data_EuclideanRing_intDiv(n)(2)) } @@ -204,7 +185,7 @@ M.Golden_DirectivePack_Test_half = function(n) return Data_Maybe_Nothing end end -M.Golden_DirectivePack_Test_describeFruit = function(x_S_2) +local Golden_DirectivePack_Test_describeFruit = function(x_S_2) return Data_Semigroup_semigroupString.append("fruit: ")(Data_Show_show(Golden_DirectivePack_Test_showFruit)(x_S_2)) end M.Golden_DirectivePack_Test_classify = function(n) @@ -259,12 +240,11 @@ return (function() return "Nothing" end end)())() - local _ = Effect_Console_log("fruit: " .. (Data_Show_Generic_genericShowConstructor_S_w({ - genericShowArgs = function(v_S_2) - return { [1] = Data_Show_showIntImpl(v_S_2) } - end - }, { reflectSymbol = function() return "Banana" end })).genericShowPrime(3))() - local _ = Effect_Console_log(Golden_DirectivePack_Test_show(42))() + local _ = Effect_Console_log(Golden_DirectivePack_Test_describeFruit({ + "Golden.DirectivePack.Test∷Fruit.Banana", + 3 + }))() + local _ = Effect_Console_log(Golden_DirectivePack_Test_show(Golden_DirectivePack_Test_pipeline(41)))() local _ = Effect_Console_log("positive")() local r_S_0 = Effect_Ref_foreign._new(10)() local _ = Effect_functorEffect.map(function() diff --git a/test/ps/output/Golden.FloatIn.Test/golden.ir b/test/ps/output/Golden.FloatIn.Test/golden.ir index 62c20647..9faaf959 100644 --- a/test/ps/output/Golden.FloatIn.Test/golden.ir +++ b/test/ps/output/Golden.FloatIn.Test/golden.ir @@ -49,44 +49,6 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "foreign" ) ) ) ( PropName "tick" ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.FloatIn.Test", qnameName = Name "pickShared$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "useIt" ) :| [ ParamNamed Nothing ( Name "n" ) ] ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "useIt" ) ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "shared", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "tick" ) ) ) - ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "f", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "shared" ) ) ) - ( Ref Nothing ( Local ( Name "shared" ) ) ) - ) - ) :| [] - ) - ( PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) - ) - ) - ) - ) - ( LiteralInt Nothing 0 ) - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.FloatIn.Test", qnameName = Name "expensive" }, AbsN Nothing @@ -98,30 +60,6 @@ UberModule ) ( LiteralInt Nothing 1 ) ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.FloatIn.Test", qnameName = Name "pick$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "useIt" ) :| [ ParamNamed Nothing ( Name "n" ) ] ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "useIt" ) ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "shared", PrimBinOp Nothing PrimAdd - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "n" ) ) ) - ( Ref Nothing ( Local ( Name "n" ) ) ) - ) - ( LiteralInt Nothing 1 ) - ) :| [] - ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "shared" ) ) ) - ( Ref Nothing ( Local ( Name "shared" ) ) ) - ) - ) - ( LiteralInt Nothing 0 ) - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -135,12 +73,24 @@ UberModule ( ParamNamed Nothing ( Name "pick$p1$206" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "pick$p2$207" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pick$w" ) ) ) - ( Ref Nothing - ( Local ( Name "pick$p1$206" ) ) :| - [ Ref Nothing ( Local ( Name "pick$p2$207" ) ) ] + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "pick$p1$206" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "shared$227", PrimBinOp Nothing PrimAdd + ( PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "pick$p2$207" ) ) ) + ( Ref Nothing ( Local ( Name "pick$p2$207" ) ) ) + ) + ( LiteralInt Nothing 1 ) + ) :| [] + ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "shared$227" ) ) ) + ( Ref Nothing ( Local ( Name "shared$227" ) ) ) + ) ) + ( LiteralInt Nothing 0 ) ) ) ), @@ -148,14 +98,38 @@ UberModule ( ParamNamed Nothing ( Name "pickShared$p1$208" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "pickShared$p2$209" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pickShared$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "pickShared$p1$208" ) ) :| - [ Ref Nothing ( Local ( Name "pickShared$p2$209" ) ) ] + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "pickShared$p1$208" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "shared$237", AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "tick" ) ) ) + ( Ref Nothing ( Local ( Name "pickShared$p2$209" ) ) :| [] ) + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "f$238", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "shared$237" ) ) ) + ( Ref Nothing ( Local ( Name "shared$237" ) ) ) + ) + ) :| [] + ) + ( PrimBinOp Nothing PrimAdd + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f$238" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f$238" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) + ) + ) + ) ) + ( LiteralInt Nothing 0 ) ) ) ), @@ -168,12 +142,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pick$w" ) ) - ) - ( LiteralBool Nothing True :| [ LiteralInt Nothing 3 ] ) :| [] - ) :| [] + ( LiteralInt Nothing 20 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -184,12 +153,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pick$w" ) ) - ) - ( LiteralBool Nothing False :| [ LiteralInt Nothing 3 ] ) :| [] - ) :| [] + ( LiteralInt Nothing 0 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -199,11 +163,40 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pickShared$w" ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "shared$284", AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "tick" ) ) + ) + ( LiteralInt Nothing 3 :| [] ) + ) :| [] ) - ( LiteralBool Nothing True :| [ LiteralInt Nothing 3 ] ) :| [] + ( Let Nothing + ( Standalone + ( Nothing, Name "f$285", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "shared$284" ) ) ) + ( Ref Nothing ( Local ( Name "shared$284" ) ) ) + ) + ) :| [] + ) + ( PrimBinOp Nothing PrimAdd + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f$285" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f$285" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] + ) + ) + ) + ) :| [] ) :| [] ) ) @@ -216,12 +209,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FloatIn.Test" ) ( Name "pickShared$w" ) ) - ) - ( LiteralBool Nothing False :| [ LiteralInt Nothing 3 ] ) :| [] - ) :| [] + ( LiteralInt Nothing 0 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.FloatIn.Test/golden.lua b/test/ps/output/Golden.FloatIn.Test/golden.lua index 327e8b12..03ff58ee 100644 --- a/test/ps/output/Golden.FloatIn.Test/golden.lua +++ b/test/ps/output/Golden.FloatIn.Test/golden.lua @@ -11,27 +11,14 @@ local Golden_FloatIn_Test_foreign = { tick = function(n) print("tick") return n + n end } local Golden_FloatIn_Test_tick = Golden_FloatIn_Test_foreign.tick -local Golden_FloatIn_Test_pickShared_S_w = function(useIt, n) - if useIt then - local shared = Golden_FloatIn_Test_tick(n) - local f = function() return shared + shared end - return f(Data_Unit_unit) + f(Data_Unit_unit) - else - return 0 - end -end M.Golden_FloatIn_Test_expensive = function(x) return x * x + 1 end -local Golden_FloatIn_Test_pick_S_w = function(useIt, n) - if useIt then - local shared = n * n + 1 - return shared + shared - else - return 0 - end -end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FloatIn_Test_pick_S_w(true, 3)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FloatIn_Test_pick_S_w(false, 3)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FloatIn_Test_pickShared_S_w(true, 3)))() - return Effect_Console_log(Data_Show_showIntImpl(Golden_FloatIn_Test_pickShared_S_w(false, 3)))() + local _ = Effect_Console_log(Data_Show_showIntImpl(20))() + local _ = Effect_Console_log(Data_Show_showIntImpl(0))() + local _ = Effect_Console_log(Data_Show_showIntImpl((function() + local shared_S_0 = Golden_FloatIn_Test_tick(3) + local f_S_0 = function() return shared_S_0 + shared_S_0 end + return f_S_0(Data_Unit_unit) + f_S_0(Data_Unit_unit) + end)()))() + return Effect_Console_log(Data_Show_showIntImpl(0))() end)() diff --git a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir index 6dbf9b74..204c8669 100644 --- a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir +++ b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir @@ -274,34 +274,34 @@ UberModule ( ParamNamed Nothing ( Name "v1$8" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse584", ReflectCtor Nothing + ( Nothing, Name "$cse1357", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$8" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse583", ReflectCtor Nothing + ( Nothing, Name "$cse1356", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$7" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse583" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1356" ) ) ) ) ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse584" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1357" ) ) ) ) ( PrimBinOp Nothing PrimAnd ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse583" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1356" ) ) ) ) ( PrimBinOp Nothing PrimAnd ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse584" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1357" ) ) ) ) ( AppN Nothing ( AppN Nothing @@ -406,26 +406,6 @@ UberModule [ Ref Nothing ( Local ( Name "value0" ) ) ] ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "node$w" - }, AbsN Nothing - ( ParamNamed Nothing - ( Name "left" ) :| - [ ParamNamed Nothing ( Name "value" ), ParamNamed Nothing ( Name "right" ) ] - ) - ( Ctor Nothing SumType - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( TyName "Tree" ) - ( CtorName "Node" ) - [ LiteralObject Nothing - [ - ( PropName "left", Ref Nothing ( Local ( Name "left" ) ) ), - ( PropName "value", Ref Nothing ( Local ( Name "value" ) ) ), - ( PropName "right", Ref Nothing ( Local ( Name "right" ) ) ) - ] - ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "genericTree" }, LiteralObject Nothing @@ -533,7 +513,7 @@ UberModule ( ParamNamed Nothing ( Name "y" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse585", ObjectProp Nothing + ( Nothing, Name "$cse1358", ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) @@ -648,12 +628,12 @@ UberModule ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse585" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1358" ) ) ) ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) :| [] ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse585" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1358" ) ) ) ( Ref Nothing ( Local ( Name "y" ) ) :| [] ) :| [] ) ) @@ -688,7 +668,7 @@ UberModule ( ParamNamed Nothing ( Name "y" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse586", ObjectProp Nothing + ( Nothing, Name "$cse1359", ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) @@ -781,12 +761,12 @@ UberModule ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse586" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1359" ) ) ) ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) :| [] ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse586" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1359" ) ) ) ( Ref Nothing ( Local ( Name "y" ) ) :| [] ) :| [] ) ) @@ -807,22 +787,6 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Eq" ) ( Name "eqInt" ) ) :| [] ) ) ( PropName "eq" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "cons$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "head" ) :| [ ParamNamed Nothing ( Name "tail" ) ] ) - ( Ctor Nothing SumType - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( TyName "List" ) - ( CtorName "Cons" ) - [ LiteralObject Nothing - [ - ( PropName "head", Ref Nothing ( Local ( Name "head" ) ) ), - ( PropName "tail", Ref Nothing ( Local ( Name "tail" ) ) ) - ] - ] - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -836,14 +800,16 @@ UberModule ( ParamNamed Nothing ( Name "cons$p1$219" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "cons$p2$220" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "cons$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "cons$p1$219" ) ) :| - [ Ref Nothing ( Local ( Name "cons$p2$220" ) ) ] - ) + ( Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", Ref Nothing ( Local ( Name "cons$p1$219" ) ) ), + ( PropName "tail", Ref Nothing ( Local ( Name "cons$p2$220" ) ) ) + ] + ] ) ) ), @@ -859,17 +825,17 @@ UberModule ( ParamNamed Nothing ( Name "node$p2$222" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "node$p3$223" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "node$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "node$p1$221" ) ) :| - [ Ref Nothing - ( Local ( Name "node$p2$222" ) ), Ref Nothing - ( Local ( Name "node$p3$223" ) ) + ( Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ LiteralObject Nothing + [ + ( PropName "left", Ref Nothing ( Local ( Name "node$p1$221" ) ) ), + ( PropName "value", Ref Nothing ( Local ( Name "node$p2$222" ) ) ), + ( PropName "right", Ref Nothing ( Local ( Name "node$p3$223" ) ) ) ] - ) + ] ) ) ) @@ -878,262 +844,215 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) - ) - ( AppN Nothing - ( Ref Nothing + ( Nothing, Name "$cse1363", Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 2 ), + ( PropName "tail", Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Nil" ) ) + ) + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse1362", Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ LiteralObject Nothing + [ + ( PropName "left", Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) + ), + ( PropName "value", LiteralInt Nothing 2 ), + ( PropName "right", Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) + ) + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse1361", Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 1 ), + ( PropName "tail", Ref Nothing ( Local ( Name "$cse1363" ) ) ) + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse1360", Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ LiteralObject Nothing + [ + ( PropName "left", Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) + ( Name "Leaf" ) ) - ) - ( LiteralInt Nothing 1 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) - ) - ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing + ), + ( PropName "value", LiteralInt Nothing 1 ), + ( PropName "right", Ref Nothing ( Local ( Name "$cse1362" ) ) ) + ] + ] + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Nil" ) + ( Name "eq1" ) ) - ] + ) + ( Ref Nothing ( Local ( Name "$cse1361" ) ) :| [] ) ) - ] - ) :| [] + ( Ref Nothing ( Local ( Name "$cse1361" ) ) :| [] ) + ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] + ) ) - ) - ( AppN Nothing ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) - ) + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ( LiteralInt Nothing 1 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) - ) - ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Nil" ) - ) - ] - ) - ] - ) :| [] - ) - ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) - ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) - ) + ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( LiteralInt Nothing 1 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Nil" ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eq1" ) + ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "List" ) + ( CtorName "Cons" ) + [ LiteralObject Nothing + [ + ( PropName "head", LiteralInt Nothing 1 ), + ( PropName "tail", Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "Nil" ) + ) + ) + ] + ] :| [] + ) ) - ] - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) + ( Ref Nothing ( Local ( Name "$cse1363" ) ) :| [] ) + ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] ) ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Nil" ) - ) - ] - ) :| [] - ) - ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq" ) ) + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "node$w" ) - ) + ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 1, AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "node$w" ) - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 2, Ref Nothing + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) + ( Name "eq" ) ) - ] + ) + ( Ref Nothing ( Local ( Name "$cse1360" ) ) :| [] ) ) - ] - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "node$w" ) + ( Ref Nothing ( Local ( Name "$cse1360" ) ) :| [] ) + ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] ) ) ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 1, AppN Nothing + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] + ) + ) + ] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "node$w" ) + ( Name "eq" ) ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 2, Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) - ] + ( Ctor Nothing SumType + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( TyName "Tree" ) + ( CtorName "Node" ) + [ LiteralObject Nothing + [ + ( PropName "left", Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "Leaf" ) + ) + ), + ( PropName "value", LiteralInt Nothing 1 ), + ( PropName "right", Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "Leaf" ) + ) + ) + ] + ] :| [] ) - ] - ) :| [] - ) - ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) - ] - ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq" ) ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "node$w" ) + ) + ( Ref Nothing ( Local ( Name "$cse1362" ) ) :| [] ) ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 1, Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) - ] - ) :| [] ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "node$w" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) :| - [ LiteralInt Nothing 2, Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) - ] - ) :| [] + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) :| [] ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ), diff --git a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua index 6fe2b406..fcb1ae00 100644 --- a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua +++ b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua @@ -99,12 +99,6 @@ local Golden_GenericEqTwoTypes_Test_Nil = { M.Golden_GenericEqTwoTypes_Test_Cons = function(value0) return { "Golden.GenericEqTwoTypes.Test∷List.Cons", value0 } end -local Golden_GenericEqTwoTypes_Test_node_S_w = function(left, value, right) - return { - "Golden.GenericEqTwoTypes.Test∷Tree.Node", - { left = left, value = value, right = right } - } -end local Golden_GenericEqTwoTypes_Test_genericTree = { to = function(x) if "Data.Generic.Rep∷Sum.Inl" == x[1] then @@ -171,36 +165,60 @@ Golden_GenericEqTwoTypes_Test_eqList = function(dictEq) } end local Golden_GenericEqTwoTypes_Test_eq1 = (Golden_GenericEqTwoTypes_Test_eqList(Data_Eq_eqInt)).eq -local Golden_GenericEqTwoTypes_Test_cons_S_w = function(head, tail) - return { +return (function() + local _S_cse4 = { "Golden.GenericEqTwoTypes.Test∷List.Cons", - { head = head, tail = tail } + { head = 2, tail = Golden_GenericEqTwoTypes_Test_Nil } + } + local _S_cse5 = { + "Golden.GenericEqTwoTypes.Test∷Tree.Node", + { + left = Golden_GenericEqTwoTypes_Test_Leaf, + value = 2, + right = Golden_GenericEqTwoTypes_Test_Leaf + } + } + local _S_cse6 = { + "Golden.GenericEqTwoTypes.Test∷List.Cons", + { head = 1, tail = _S_cse4 } + } + local _S_cse7 = { + "Golden.GenericEqTwoTypes.Test∷Tree.Node", + { left = Golden_GenericEqTwoTypes_Test_Leaf, value = 1, right = _S_cse5 } } -end -return (function() local _ = Effect_Console_log((function() - if Golden_GenericEqTwoTypes_Test_eq1(Golden_GenericEqTwoTypes_Test_cons_S_w(1, Golden_GenericEqTwoTypes_Test_cons_S_w(2, Golden_GenericEqTwoTypes_Test_Nil)))(Golden_GenericEqTwoTypes_Test_cons_S_w(1, Golden_GenericEqTwoTypes_Test_cons_S_w(2, Golden_GenericEqTwoTypes_Test_Nil))) then + if Golden_GenericEqTwoTypes_Test_eq1(_S_cse6)(_S_cse6) then return "true" else return "false" end end)())() local _ = Effect_Console_log((function() - if Golden_GenericEqTwoTypes_Test_eq1(Golden_GenericEqTwoTypes_Test_cons_S_w(1, Golden_GenericEqTwoTypes_Test_Nil))(Golden_GenericEqTwoTypes_Test_cons_S_w(2, Golden_GenericEqTwoTypes_Test_Nil)) then + if Golden_GenericEqTwoTypes_Test_eq1({ + "Golden.GenericEqTwoTypes.Test∷List.Cons", + { head = 1, tail = Golden_GenericEqTwoTypes_Test_Nil } + })(_S_cse4) then return "true" else return "false" end end)())() local _ = Effect_Console_log((function() - if Golden_GenericEqTwoTypes_Test_eq(Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 1, Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 2, Golden_GenericEqTwoTypes_Test_Leaf)))(Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 1, Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 2, Golden_GenericEqTwoTypes_Test_Leaf))) then + if Golden_GenericEqTwoTypes_Test_eq(_S_cse7)(_S_cse7) then return "true" else return "false" end end)())() return Effect_Console_log((function() - if Golden_GenericEqTwoTypes_Test_eq(Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 1, Golden_GenericEqTwoTypes_Test_Leaf))(Golden_GenericEqTwoTypes_Test_node_S_w(Golden_GenericEqTwoTypes_Test_Leaf, 2, Golden_GenericEqTwoTypes_Test_Leaf)) then + if Golden_GenericEqTwoTypes_Test_eq({ + "Golden.GenericEqTwoTypes.Test∷Tree.Node", + { + left = Golden_GenericEqTwoTypes_Test_Leaf, + value = 1, + right = Golden_GenericEqTwoTypes_Test_Leaf + } + })(_S_cse5) then return "true" else return "false" diff --git a/test/ps/output/Golden.LongStackBind.Test/golden.ir b/test/ps/output/Golden.LongStackBind.Test/golden.ir index 9b9ff0dc..5da80d7d 100644 --- a/test/ps/output/Golden.LongStackBind.Test/golden.ir +++ b/test/ps/output/Golden.LongStackBind.Test/golden.ir @@ -151,7 +151,7 @@ UberModule ( ParamNamed Nothing ( Name "m$577" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse6196", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse3017", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m$577" ) ) ) ) :| [] ) @@ -164,7 +164,7 @@ UberModule ( ModuleName "Data.Either" ) ( TyName "Either" ) ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse6196" ) ) ] + [ Ref Nothing ( Local ( Name "$cse3017" ) ) ] ) ( Ctor Nothing SumType ( ModuleName "Data.Either" ) @@ -172,7 +172,7 @@ UberModule ( CtorName "Right" ) [ AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse6196" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse3017" ) ) :| [] ) ] ) ) @@ -248,7 +248,7 @@ UberModule ( ParamNamed Nothing ( Name "v2$575" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse6197", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse3018", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v2$575" ) ) ) ) :| [] ) @@ -274,12 +274,12 @@ UberModule ( ModuleName "Data.Either" ) ( TyName "Either" ) ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse6197" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "$cse3018" ) ) ] :| [] ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "k" ) ) ) - ( Ref Nothing ( Local ( Name "$cse6197" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse3018" ) ) :| [] ) ) ) ) :| [] @@ -366,7 +366,7 @@ UberModule ( LiteralObject Nothing [ ( PropName "pure", AbsN Nothing - ( ParamNamed Nothing ( Name "x$2783" ) :| [] ) + ( ParamNamed Nothing ( Name "x$2815" ) :| [] ) ( AppN Nothing ( ObjectProp Nothing ( AppN Nothing @@ -384,7 +384,7 @@ UberModule ( ModuleName "Data.Either" ) ( TyName "Either" ) ( CtorName "Right" ) - [ Ref Nothing ( Local ( Name "x$2783" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "x$2815" ) ) ] :| [] ) ) ), @@ -614,12 +614,14 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Local ( Name "a" ) ) :| - [ Ref Nothing ( Local ( Name "s" ) ) ] - ) :| [] + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Local ( Name "a" ) ), Ref Nothing + ( Local ( Name "s" ) ) + ] :| [] ) ) ) @@ -716,59 +718,23 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Local ( Name "x$2732" ) ) :| - [ Ref Nothing ( Local ( Name "x$2732" ) ) ] - ) :| [] - ) - ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.LongStackBind.Test", qnameName = Name "put" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "s$109" ) :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "monadExceptT" ) ) - ) - ( PropName "Applicative0" ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] ) - ) - ( PropName "pure" ) - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ Ref Nothing ( Local ( Name "s$109" ) ) ] - ) :| [] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Local ( Name "x$2732" ) ), Ref Nothing + ( Local ( Name "x$2732" ) ) + ] :| [] ) ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.LongStackBind.Test", qnameName = Name "add$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$582" ) :| [ ParamNamed Nothing ( Name "y$583" ) ] ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x$582" ) ) ) - ( Ref Nothing ( Local ( Name "y$583" ) ) ) - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.LongStackBind.Test", qnameName = Name "go" }, Let Nothing ( Standalone - ( Nothing, Name "$kont6199", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6200" ) :| [] ) + ( Nothing, Name "$kont3020", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3021" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -794,15 +760,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x141" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x141" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -839,24 +829,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x142" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x142" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -893,24 +898,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x143" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x143" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -947,24 +970,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x144" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x144" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1001,24 +1042,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x145" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x145" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1057,24 +1118,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x146" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x146" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1113,26 +1194,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x147" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x147" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1171,27 +1272,47 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) ) - ( Ref Nothing - ( Local - ( Name "x148" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] - ) :| [] + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x148" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] + ) + ) :| [] ) ) ( AbsN Nothing @@ -1229,26 +1350,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x149" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x149" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1287,26 +1428,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x150" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x150" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1352,22 +1513,16 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing + ( PrimBinOp Nothing PrimAdd ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( Local + ( Name "x1$3021" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6200" ) - ) :| - [ Ref Nothing - ( Local - ( Name "final" ) - ) - ] + ( Name "final" ) + ) ) :| [] ) ) :| [] @@ -1415,8 +1570,8 @@ UberModule ) ) :| [ Standalone - ( Nothing, Name "$kont6201", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6202" ) :| [] ) + ( Nothing, Name "$kont3022", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3023" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -1442,18 +1597,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x121" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x121" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1490,24 +1666,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x122" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x122" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1544,24 +1738,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x123" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x123" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1598,24 +1810,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x124" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x124" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1652,24 +1882,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x125" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x125" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1708,24 +1958,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x126" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x126" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1764,26 +2034,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x127" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x127" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1822,26 +2112,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x128" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x128" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1880,26 +2190,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x129" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x129" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1938,26 +2268,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x130" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x130" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -1996,26 +2346,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x131" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x131" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2054,26 +2424,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x132" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x132" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2112,26 +2502,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x133" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x133" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2170,26 +2580,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x134" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x134" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2228,26 +2658,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x135" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x135" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2286,26 +2736,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x136" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x136" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2344,26 +2814,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x137" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x137" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2402,26 +2892,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x138" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x138" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2460,26 +2970,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x139" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x139" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2518,26 +3048,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x140" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x140" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2546,12 +3096,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6199" ) + ( Name "$kont3020" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6202" ) + ( Name "x1$3023" ) ) :| [] ) ) :| [] @@ -2636,8 +3186,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont6203", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6204" ) :| [] ) + ( Nothing, Name "$kont3024", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3025" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -2663,18 +3213,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x101" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x101" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2711,24 +3282,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x102" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x102" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2765,24 +3354,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x103" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x103" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2819,33 +3426,51 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) - ) - ) - ( Ref Nothing - ( Local ( Name "x104" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] - ) :| [] - ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AppN Nothing + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing ( ObjectProp Nothing - ( Ref Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x104" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] + ) + ) :| [] + ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "bindStateT" ) @@ -2873,24 +3498,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x105" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x105" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2929,24 +3574,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x106" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x106" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -2985,26 +3650,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x107" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x107" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3043,26 +3728,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x108" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x108" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3101,26 +3806,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x109" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x109" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3159,26 +3884,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x110" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x110" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3217,26 +3962,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x111" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x111" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3275,26 +4040,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x112" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x112" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3333,26 +4118,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x113" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x113" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3391,26 +4196,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x114" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x114" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3449,26 +4274,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x115" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x115" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3507,26 +4352,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x116" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x116" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3565,26 +4430,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x117" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x117" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3623,26 +4508,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x118" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x118" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3681,26 +4586,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x119" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x119" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3739,26 +4664,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x120" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x120" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3767,12 +4712,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6201" ) + ( Name "$kont3022" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6204" ) + ( Name "x1$3025" ) ) :| [] ) ) :| [] @@ -3857,8 +4802,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont6205", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6206" ) :| [] ) + ( Nothing, Name "$kont3026", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3027" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -3884,15 +4829,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x81" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x81" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -3929,24 +4898,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x82" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x82" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -3983,24 +4970,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x83" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x83" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4037,24 +5042,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x84" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x84" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4081,34 +5104,54 @@ UberModule ( AbsN Nothing ( ParamNamed Nothing ( Name "x85" ) :| [] ) ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "bindStateT" ) - ) - ) - ( PropName "bind" ) - ) - ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) + ( Name "bindStateT" ) ) ) + ( PropName "bind" ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x85" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x85" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4147,24 +5190,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x86" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x86" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4203,26 +5266,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x87" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x87" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4261,26 +5344,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x88" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x88" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4319,26 +5422,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x89" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x89" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4377,26 +5500,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x90" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x90" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4435,26 +5578,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x91" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x91" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4493,26 +5656,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x92" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x92" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4546,31 +5729,51 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "bindStateT" ) - ) - ) - ( PropName "bind" ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) + ( Name "bindStateT" ) ) ) + ( PropName "bind" ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x93" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x93" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4609,26 +5812,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x94" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x94" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4667,26 +5890,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x95" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x95" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4725,26 +5968,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x96" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x96" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4783,26 +6046,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x97" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x97" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4841,26 +6124,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x98" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x98" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4899,26 +6202,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x99" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x99" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4957,26 +6280,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x100" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x100" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -4985,12 +6328,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6203" ) + ( Name "$kont3024" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6206" ) + ( Name "x1$3027" ) ) :| [] ) ) :| [] @@ -5075,8 +6418,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont6207", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6208" ) :| [] ) + ( Nothing, Name "$kont3028", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3029" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -5102,15 +6445,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x61" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x61" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -5137,34 +6504,52 @@ UberModule ( AbsN Nothing ( ParamNamed Nothing ( Name "x62" ) :| [] ) ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "bindStateT" ) - ) - ) - ( PropName "bind" ) - ) - ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) + ( Name "bindStateT" ) ) ) + ( PropName "bind" ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x62" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x62" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5201,24 +6586,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x63" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x63" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5255,24 +6658,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x64" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x64" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5309,24 +6730,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x65" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x65" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5365,24 +6806,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x66" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x66" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5421,26 +6882,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x67" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x67" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5479,26 +6960,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x68" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x68" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5537,26 +7038,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x69" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x69" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5595,26 +7116,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x70" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x70" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5653,26 +7194,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x71" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x71" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5711,26 +7272,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x72" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x72" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5769,26 +7350,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x73" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x73" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5827,26 +7428,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x74" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x74" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5885,26 +7506,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x75" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x75" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -5943,26 +7584,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x76" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x76" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6001,26 +7662,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x77" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x77" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6059,26 +7740,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x78" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x78" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6117,26 +7818,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x79" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x79" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6175,26 +7896,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x80" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x80" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6203,12 +7944,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6205" ) + ( Name "$kont3026" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6208" ) + ( Name "x1$3029" ) ) :| [] ) ) :| [] @@ -6293,8 +8034,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont6209", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6210" ) :| [] ) + ( Nothing, Name "$kont3030", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3031" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -6320,15 +8061,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x41" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x41" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -6365,24 +8130,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x42" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x42" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6419,24 +8202,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x43" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x43" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6473,24 +8274,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x44" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x44" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6527,24 +8346,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x45" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x45" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6583,24 +8422,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x46" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x46" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6639,26 +8498,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x47" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x47" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6697,26 +8576,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x48" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x48" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6755,26 +8654,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x49" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x49" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6813,26 +8732,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x50" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x50" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6871,26 +8810,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x51" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x51" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6929,26 +8888,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x52" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x52" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -6987,26 +8966,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x53" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x53" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7045,26 +9044,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x54" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x54" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7103,26 +9122,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x55" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x55" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7161,26 +9200,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x56" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x56" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7219,26 +9278,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x57" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x57" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7277,26 +9356,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x58" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x58" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7335,26 +9434,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x59" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x59" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7393,26 +9512,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x60" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x60" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7421,12 +9560,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6207" ) + ( Name "$kont3028" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6210" ) + ( Name "x1$3031" ) ) :| [] ) ) :| [] @@ -7511,8 +9650,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont6211", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$6212" ) :| [] ) + ( Nothing, Name "$kont3032", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$3033" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -7538,15 +9677,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x21" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x21" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -7583,24 +9746,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x22" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x22" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7637,24 +9818,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x23" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x23" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7691,24 +9890,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x24" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x24" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7745,24 +9962,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x25" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x25" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7800,25 +10037,45 @@ UberModule ) ) ( PropName "bind" ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x26" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x26" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7857,26 +10114,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x27" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x27" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7915,26 +10192,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x28" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x28" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -7973,26 +10270,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x29" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x29" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8031,26 +10348,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x30" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x30" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8089,26 +10426,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x31" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x31" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8147,26 +10504,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x32" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x32" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8205,26 +10582,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x33" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x33" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8263,26 +10660,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x34" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x34" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8321,26 +10738,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x35" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x35" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8379,26 +10816,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x36" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x36" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8437,26 +10894,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x37" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x37" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8495,26 +10972,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x38" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x38" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8553,26 +11050,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x39" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x39" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8611,26 +11128,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x40" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x40" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8639,12 +11176,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6209" ) + ( Name "$kont3030" ) ) ) ( Ref Nothing ( Local - ( Name "x1$6212" ) + ( Name "x1$3033" ) ) :| [] ) ) :| [] @@ -8753,15 +11290,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x1" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing ( Local ( Name "x1" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -8795,21 +11356,39 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x2" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x2" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8846,24 +11425,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x3" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x3" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8900,24 +11497,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x4" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x4" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -8954,24 +11569,42 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x5" ) ) ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x5" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9008,24 +11641,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x6" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x6" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9064,24 +11717,44 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x7" ) ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local ( Name "x7" ) ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9120,26 +11793,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x8" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x8" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9178,26 +11871,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x9" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x9" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9236,26 +11949,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x10" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x10" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9294,26 +12027,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x11" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x11" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9352,26 +12105,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x12" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x12" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9410,26 +12183,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x13" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x13" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9468,26 +12261,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x14" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x14" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9526,26 +12339,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x15" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x15" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9584,26 +12417,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x16" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x16" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9642,26 +12495,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x17" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x17" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9700,26 +12573,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x18" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x18" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9758,26 +12651,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x19" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x19" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9816,26 +12729,46 @@ UberModule ) ( PropName "bind" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "put" ) - ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "add$w" ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "monadExceptT" ) + ) + ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ) :| [] + ) ) + ( PropName "pure" ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x20" ) + ) + ) + ( LiteralInt Nothing 1 ) + ] :| [] ) - ( Ref Nothing - ( Local - ( Name "x20" ) - ) :| - [ LiteralInt Nothing 1 ] - ) :| [] ) :| [] ) ) @@ -9844,7 +12777,7 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont6211" ) + ( Name "$kont3032" ) ) ) ( Ref Nothing @@ -9974,7 +12907,7 @@ UberModule ), ( Name "main", Let Nothing ( Standalone - ( Nothing, Name "$cse6198", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse3019", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "compute" ) ) ) @@ -10002,7 +12935,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) ( PropName "showStringImpl" ) ) - ( Ref Nothing ( Local ( Name "$cse6198" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse3019" ) ) :| [] ) ) ( LiteralString Nothing ")" ) ) @@ -10015,7 +12948,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) ( PropName "showIntImpl" ) ) - ( Ref Nothing ( Local ( Name "$cse6198" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse3019" ) ) :| [] ) ) ( LiteralString Nothing ")" ) ) diff --git a/test/ps/output/Golden.LongStackBind.Test/golden.lua b/test/ps/output/Golden.LongStackBind.Test/golden.lua index 7b951005..fa885b4a 100644 --- a/test/ps/output/Golden.LongStackBind.Test/golden.lua +++ b/test/ps/output/Golden.LongStackBind.Test/golden.lua @@ -189,9 +189,7 @@ end Control_Monad_State_Trans_applicativeStateT = function(dictMonad) return { pure = function(a) - return function(s) - return (dictMonad.Applicative0()).pure(Data_Tuple_Tuple_S_w(a, s)) - end + return function(s) return (dictMonad.Applicative0()).pure({ a, s }) end end, Apply0 = function() return Control_Monad_State_Trans_applyStateT(dictMonad) @@ -214,40 +212,85 @@ local Golden_LongStackBind_Test_monadExceptT = Control_Monad_Except_Trans_monadE }) local Golden_LongStackBind_Test_bindStateT = Control_Monad_State_Trans_bindStateT(Golden_LongStackBind_Test_monadExceptT) local Golden_LongStackBind_Test_get = function(x_S_2) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(x_S_2, x_S_2)) -end -local Golden_LongStackBind_Test_put = function(s_S_1) - return function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, s_S_1)) - end -end -local Golden_LongStackBind_Test_add_S_w = function(x_S_3, y_S_0) - return x_S_3 + y_S_0 + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + x_S_2, + x_S_2 + }) end local Golden_LongStackBind_Test_go = (function() local _S_kont0 = function(x1_S_0) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x141 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x141, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x141 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x142 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x142, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x142 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x143 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x143, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x143 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x144 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x144, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x144 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x145 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x145, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x145 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x146 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x146, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x146 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x147 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x147, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x147 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x148 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x148, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x148 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x149 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x149, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x149 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x150 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x150, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x150 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( final ) - return (Control_Monad_State_Trans_applicativeStateT(Golden_LongStackBind_Test_monadExceptT)).pure(Golden_LongStackBind_Test_add_S_w(x1_S_0, final)) + return (Control_Monad_State_Trans_applicativeStateT(Golden_LongStackBind_Test_monadExceptT)).pure(x1_S_0 + final) end) end) end) @@ -272,45 +315,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont1 = function(x1_S_1) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x121 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x121, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x121 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x122 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x122, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x122 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x123 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x123, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x123 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x124 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x124, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x124 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x125 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x125, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x125 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x126 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x126, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x126 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x127 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x127, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x127 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x128 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x128, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x128 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x129 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x129, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x129 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x130 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x130, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x130 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x131 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x131, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x131 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x132 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x132, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x132 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x133 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x133, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x133 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x134 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x134, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x134 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x135 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x135, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x135 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x136 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x136, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x136 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x137 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x137, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x137 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x138 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x138, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x138 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x139 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x139, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x139 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x140 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x140, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x140 + 1 + }) + end)(function( ) return _S_kont0(x1_S_1) end) end) @@ -355,45 +498,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont2 = function(x1_S_2) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x101 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x101, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x101 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x102 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x102, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x102 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x103 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x103, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x103 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x104 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x104, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x104 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x105 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x105, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x105 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x106 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x106, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x106 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x107 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x107, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x107 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x108 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x108, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x108 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x109 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x109, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x109 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x110 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x110, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x110 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x111 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x111, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x111 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x112 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x112, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x112 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x113 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x113, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x113 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x114 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x114, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x114 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x115 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x115, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x115 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x116 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x116, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x116 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x117 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x117, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x117 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x118 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x118, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x118 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x119 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x119, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x119 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x120 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x120, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x120 + 1 + }) + end)(function( ) return _S_kont1(x1_S_2) end) end) @@ -438,45 +681,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont3 = function(x1_S_3) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x81 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x81, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x81 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x82 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x82, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x82 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x83 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x83, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x83 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x84 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x84, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x84 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x85 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x85, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x85 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x86 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x86, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x86 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x87 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x87, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x87 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x88 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x88, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x88 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x89 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x89, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x89 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x90 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x90, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x90 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x91 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x91, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x91 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x92 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x92, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x92 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x93 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x93, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x93 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x94 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x94, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x94 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x95 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x95, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x95 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x96 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x96, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x96 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x97 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x97, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x97 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x98 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x98, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x98 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x99 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x99, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x99 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x100 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x100, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x100 + 1 + }) + end)(function( ) return _S_kont2(x1_S_3) end) end) @@ -521,45 +864,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont4 = function(x1_S_4) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x61 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x61, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x61 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x62 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x62, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x62 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x63 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x63, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x63 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x64 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x64, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x64 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x65 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x65, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x65 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x66 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x66, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x66 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x67 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x67, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x67 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x68 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x68, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x68 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x69 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x69, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x69 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x70 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x70, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x70 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x71 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x71, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x71 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x72 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x72, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x72 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x73 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x73, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x73 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x74 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x74, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x74 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x75 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x75, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x75 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x76 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x76, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x76 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x77 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x77, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x77 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x78 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x78, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x78 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x79 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x79, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x79 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x80 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x80, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x80 + 1 + }) + end)(function( ) return _S_kont3(x1_S_4) end) end) @@ -604,45 +1047,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont5 = function(x1_S_5) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x41 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x41, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x41 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x42 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x42, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x42 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x43 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x43, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x43 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x44 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x44, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x44 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x45 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x45, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x45 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x46 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x46, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x46 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x47 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x47, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x47 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x48 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x48, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x48 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x49 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x49, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x49 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x50 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x50, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x50 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x51 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x51, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x51 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x52 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x52, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x52 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x53 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x53, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x53 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x54 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x54, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x54 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x55 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x55, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x55 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x56 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x56, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x56 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x57 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x57, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x57 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x58 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x58, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x58 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x59 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x59, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x59 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x60 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x60, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x60 + 1 + }) + end)(function( ) return _S_kont4(x1_S_5) end) end) @@ -687,45 +1230,145 @@ local Golden_LongStackBind_Test_go = (function() end local _S_kont6 = function(x1_S_6) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x21 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x21, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x21 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x22 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x22, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x22 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x23 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x23, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x23 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x24 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x24, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x24 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x25 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x25, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x25 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x26 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x26, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x26 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x27 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x27, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x27 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x28 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x28, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x28 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x29 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x29, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x29 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x30 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x30, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x30 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x31 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x31, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x31 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x32 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x32, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x32 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x33 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x33, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x33 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x34 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x34, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x34 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x35 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x35, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x35 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x36 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x36, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x36 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x37 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x37, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x37 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x38 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x38, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x38 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x39 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x39, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x39 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x40 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x40, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x40 + 1 + }) + end)(function( ) return _S_kont5(x1_S_6) end) end) @@ -769,45 +1412,145 @@ local Golden_LongStackBind_Test_go = (function() end) end return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x1 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x1, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x1 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x2 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x2, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x2 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x3 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x3, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x3 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x4 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x4, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x4 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x5 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x5, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x5 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x6 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x6, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x6 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x7 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x7, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x7 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x8 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x8, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x8 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x9 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x9, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x9 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x10 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x10, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x10 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x11 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x11, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x11 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x12 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x12, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x12 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x13 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x13, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x13 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x14 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x14, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x14 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x15 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x15, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x15 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x16 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x16, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x16 + 1 + }) + end)(function() return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x17 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x17, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x17 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x18 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x18, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x18 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x19 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x19, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x19 + 1 + }) + end)(function( ) return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_get)(function( x20 ) - return Golden_LongStackBind_Test_bindStateT.bind(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x20, 1)))(function( ) + return Golden_LongStackBind_Test_bindStateT.bind(function( ) + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure({ + Data_Unit_unit, + x20 + 1 + }) + end)(function( ) return _S_kont6(x1) end) end) diff --git a/test/ps/output/Golden.LongStateBind.Test/golden.ir b/test/ps/output/Golden.LongStateBind.Test/golden.ir index 4ab3d069..d2c0c5e6 100644 --- a/test/ps/output/Golden.LongStateBind.Test/golden.ir +++ b/test/ps/output/Golden.LongStateBind.Test/golden.ir @@ -25,16 +25,6 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Identity", qnameName = Name "applyIdentity" }, LiteralObject Nothing @@ -335,19 +325,17 @@ UberModule ) ( AbsN Nothing ( ParamNamed Nothing ( Name "v1$510" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( AppN Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ AppN Nothing ( Ref Nothing ( Local ( Name "f$507" ) ) ) ( DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "v1$510" ) ) ) :| [] - ) :| - [ DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "v1$510" ) ) ) - ] - ) + ), DataArgumentByIndex Nothing ProductType 1 + ( Ref Nothing ( Local ( Name "v1$510" ) ) ) + ] ) :| [] ) ) @@ -388,12 +376,14 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Local ( Name "a" ) ) :| - [ Ref Nothing ( Local ( Name "s" ) ) ] - ) :| [] + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Local ( Name "a" ) ), Ref Nothing + ( Local ( Name "s" ) ) + ] :| [] ) ) ) @@ -423,20 +413,22 @@ UberModule ( QName { qnameModuleName = ModuleName "Golden.LongStateBind.Test", qnameName = Name "get" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$2499" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing ( Local ( Name "x$2499" ) ) :| [ Ref Nothing ( Local ( Name "x$2499" ) ) ] ) + ( ParamNamed Nothing ( Name "x$2801" ) :| [] ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Local ( Name "x$2801" ) ), Ref Nothing ( Local ( Name "x$2801" ) ) ] ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.LongStateBind.Test", qnameName = Name "go" }, Let Nothing ( Standalone - ( Nothing, Name "$kont2511$w", AbsN Nothing + ( Nothing, Name "$kont2819$w", AbsN Nothing ( ParamNamed Nothing - ( Name "x1$2512" ) :| - [ ParamNamed Nothing ( Name "x100$2513" ) ] + ( Name "x1$2820" ) :| + [ ParamNamed Nothing ( Name "x100$2821" ) ] ) ( AppN Nothing ( AppN Nothing @@ -465,15 +457,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x141" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x141" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -512,17 +507,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x142" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x142" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -561,23 +557,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x143" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x143" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -616,23 +607,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x144" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x144" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -671,25 +657,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x145" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x145" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -730,25 +709,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x146" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x146" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -789,27 +763,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x147" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x147" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -850,27 +819,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x148" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x148" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -911,27 +875,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x149" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x149" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -972,27 +931,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x150" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x150" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1042,12 +996,12 @@ UberModule ( PrimBinOp Nothing PrimAdd ( Ref Nothing ( Local - ( Name "x1$2512" ) + ( Name "x1$2820" ) ) ) ( Ref Nothing ( Local - ( Name "x100$2513" ) + ( Name "x100$2821" ) ) ) ) @@ -1102,10 +1056,10 @@ UberModule ) ) :| [ Standalone - ( Nothing, Name "$kont2514$w", AbsN Nothing + ( Nothing, Name "$kont2822$w", AbsN Nothing ( ParamNamed Nothing - ( Name "x1$2515" ) :| - [ ParamNamed Nothing ( Name "x100$2516" ) ] + ( Name "x1$2823" ) :| + [ ParamNamed Nothing ( Name "x100$2824" ) ] ) ( AppN Nothing ( AppN Nothing @@ -1134,17 +1088,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x121" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x121" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1183,17 +1138,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x122" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x122" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1232,23 +1188,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x123" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x123" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1287,23 +1238,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x124" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x124" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1342,25 +1288,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x125" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x125" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1401,25 +1342,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x126" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x126" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1460,27 +1396,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x127" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x127" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1521,27 +1452,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x128" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x128" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1582,27 +1508,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x129" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x129" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1643,27 +1564,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x130" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x130" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1704,27 +1620,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x131" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x131" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1765,27 +1676,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x132" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x132" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1826,27 +1732,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x133" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x133" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1887,27 +1788,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x134" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x134" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -1948,27 +1844,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x135" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x135" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2009,27 +1900,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x136" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x136" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2070,27 +1956,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x137" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x137" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2131,27 +2012,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x138" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x138" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2192,27 +2068,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x139" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x139" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2253,27 +2124,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x140" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x140" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2282,16 +2148,16 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2511$w" ) + ( Name "$kont2819$w" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2515" ) + ( Name "x1$2823" ) ) :| [ Ref Nothing ( Local - ( Name "x100$2516" ) + ( Name "x100$2824" ) ) ] ) @@ -2377,10 +2243,10 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2517$w", AbsN Nothing + ( Nothing, Name "$kont2825$w", AbsN Nothing ( ParamNamed Nothing - ( Name "x1$2518" ) :| - [ ParamNamed Nothing ( Name "x100$2519" ) ] + ( Name "x1$2826" ) :| + [ ParamNamed Nothing ( Name "x100$2827" ) ] ) ( AppN Nothing ( AppN Nothing @@ -2409,17 +2275,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x101" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x101" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2458,17 +2325,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x102" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x102" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2507,23 +2375,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x103" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x103" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2562,23 +2425,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x104" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x104" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2617,25 +2475,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x105" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x105" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2676,25 +2529,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x106" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x106" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2735,27 +2583,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x107" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x107" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2796,27 +2639,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x108" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x108" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2857,27 +2695,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x109" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x109" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2918,27 +2751,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x110" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x110" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -2979,27 +2807,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x111" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x111" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3040,27 +2863,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x112" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x112" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3101,27 +2919,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x113" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x113" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3162,27 +2975,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x114" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x114" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3223,27 +3031,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x115" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x115" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3284,27 +3087,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x116" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x116" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3345,27 +3143,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x117" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x117" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3406,27 +3199,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x118" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x118" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3467,27 +3255,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x119" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x119" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3528,27 +3311,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x120" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x120" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3557,16 +3335,16 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2514$w" ) + ( Name "$kont2822$w" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2518" ) + ( Name "x1$2826" ) ) :| [ Ref Nothing ( Local - ( Name "x100$2519" ) + ( Name "x100$2827" ) ) ] ) @@ -3652,8 +3430,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2520", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2521" ) :| [] ) + ( Nothing, Name "$kont2828", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$2829" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -3681,17 +3459,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x81" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x81" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3730,17 +3509,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x82" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x82" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3779,23 +3559,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x83" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x83" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3834,23 +3609,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x84" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x84" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3889,25 +3659,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x85" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x85" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -3948,25 +3713,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x86" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x86" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4007,27 +3767,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x87" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x87" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4068,27 +3823,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x88" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x88" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4129,27 +3879,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x89" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x89" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4190,27 +3935,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x90" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x90" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4251,27 +3991,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x91" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x91" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4312,27 +4047,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x92" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x92" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4373,27 +4103,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x93" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x93" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4434,27 +4159,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x94" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x94" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4495,27 +4215,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x95" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x95" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4556,27 +4271,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x96" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x96" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4617,27 +4327,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x97" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x97" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4678,27 +4383,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x98" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x98" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4739,27 +4439,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x99" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x99" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4800,27 +4495,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x100" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x100" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -4829,12 +4519,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2517$w" ) + ( Name "$kont2825$w" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2521" ) + ( Name "x1$2829" ) ) :| [ Ref Nothing ( Local @@ -4924,8 +4614,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2522", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2523" ) :| [] ) + ( Nothing, Name "$kont2830", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$2831" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -4953,17 +4643,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x61" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x61" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5002,17 +4693,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x62" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x62" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5051,23 +4743,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x63" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x63" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5106,23 +4793,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x64" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x64" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5161,25 +4843,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x65" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x65" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5220,25 +4897,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x66" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x66" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5279,27 +4951,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x67" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x67" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5340,27 +5007,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x68" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x68" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5401,27 +5063,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x69" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x69" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5462,27 +5119,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x70" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x70" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5523,27 +5175,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x71" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x71" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5584,27 +5231,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x72" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x72" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5645,27 +5287,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x73" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x73" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5706,27 +5343,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x74" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x74" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5767,27 +5399,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x75" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x75" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5828,27 +5455,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x76" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x76" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5889,27 +5511,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x77" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x77" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -5950,27 +5567,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x78" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x78" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6011,27 +5623,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x79" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x79" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6072,27 +5679,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x80" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x80" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6101,12 +5703,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2520" ) + ( Name "$kont2828" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2523" ) + ( Name "x1$2831" ) ) :| [] ) ) :| [] @@ -6191,8 +5793,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2524", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2525" ) :| [] ) + ( Nothing, Name "$kont2832", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$2833" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -6220,17 +5822,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x41" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x41" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6269,17 +5872,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x42" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x42" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6318,23 +5922,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x43" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x43" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6373,23 +5972,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x44" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x44" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6428,25 +6022,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x45" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x45" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6487,25 +6076,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x46" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x46" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6546,27 +6130,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x47" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x47" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6607,27 +6186,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x48" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x48" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6668,27 +6242,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x49" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x49" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6729,27 +6298,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x50" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x50" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6790,27 +6354,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x51" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x51" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6851,27 +6410,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x52" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x52" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6912,27 +6466,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x53" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x53" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -6973,27 +6522,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x54" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x54" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7034,27 +6578,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x55" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x55" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7095,27 +6634,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x56" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x56" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7156,27 +6690,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x57" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x57" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7217,27 +6746,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x58" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x58" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7278,27 +6802,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x59" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x59" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7339,27 +6858,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x60" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x60" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7368,12 +6882,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2522" ) + ( Name "$kont2830" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2525" ) + ( Name "x1$2833" ) ) :| [] ) ) :| [] @@ -7458,8 +6972,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2526", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2527" ) :| [] ) + ( Nothing, Name "$kont2834", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$2835" ) :| [] ) ( AppN Nothing ( AppN Nothing ( ObjectProp Nothing @@ -7487,17 +7001,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x21" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x21" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7536,17 +7051,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x22" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x22" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7585,23 +7101,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x23" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x23" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7640,23 +7151,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x24" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x24" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7695,25 +7201,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x25" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x25" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7754,25 +7255,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x26" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x26" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7813,27 +7309,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x27" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x27" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7874,27 +7365,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x28" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x28" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7935,27 +7421,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x29" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x29" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -7996,27 +7477,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x30" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x30" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8057,27 +7533,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x31" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x31" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8118,27 +7589,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x32" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x32" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8179,27 +7645,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x33" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x33" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8240,27 +7701,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x34" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x34" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8301,27 +7757,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x35" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x35" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8362,27 +7813,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x36" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x36" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8423,27 +7869,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x37" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x37" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8484,27 +7925,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x38" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x38" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8545,27 +7981,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x39" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x39" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8606,27 +8037,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x40" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x40" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8635,12 +8061,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2524" ) + ( Name "$kont2832" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2527" ) + ( Name "x1$2835" ) ) :| [] ) ) :| [] @@ -8751,15 +8177,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x1" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x1" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8795,17 +8224,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x2" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x2" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8844,17 +8274,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x3" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported + ( ModuleName "Data.Unit" ) + ( Name "unit" ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x3" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8893,23 +8324,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x4" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x4" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -8948,23 +8374,18 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x5" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x5" ) ) ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9003,25 +8424,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x6" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x6" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9062,25 +8478,20 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local ( Name "x7" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local ( Name "x7" ) ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9121,27 +8532,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x8" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x8" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9182,27 +8588,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x9" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x9" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9243,27 +8644,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x10" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x10" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9304,27 +8700,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x11" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x11" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9365,27 +8756,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x12" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x12" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9426,27 +8812,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x13" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x13" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9487,27 +8868,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x14" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x14" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9548,27 +8924,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x15" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x15" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9609,27 +8980,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x16" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x16" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9670,27 +9036,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x17" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x17" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9731,27 +9092,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x18" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x18" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9792,27 +9148,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x19" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x19" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9853,27 +9204,22 @@ UberModule ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( Ref Nothing + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x20" ) - ) + ), PrimBinOp Nothing PrimAdd + ( Ref Nothing + ( Local + ( Name "x20" ) ) - ( LiteralInt Nothing 1 ) - ] - ) + ) + ( LiteralInt Nothing 1 ) + ] ) :| [] ) ) @@ -9882,7 +9228,7 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2526" ) + ( Name "$kont2834" ) ) ) ( Ref Nothing diff --git a/test/ps/output/Golden.LongStateBind.Test/golden.lua b/test/ps/output/Golden.LongStateBind.Test/golden.lua index 19de8a5a..83b940a0 100644 --- a/test/ps/output/Golden.LongStateBind.Test/golden.lua +++ b/test/ps/output/Golden.LongStateBind.Test/golden.lua @@ -4,9 +4,6 @@ local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Tuple_Tuple_S_w = function(value0, value1) - return { value0, value1 } -end local Data_Identity_applyIdentity = { apply = function(v) return function(v1) return v(v1) end end, Functor0 = function() @@ -79,7 +76,7 @@ Control_Monad_State_Trans_applyStateT = function(dictMonad) return function(v_S_1) return function(s_S_0) return (((dictMonad.Bind1()).Apply0()).Functor0()).map(function( v1_S_0 ) - return Data_Tuple_Tuple_S_w(f_S_3(v1_S_0[1]), v1_S_0[2]) + return { f_S_3(v1_S_0[1]), v1_S_0[2] } end)(v_S_1(s_S_0)) end end @@ -91,9 +88,7 @@ end Control_Monad_State_Trans_applicativeStateT = function(dictMonad) return { pure = function(a) - return function(s) - return (dictMonad.Applicative0()).pure(Data_Tuple_Tuple_S_w(a, s)) - end + return function(s) return (dictMonad.Applicative0()).pure({ a, s }) end end, Apply0 = function() return Control_Monad_State_Trans_applyStateT(dictMonad) @@ -102,49 +97,49 @@ Control_Monad_State_Trans_applicativeStateT = function(dictMonad) end local Golden_LongStateBind_Test_bindStateT = Control_Monad_State_Trans_bindStateT(Data_Identity_monadIdentity) local Golden_LongStateBind_Test_get = function(x_S_1) - return Data_Tuple_Tuple_S_w(x_S_1, x_S_1) + return { x_S_1, x_S_1 } end local Golden_LongStateBind_Test_go = (function() local _S_kont0_S_w = function(x1_S_0, x100_S_0) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x141 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x141 + 1) + return { Data_Unit_unit, x141 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x142 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x142 + 1) + return { Data_Unit_unit, x142 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x143 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x143 + 1) + return { Data_Unit_unit, x143 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x144 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x144 + 1) + return { Data_Unit_unit, x144 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x145 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x145 + 1) + return { Data_Unit_unit, x145 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x146 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x146 + 1) + return { Data_Unit_unit, x146 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x147 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x147 + 1) + return { Data_Unit_unit, x147 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x148 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x148 + 1) + return { Data_Unit_unit, x148 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x149 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x149 + 1) + return { Data_Unit_unit, x149 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x150 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x150 + 1) + return { Data_Unit_unit, x150 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( final ) return (Control_Monad_State_Trans_applicativeStateT(Data_Identity_monadIdentity)).pure(x1_S_0 + x100_S_0 + final) @@ -173,83 +168,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont1_S_w = function(x1_S_1, x100_S_1) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x121 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x121 + 1) + return { Data_Unit_unit, x121 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x122 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x122 + 1) + return { Data_Unit_unit, x122 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x123 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x123 + 1) + return { Data_Unit_unit, x123 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x124 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x124 + 1) + return { Data_Unit_unit, x124 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x125 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x125 + 1) + return { Data_Unit_unit, x125 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x126 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x126 + 1) + return { Data_Unit_unit, x126 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x127 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x127 + 1) + return { Data_Unit_unit, x127 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x128 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x128 + 1) + return { Data_Unit_unit, x128 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x129 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x129 + 1) + return { Data_Unit_unit, x129 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x130 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x130 + 1) + return { Data_Unit_unit, x130 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x131 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x131 + 1) + return { + Data_Unit_unit, + x131 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x132 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x132 + 1) + return { + Data_Unit_unit, + x132 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x133 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x133 + 1) + return { + Data_Unit_unit, + x133 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x134 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x134 + 1) + return { + Data_Unit_unit, + x134 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x135 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x135 + 1) + return { + Data_Unit_unit, + x135 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x136 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x136 + 1) + return { + Data_Unit_unit, + x136 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x137 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x137 + 1) + return { + Data_Unit_unit, + x137 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x138 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x138 + 1) + return { + Data_Unit_unit, + x138 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x139 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x139 + 1) + return { + Data_Unit_unit, + x139 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x140 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x140 + 1) + return { + Data_Unit_unit, + x140 + 1 + } end)(function( ) return _S_kont0_S_w(x1_S_1, x100_S_1) end) @@ -296,83 +321,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont2_S_w = function(x1_S_2, x100_S_2) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x101 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x101 + 1) + return { Data_Unit_unit, x101 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x102 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x102 + 1) + return { Data_Unit_unit, x102 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x103 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x103 + 1) + return { Data_Unit_unit, x103 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x104 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x104 + 1) + return { Data_Unit_unit, x104 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x105 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x105 + 1) + return { Data_Unit_unit, x105 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x106 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x106 + 1) + return { Data_Unit_unit, x106 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x107 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x107 + 1) + return { Data_Unit_unit, x107 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x108 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x108 + 1) + return { Data_Unit_unit, x108 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x109 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x109 + 1) + return { Data_Unit_unit, x109 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x110 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x110 + 1) + return { Data_Unit_unit, x110 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x111 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x111 + 1) + return { + Data_Unit_unit, + x111 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x112 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x112 + 1) + return { + Data_Unit_unit, + x112 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x113 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x113 + 1) + return { + Data_Unit_unit, + x113 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x114 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x114 + 1) + return { + Data_Unit_unit, + x114 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x115 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x115 + 1) + return { + Data_Unit_unit, + x115 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x116 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x116 + 1) + return { + Data_Unit_unit, + x116 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x117 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x117 + 1) + return { + Data_Unit_unit, + x117 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x118 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x118 + 1) + return { + Data_Unit_unit, + x118 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x119 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x119 + 1) + return { + Data_Unit_unit, + x119 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x120 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x120 + 1) + return { + Data_Unit_unit, + x120 + 1 + } end)(function( ) return _S_kont1_S_w(x1_S_2, x100_S_2) end) @@ -419,83 +474,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont3 = function(x1_S_3) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x81 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x81 + 1) + return { Data_Unit_unit, x81 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x82 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x82 + 1) + return { Data_Unit_unit, x82 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x83 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x83 + 1) + return { Data_Unit_unit, x83 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x84 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x84 + 1) + return { Data_Unit_unit, x84 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x85 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x85 + 1) + return { Data_Unit_unit, x85 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x86 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x86 + 1) + return { Data_Unit_unit, x86 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x87 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x87 + 1) + return { Data_Unit_unit, x87 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x88 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x88 + 1) + return { Data_Unit_unit, x88 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x89 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x89 + 1) + return { Data_Unit_unit, x89 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x90 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x90 + 1) + return { Data_Unit_unit, x90 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x91 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x91 + 1) + return { + Data_Unit_unit, + x91 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x92 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x92 + 1) + return { + Data_Unit_unit, + x92 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x93 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x93 + 1) + return { + Data_Unit_unit, + x93 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x94 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x94 + 1) + return { + Data_Unit_unit, + x94 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x95 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x95 + 1) + return { + Data_Unit_unit, + x95 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x96 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x96 + 1) + return { + Data_Unit_unit, + x96 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x97 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x97 + 1) + return { + Data_Unit_unit, + x97 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x98 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x98 + 1) + return { + Data_Unit_unit, + x98 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x99 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x99 + 1) + return { + Data_Unit_unit, + x99 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x100 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x100 + 1) + return { + Data_Unit_unit, + x100 + 1 + } end)(function( ) return _S_kont2_S_w(x1_S_3, x100) end) @@ -542,83 +627,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont4 = function(x1_S_4) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x61 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x61 + 1) + return { Data_Unit_unit, x61 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x62 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x62 + 1) + return { Data_Unit_unit, x62 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x63 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x63 + 1) + return { Data_Unit_unit, x63 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x64 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x64 + 1) + return { Data_Unit_unit, x64 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x65 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x65 + 1) + return { Data_Unit_unit, x65 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x66 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x66 + 1) + return { Data_Unit_unit, x66 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x67 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x67 + 1) + return { Data_Unit_unit, x67 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x68 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x68 + 1) + return { Data_Unit_unit, x68 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x69 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x69 + 1) + return { Data_Unit_unit, x69 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x70 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x70 + 1) + return { Data_Unit_unit, x70 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x71 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x71 + 1) + return { + Data_Unit_unit, + x71 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x72 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x72 + 1) + return { + Data_Unit_unit, + x72 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x73 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x73 + 1) + return { + Data_Unit_unit, + x73 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x74 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x74 + 1) + return { + Data_Unit_unit, + x74 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x75 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x75 + 1) + return { + Data_Unit_unit, + x75 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x76 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x76 + 1) + return { + Data_Unit_unit, + x76 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x77 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x77 + 1) + return { + Data_Unit_unit, + x77 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x78 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x78 + 1) + return { + Data_Unit_unit, + x78 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x79 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x79 + 1) + return { + Data_Unit_unit, + x79 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x80 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x80 + 1) + return { + Data_Unit_unit, + x80 + 1 + } end)(function( ) return _S_kont3(x1_S_4) end) @@ -665,83 +780,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont5 = function(x1_S_5) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x41 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x41 + 1) + return { Data_Unit_unit, x41 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x42 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x42 + 1) + return { Data_Unit_unit, x42 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x43 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x43 + 1) + return { Data_Unit_unit, x43 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x44 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x44 + 1) + return { Data_Unit_unit, x44 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x45 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x45 + 1) + return { Data_Unit_unit, x45 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x46 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x46 + 1) + return { Data_Unit_unit, x46 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x47 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x47 + 1) + return { Data_Unit_unit, x47 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x48 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x48 + 1) + return { Data_Unit_unit, x48 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x49 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x49 + 1) + return { Data_Unit_unit, x49 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x50 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x50 + 1) + return { Data_Unit_unit, x50 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x51 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x51 + 1) + return { + Data_Unit_unit, + x51 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x52 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x52 + 1) + return { + Data_Unit_unit, + x52 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x53 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x53 + 1) + return { + Data_Unit_unit, + x53 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x54 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x54 + 1) + return { + Data_Unit_unit, + x54 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x55 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x55 + 1) + return { + Data_Unit_unit, + x55 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x56 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x56 + 1) + return { + Data_Unit_unit, + x56 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x57 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x57 + 1) + return { + Data_Unit_unit, + x57 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x58 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x58 + 1) + return { + Data_Unit_unit, + x58 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x59 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x59 + 1) + return { + Data_Unit_unit, + x59 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x60 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x60 + 1) + return { + Data_Unit_unit, + x60 + 1 + } end)(function( ) return _S_kont4(x1_S_5) end) @@ -788,83 +933,113 @@ local Golden_LongStateBind_Test_go = (function() local _S_kont6 = function(x1_S_6) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x21 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x21 + 1) + return { Data_Unit_unit, x21 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x22 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x22 + 1) + return { Data_Unit_unit, x22 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x23 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x23 + 1) + return { Data_Unit_unit, x23 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x24 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x24 + 1) + return { Data_Unit_unit, x24 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x25 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x25 + 1) + return { Data_Unit_unit, x25 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x26 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x26 + 1) + return { Data_Unit_unit, x26 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x27 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x27 + 1) + return { Data_Unit_unit, x27 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x28 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x28 + 1) + return { Data_Unit_unit, x28 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x29 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x29 + 1) + return { Data_Unit_unit, x29 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x30 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x30 + 1) + return { Data_Unit_unit, x30 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x31 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x31 + 1) + return { + Data_Unit_unit, + x31 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x32 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x32 + 1) + return { + Data_Unit_unit, + x32 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x33 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x33 + 1) + return { + Data_Unit_unit, + x33 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x34 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x34 + 1) + return { + Data_Unit_unit, + x34 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x35 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x35 + 1) + return { + Data_Unit_unit, + x35 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x36 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x36 + 1) + return { + Data_Unit_unit, + x36 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x37 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x37 + 1) + return { + Data_Unit_unit, + x37 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x38 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x38 + 1) + return { + Data_Unit_unit, + x38 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x39 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x39 + 1) + return { + Data_Unit_unit, + x39 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x40 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x40 + 1) + return { + Data_Unit_unit, + x40 + 1 + } end)(function( ) return _S_kont5(x1_S_6) end) @@ -910,83 +1085,110 @@ local Golden_LongStateBind_Test_go = (function() end return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x1 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x1 + 1) + return { Data_Unit_unit, x1 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x2 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x2 + 1) + return { Data_Unit_unit, x2 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x3 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x3 + 1) + return { Data_Unit_unit, x3 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x4 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x4 + 1) + return { Data_Unit_unit, x4 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x5 ) return Golden_LongStateBind_Test_bindStateT.bind(function() - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x5 + 1) + return { Data_Unit_unit, x5 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x6 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x6 + 1) + return { Data_Unit_unit, x6 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x7 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x7 + 1) + return { Data_Unit_unit, x7 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x8 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x8 + 1) + return { Data_Unit_unit, x8 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x9 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x9 + 1) + return { Data_Unit_unit, x9 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x10 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x10 + 1) + return { Data_Unit_unit, x10 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x11 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x11 + 1) + return { Data_Unit_unit, x11 + 1 } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x12 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x12 + 1) + return { + Data_Unit_unit, + x12 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x13 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x13 + 1) + return { + Data_Unit_unit, + x13 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x14 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x14 + 1) + return { + Data_Unit_unit, + x14 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x15 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x15 + 1) + return { + Data_Unit_unit, + x15 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x16 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x16 + 1) + return { + Data_Unit_unit, + x16 + 1 + } end)(function() return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x17 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x17 + 1) + return { + Data_Unit_unit, + x17 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x18 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x18 + 1) + return { + Data_Unit_unit, + x18 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x19 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x19 + 1) + return { + Data_Unit_unit, + x19 + 1 + } end)(function( ) return Golden_LongStateBind_Test_bindStateT.bind(Golden_LongStateBind_Test_get)(function( x20 ) return Golden_LongStateBind_Test_bindStateT.bind(function( ) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x20 + 1) + return { + Data_Unit_unit, + x20 + 1 + } end)(function( ) return _S_kont6(x1) end) diff --git a/test/ps/output/Golden.LongWriterBind.Test/golden.ir b/test/ps/output/Golden.LongWriterBind.Test/golden.ir index 345ade6a..d351a34a 100644 --- a/test/ps/output/Golden.LongWriterBind.Test/golden.ir +++ b/test/ps/output/Golden.LongWriterBind.Test/golden.ir @@ -31,16 +31,6 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Identity", qnameName = Name "applyIdentity" }, LiteralObject Nothing @@ -94,52 +84,54 @@ UberModule ( ParamNamed Nothing ( Name "v$514" ) :| [ ParamNamed Nothing ( Name "k$515" ) ] ) ( Let Nothing ( Standalone - ( Nothing, Name "m$548", AppN Nothing + ( Nothing, Name "m$590", AppN Nothing ( Ref Nothing ( Local ( Name "k$515" ) ) ) ( DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "v$514" ) ) ) :| [] ) ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( DataArgumentByIndex Nothing ProductType 0 - ( Ref Nothing ( Local ( Name "m$548" ) ) ) :| - [ AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Semigroup" ) ( Name "foreign" ) ) ) - ( PropName "concatArray" ) - ) - ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "v$514" ) ) ) :| [] - ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ DataArgumentByIndex Nothing ProductType 0 + ( Ref Nothing ( Local ( Name "m$590" ) ) ), AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Semigroup" ) ( Name "foreign" ) ) ) + ( PropName "concatArray" ) ) ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "m$548" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v$514" ) ) ) :| [] ) - ] - ) + ) + ( DataArgumentByIndex Nothing ProductType 1 + ( Ref Nothing ( Local ( Name "m$590" ) ) ) :| [] + ) + ] ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.LongWriterBind.Test", qnameName = Name "tell" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$539" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| - [ Ref Nothing ( Local ( Name "x$539" ) ) ] - ) + ( ParamNamed Nothing ( Name "x$561" ) :| [] ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ), Ref Nothing + ( Local ( Name "x$561" ) ) + ] ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.LongWriterBind.Test", qnameName = Name "go" }, Let Nothing ( Standalone - ( Nothing, Name "$kont7760", AppN Nothing + ( Nothing, Name "$kont15027", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongWriterBind.Test" ) ( Name "discard$w" ) ) ) @@ -884,16 +876,12 @@ UberModule ) ( PropName "pure" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) - ) - ( LiteralInt Nothing 42 :| - [ LiteralArray Nothing [] ] - ) :| [] + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ LiteralInt Nothing 42, LiteralArray Nothing [] + ] :| [] ) ) ] @@ -1017,7 +1005,7 @@ UberModule ) ) :| [ Standalone - ( Nothing, Name "$kont7761", AppN Nothing + ( Nothing, Name "$kont15028", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongWriterBind.Test" ) ( Name "discard$w" ) ) ) @@ -1759,7 +1747,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Ref Nothing ( Local - ( Name "$kont7760" ) + ( Name "$kont15027" ) ) ) ] @@ -1882,7 +1870,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$kont7762", AppN Nothing + ( Nothing, Name "$kont15029", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongWriterBind.Test" ) ( Name "discard$w" ) ) ) @@ -2622,7 +2610,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Ref Nothing ( Local - ( Name "$kont7761" ) + ( Name "$kont15028" ) ) ) ] @@ -2745,7 +2733,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$kont7763", AppN Nothing + ( Nothing, Name "$kont15030", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongWriterBind.Test" ) ( Name "discard$w" ) ) ) @@ -3485,7 +3473,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Ref Nothing ( Local - ( Name "$kont7762" ) + ( Name "$kont15029" ) ) ) ] @@ -4347,7 +4335,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Ref Nothing ( Local - ( Name "$kont7763" ) + ( Name "$kont15030" ) ) ) ] diff --git a/test/ps/output/Golden.LongWriterBind.Test/golden.lua b/test/ps/output/Golden.LongWriterBind.Test/golden.lua index 2fb03708..0182daad 100644 --- a/test/ps/output/Golden.LongWriterBind.Test/golden.lua +++ b/test/ps/output/Golden.LongWriterBind.Test/golden.lua @@ -17,9 +17,6 @@ local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Tuple_Tuple_S_w = function(value0, value1) - return { value0, value1 } -end local Data_Identity_applyIdentity = { apply = function(v) return function(v1) return v(v1) end end, Functor0 = function() @@ -34,10 +31,10 @@ local Data_Identity_applicativeIdentity = { } local Golden_LongWriterBind_Test_discard_S_w = function(v_S_0, k_S_0) local m_S_1 = k_S_0(v_S_0[1]) - return Data_Tuple_Tuple_S_w(m_S_1[1], Data_Semigroup_foreign.concatArray(v_S_0[2])(m_S_1[2])) + return { m_S_1[1], (Data_Semigroup_foreign.concatArray(v_S_0[2])(m_S_1[2])) } end local Golden_LongWriterBind_Test_tell = function(x_S_1) - return Data_Tuple_Tuple_S_w(Data_Unit_unit, x_S_1) + return { Data_Unit_unit, x_S_1 } end local Golden_LongWriterBind_Test_go = (function() local _S_kont0 = Golden_LongWriterBind_Test_discard_S_w(Golden_LongWriterBind_Test_tell({ @@ -160,7 +157,10 @@ local Golden_LongWriterBind_Test_go = (function() return Golden_LongWriterBind_Test_discard_S_w(Golden_LongWriterBind_Test_tell({ [1] = 200 }), function( ) - return Data_Identity_applicativeIdentity.pure(Data_Tuple_Tuple_S_w(42, {})) + return Data_Identity_applicativeIdentity.pure({ + 42, + {} + }) end) end) end) diff --git a/test/ps/output/Golden.MaybeChain.Test/golden.ir b/test/ps/output/Golden.MaybeChain.Test/golden.ir index febbac9c..fb0fb7d1 100644 --- a/test/ps/output/Golden.MaybeChain.Test/golden.ir +++ b/test/ps/output/Golden.MaybeChain.Test/golden.ir @@ -31,34 +31,6 @@ UberModule ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Nothing" ) [] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "Just" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [] ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ Ref Nothing ( Local ( Name "value0" ) ) ] - ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "maybe$w" }, AbsN Nothing - ( ParamNamed Nothing - ( Name "v" ) :| - [ ParamNamed Nothing ( Name "v1" ), ParamNamed Nothing ( Name "v2" ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2" ) ) ) ) - ) - ( Ref Nothing ( Local ( Name "v" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "v1" ) ) ) - ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v2" ) ) ) :| [] ) - ) - ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -66,95 +38,83 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse332", AbsN Nothing - ( ParamNamed Nothing ( Name "x$314" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$314" ) ) ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( LiteralInt Nothing 0 :| - [ Ref Nothing - ( Local ( Name "$cse332" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) :| - [ Ref Nothing - ( Imported - ( ModuleName "Data.Maybe" ) - ( Name "Just" ) - ), IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) - ) - ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) - ) - ] - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) - ) - ] - ) - ] - ) :| [] - ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| [] - ) - ( AppN Nothing + ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( LiteralInt Nothing 0 :| - [ Ref Nothing - ( Local ( Name "$cse332" ) ), AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) :| - [ Ref Nothing - ( Imported + ( Let Nothing + ( Standalone + ( Nothing, Name "v2$331", Let Nothing + ( Standalone + ( Nothing, Name "v2$327", IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ) + ) + ) + ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) - ( Name "Just" ) - ), Ctor Nothing SumType + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing + ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ) + ] + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$327" ) ) ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ) + ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Just" ) - [ LiteralInt Nothing 42 ] - ] + [ DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v2$327" ) ) ) + ] + ) ) - ] + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$331" ) ) ) ) + ) + ( LiteralInt Nothing 0 ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v2$331" ) ) ) + ) ) :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| [] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( LiteralInt Nothing 42 :| [] ) :| [] + ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ) diff --git a/test/ps/output/Golden.MaybeChain.Test/golden.lua b/test/ps/output/Golden.MaybeChain.Test/golden.lua index 6f0062dd..5849a12e 100644 --- a/test/ps/output/Golden.MaybeChain.Test/golden.lua +++ b/test/ps/output/Golden.MaybeChain.Test/golden.lua @@ -5,23 +5,27 @@ local Effect_Console_foreign = { } local Effect_Console_log = Effect_Console_foreign.log local Data_Maybe_Nothing = { "Data.Maybe∷Maybe.Nothing" } -local Data_Maybe_Just = function(value0) - return { "Data.Maybe∷Maybe.Just", value0 } -end -local Data_Maybe_maybe_S_w = function(v, v1, v2) - if "Data.Maybe∷Maybe.Nothing" == v2[1] then return v else return v1(v2[2]) end -end return (function() - local _S_cse0 = function(x_S_0) return x_S_0 end - local _ = Effect_Console_log(Data_Show_showIntImpl(Data_Maybe_maybe_S_w(0, _S_cse0, Data_Maybe_maybe_S_w(Data_Maybe_Nothing, Data_Maybe_Just, (function( ) - if "Data.Maybe∷Maybe.Just" == Data_Maybe_Nothing[1] then - return { "Data.Maybe∷Maybe.Just", Data_Maybe_Nothing[2] } + local _ = Effect_Console_log(Data_Show_showIntImpl((function() + local v2_S_1 = (function() + local v2_S_0 = (function() + if "Data.Maybe∷Maybe.Just" == Data_Maybe_Nothing[1] then + return { "Data.Maybe∷Maybe.Just", Data_Maybe_Nothing[2] } + else + return Data_Maybe_Nothing + end + end)() + if "Data.Maybe∷Maybe.Nothing" == v2_S_0[1] then + return Data_Maybe_Nothing + else + return { "Data.Maybe∷Maybe.Just", v2_S_0[2] } + end + end)() + if "Data.Maybe∷Maybe.Nothing" == v2_S_1[1] then + return 0 else - return Data_Maybe_Nothing + return v2_S_1[2] end - end)()))))() - return Effect_Console_log(Data_Show_showIntImpl(Data_Maybe_maybe_S_w(0, _S_cse0, Data_Maybe_maybe_S_w(Data_Maybe_Nothing, Data_Maybe_Just, { - "Data.Maybe∷Maybe.Just", - 42 - }))))() + end)()))() + return Effect_Console_log(Data_Show_showIntImpl(42))() end)() diff --git a/test/ps/output/Golden.MaybeChainModule.Test/golden.ir b/test/ps/output/Golden.MaybeChainModule.Test/golden.ir index f46d35f9..51330b00 100644 --- a/test/ps/output/Golden.MaybeChainModule.Test/golden.ir +++ b/test/ps/output/Golden.MaybeChainModule.Test/golden.ir @@ -7,48 +7,14 @@ UberModule ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Nothing" ) [] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "Just" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [] ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ Ref Nothing ( Local ( Name "value0" ) ) ] - ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "maybe$w" }, AbsN Nothing - ( ParamNamed Nothing - ( Name "v" ) :| - [ ParamNamed Nothing ( Name "v1" ), ParamNamed Nothing ( Name "v2" ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2" ) ) ) ) - ) - ( Ref Nothing ( Local ( Name "v" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "v1" ) ) ) - ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v2" ) ) ) :| [] ) - ) - ) ) ], uberModuleForeigns = [], uberModuleExports = [ - ( Name "chainedNothing", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( LiteralInt Nothing 0 :| - [ AbsN Nothing - ( ParamNamed Nothing ( Name "x$297" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$297" ) ) ), AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) :| - [ Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Just" ) ), IfThenElse Nothing + ( Name "chainedNothing", Let Nothing + ( Standalone + ( Nothing, Name "v2$314", Let Nothing + ( Standalone + ( Nothing, Name "v2$310", IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) ( ReflectCtor Nothing @@ -64,30 +30,34 @@ UberModule ] ) ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) - ] + ) :| [] ) - ] - ) - ), - ( Name "chainedJust", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( LiteralInt Nothing 0 :| - [ AbsN Nothing - ( ParamNamed Nothing ( Name "x$301" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$301" ) ) ), AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "maybe$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) :| - [ Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Just" ) ), Ctor Nothing SumType + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$310" ) ) ) ) + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) + ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Just" ) - [ LiteralInt Nothing 42 ] - ] + [ DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v2$310" ) ) ) + ] + ) ) - ] + ) :| [] ) - ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$314" ) ) ) ) + ) + ( LiteralInt Nothing 0 ) + ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v2$314" ) ) ) ) + ) + ), + ( Name "chainedJust", LiteralInt Nothing 42 ) ] } \ No newline at end of file diff --git a/test/ps/output/Golden.MaybeChainModule.Test/golden.lua b/test/ps/output/Golden.MaybeChainModule.Test/golden.lua index 0abb8373..152e2f42 100644 --- a/test/ps/output/Golden.MaybeChainModule.Test/golden.lua +++ b/test/ps/output/Golden.MaybeChainModule.Test/golden.lua @@ -1,24 +1,25 @@ local Data_Maybe_Nothing = { "Data.Maybe∷Maybe.Nothing" } -local Data_Maybe_Just = function(value0) - return { "Data.Maybe∷Maybe.Just", value0 } -end -local Data_Maybe_maybe_S_w = function(v, v1, v2) - if "Data.Maybe∷Maybe.Nothing" == v2[1] then return v else return v1(v2[2]) end -end return { - chainedNothing = Data_Maybe_maybe_S_w(0, function(x_S_0) - return x_S_0 - end, Data_Maybe_maybe_S_w(Data_Maybe_Nothing, Data_Maybe_Just, (function() - if "Data.Maybe∷Maybe.Just" == Data_Maybe_Nothing[1] then - return { "Data.Maybe∷Maybe.Just", Data_Maybe_Nothing[2] } + chainedNothing = (function() + local v2_S_1 = (function() + local v2_S_0 = (function() + if "Data.Maybe∷Maybe.Just" == Data_Maybe_Nothing[1] then + return { "Data.Maybe∷Maybe.Just", Data_Maybe_Nothing[2] } + else + return Data_Maybe_Nothing + end + end)() + if "Data.Maybe∷Maybe.Nothing" == v2_S_0[1] then + return Data_Maybe_Nothing + else + return { "Data.Maybe∷Maybe.Just", v2_S_0[2] } + end + end)() + if "Data.Maybe∷Maybe.Nothing" == v2_S_1[1] then + return 0 else - return Data_Maybe_Nothing + return v2_S_1[2] end - end)())), - chainedJust = Data_Maybe_maybe_S_w(0, function(x_S_1) - return x_S_1 - end, Data_Maybe_maybe_S_w(Data_Maybe_Nothing, Data_Maybe_Just, { - "Data.Maybe∷Maybe.Just", - 42 - })) + end)(), + chainedJust = 42 } diff --git a/test/ps/output/Golden.NameShadowing.Test/golden.ir b/test/ps/output/Golden.NameShadowing.Test/golden.ir index b16980cc..88f9f9b7 100644 --- a/test/ps/output/Golden.NameShadowing.Test/golden.ir +++ b/test/ps/output/Golden.NameShadowing.Test/golden.ir @@ -1,43 +1,14 @@ UberModule - { uberModuleBindings = - [ Standalone - ( QName - { qnameModuleName = ModuleName "Golden.NameShadowing.Test", qnameName = Name "f$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "v" ) :| [ ParamNamed Nothing ( Name "v1" ) ] ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralInt Nothing 1 ) ( Ref Nothing ( Local ( Name "v" ) ) ) ) - ( LiteralInt Nothing 1 ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralInt Nothing 1 ) ( Ref Nothing ( Local ( Name "v1" ) ) ) ) - ( LiteralInt Nothing 2 ) - ( LiteralInt Nothing 3 ) - ) - ) - ) - ], uberModuleForeigns = [], uberModuleExports = + { uberModuleBindings = [], uberModuleForeigns = [], uberModuleExports = [ ( Name "b", AbsN Nothing ( ParamNamed Nothing ( Name "x$0" ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "x1$1" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.NameShadowing.Test" ) ( Name "f$w" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.NameShadowing.Test" ) ( Name "f$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "x$0" ) ) :| - [ Ref Nothing ( Local ( Name "x1$1" ) ) ] - ) :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.NameShadowing.Test" ) ( Name "f$w" ) ) - ) - ( LiteralInt Nothing 42 :| [ LiteralInt Nothing 1 ] ) - ] - ) + ( ParamUnused Nothing :| [] ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralInt Nothing 1 ) ( Ref Nothing ( Local ( Name "x$0" ) ) ) ) + ( LiteralInt Nothing 1 ) + ( LiteralInt Nothing 3 ) ) ) ), @@ -45,9 +16,14 @@ UberModule ( ParamNamed Nothing ( Name "x$3" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "x1$4" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.NameShadowing.Test" ) ( Name "f$w" ) ) ) - ( Ref Nothing ( Local ( Name "x1$4" ) ) :| [ Ref Nothing ( Local ( Name "x$3" ) ) ] ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralInt Nothing 1 ) ( Ref Nothing ( Local ( Name "x1$4" ) ) ) ) + ( LiteralInt Nothing 1 ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralInt Nothing 1 ) ( Ref Nothing ( Local ( Name "x$3" ) ) ) ) + ( LiteralInt Nothing 2 ) + ( LiteralInt Nothing 3 ) + ) ) ) ) diff --git a/test/ps/output/Golden.NameShadowing.Test/golden.lua b/test/ps/output/Golden.NameShadowing.Test/golden.lua index 9ceaa0a9..b1b6e3be 100644 --- a/test/ps/output/Golden.NameShadowing.Test/golden.lua +++ b/test/ps/output/Golden.NameShadowing.Test/golden.lua @@ -1,15 +1,16 @@ -local Golden_NameShadowing_Test_f_S_w = function(v, v1) - if 1 == v then return 1 elseif 1 == v1 then return 2 else return 3 end -end return { b = function(x_S_0) - return function(x1_S_0) - return Golden_NameShadowing_Test_f_S_w(Golden_NameShadowing_Test_f_S_w(x_S_0, x1_S_0), Golden_NameShadowing_Test_f_S_w(42, 1)) - end + return function() if 1 == x_S_0 then return 1 else return 3 end end end, c = function(x_S_1) - return function(x1_S_1) - return Golden_NameShadowing_Test_f_S_w(x1_S_1, x_S_1) + return function(x1_S_0) + if 1 == x1_S_0 then + return 1 + elseif 1 == x_S_1 then + return 2 + else + return 3 + end end end } diff --git a/test/ps/output/Golden.NativeLoopsGuard.Test/golden.ir b/test/ps/output/Golden.NativeLoopsGuard.Test/golden.ir index d20eabf1..1cc718e0 100644 --- a/test/ps/output/Golden.NativeLoopsGuard.Test/golden.ir +++ b/test/ps/output/Golden.NativeLoopsGuard.Test/golden.ir @@ -389,16 +389,21 @@ UberModule ( ParamNamed Nothing ( Name "forE$p2$1444" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "forE$p3$1445" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.NativeLoopsGuard.Test" ) ( Name "forE$w" ) ) + ( IfThenElse Nothing + ( PrimBinOp Nothing PrimLt + ( Ref Nothing ( Local ( Name "forE$p1$1443" ) ) ) + ( Ref Nothing ( Local ( Name "forE$p2$1444" ) ) ) ) - ( Ref Nothing - ( Local ( Name "forE$p1$1443" ) ) :| - [ Ref Nothing - ( Local ( Name "forE$p2$1444" ) ), Ref Nothing - ( Local ( Name "forE$p3$1445" ) ) - ] + ( AppN Nothing + ( Ref Nothing ( Local ( Name "forE$p3$1445" ) ) ) + ( Ref Nothing ( Local ( Name "forE$p1$1443" ) ) :| [] ) + ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect" ) ( Name "applicativeEffect" ) ) ) + ( PropName "pure" ) + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) ) ) ) @@ -423,13 +428,34 @@ UberModule ( ParamNamed Nothing ( Name "whileE$p1$1448" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "whileE$p2$1449" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.NativeLoopsGuard.Test" ) ( Name "whileE$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "whileE$p1$1448" ) ) :| - [ Ref Nothing ( Local ( Name "whileE$p2$1449" ) ) ] + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "b$1491", AppN Nothing + ( Ref Nothing ( Local ( Name "whileE$p1$1448" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| [] + ) + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "b$1491" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "whileE$p2$1449" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Effect" ) ( Name "applicativeEffect" ) ) + ) + ( PropName "pure" ) + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Unit" ) ( Name "unit" ) ) :| [] ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ) ) ) ) @@ -566,21 +592,21 @@ UberModule ( PropName "modifyImpl" ) ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "s$1484" ) :| [] ) + ( ParamNamed Nothing ( Name "s$1538" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "s'$1485", PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "s$1484" ) ) ) + ( Nothing, Name "s'$1539", PrimBinOp Nothing PrimSub + ( Ref Nothing ( Local ( Name "s$1538" ) ) ) ( LiteralInt Nothing 1 ) ) :| [] ) ( LiteralObject Nothing [ ( PropName "state", Ref Nothing - ( Local ( Name "s'$1485" ) ) + ( Local ( Name "s'$1539" ) ) ), ( PropName "value", Ref Nothing - ( Local ( Name "s'$1485" ) ) + ( Local ( Name "s'$1539" ) ) ) ] ) diff --git a/test/ps/output/Golden.Primops.Test/golden.ir b/test/ps/output/Golden.Primops.Test/golden.ir index 512d9744..4a5b2291 100644 --- a/test/ps/output/Golden.Primops.Test/golden.ir +++ b/test/ps/output/Golden.Primops.Test/golden.ir @@ -84,21 +84,6 @@ UberModule ) ] ) :| [] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "logShow$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictShow" ) ) ) - ( PropName "show" ) - ) - ( Ref Nothing ( Local ( Name "a" ) ) :| [] ) :| [] - ) - ) ), RecursiveGroup ( ( QName @@ -158,146 +143,90 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse247", LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$235" ) :| [] ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "v$235" ) ) ) - ( LiteralString Nothing "true" ) - ( LiteralString Nothing "false" ) + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Primops.Test" ) ( Name "sumTo$w" ) ) + ) + ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 5 ] ) :| [] + ) :| [] ) - ] - ) :| [] - ) - ( Let Nothing - ( Standalone + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| + [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( LiteralObject Nothing - [ - ( PropName "show", ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PropName "showIntImpl" ) - ) - ] :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Primops.Test" ) ( Name "sumTo$w" ) ) - ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 5 ] ) - ] - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( LiteralString Nothing "true" :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) - ) - ( Ref Nothing ( Local ( Name "$cse247" ) ) :| [ LiteralBool Nothing True ] ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) - ) - ( Ref Nothing ( Local ( Name "$cse247" ) ) :| [ LiteralBool Nothing True ] ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) - ) - ( LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$108" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse248", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$108" ) ) ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Ordering∷Ordering.LT" ) - ( Ref Nothing ( Local ( Name "$cse248" ) ) ) - ) - ( LiteralString Nothing "LT" ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Ordering∷Ordering.GT" ) - ( Ref Nothing ( Local ( Name "$cse248" ) ) ) - ) - ( LiteralString Nothing "GT" ) - ( LiteralString Nothing "EQ" ) - ) - ) - ) - ) - ] :| - [ Ctor Nothing SumType - ( ModuleName "Data.Ordering" ) - ( TyName "Ordering" ) - ( CtorName "LT" ) [] - ] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( LiteralString Nothing "foobar" :| [] ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( LiteralString Nothing "true" :| [] ) ) - ] - ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( LiteralString Nothing "LT" :| [] ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( LiteralString Nothing "foobar" :| [] ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Local ( Name "$cse247" ) ) :| - [ AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.HeytingAlgebra" ) - ( Name "heytingAlgebraBoolean" ) - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.HeytingAlgebra" ) + ( Name "heytingAlgebraBoolean" ) ) - ( PropName "conj" ) ) - ( LiteralBool Nothing True :| [] ) + ( PropName "conj" ) ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.HeytingAlgebra" ) - ( Name "heytingAlgebraBoolean" ) - ) + ( LiteralBool Nothing True :| [] ) + ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.HeytingAlgebra" ) + ( Name "heytingAlgebraBoolean" ) ) - ( PropName "not" ) ) - ( LiteralBool Nothing False :| [] ) :| [] + ( PropName "not" ) ) - ] + ( LiteralBool Nothing False :| [] ) :| [] + ) ) + ( LiteralString Nothing "true" ) + ( LiteralString Nothing "false" ) :| [] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ) diff --git a/test/ps/output/Golden.Primops.Test/golden.lua b/test/ps/output/Golden.Primops.Test/golden.lua index c3488ff6..c97d4ec8 100644 --- a/test/ps/output/Golden.Primops.Test/golden.lua +++ b/test/ps/output/Golden.Primops.Test/golden.lua @@ -21,9 +21,6 @@ Data_HeytingAlgebra_heytingAlgebraBoolean = { end, _not_ = function(b_S_0) return not(b_S_0) end } -local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_log(dictShow.show(a)) -end local Golden_Primops_Test_sumTo_S_w = function(acc, n) while true do if n >= 0 and n ~= 0 then acc, n = acc + n, n - 1 else return acc end @@ -35,28 +32,16 @@ M.Golden_Primops_Test_sumTo = function(sumTo_S_p1) end end return (function() - local _S_cse0 = { - show = function(v_S_0) - if v_S_0 then return "true" else return "false" end - end - } - local _ = Effect_Console_logShow_S_w({ - show = Data_Show_foreign.showIntImpl - }, Golden_Primops_Test_sumTo_S_w(0, 5))() - local _ = Effect_Console_logShow_S_w(_S_cse0, true)() - local _ = Effect_Console_logShow_S_w(_S_cse0, true)() - local _ = Effect_Console_logShow_S_w({ - show = function(v_S_1) - local _S_cse1 = v_S_1[1] - if "Data.Ordering∷Ordering.LT" == _S_cse1 then - return "LT" - elseif "Data.Ordering∷Ordering.GT" == _S_cse1 then - return "GT" - else - return "EQ" - end - end - }, { "Data.Ordering∷Ordering.LT" })() + local _ = Effect_Console_log(Data_Show_foreign.showIntImpl(Golden_Primops_Test_sumTo_S_w(0, 5)))() + local _ = Effect_Console_log("true")() + local _ = Effect_Console_log("true")() + local _ = Effect_Console_log("LT")() local _ = Effect_Console_log("foobar")() - return Effect_Console_logShow_S_w(_S_cse0, Data_HeytingAlgebra_heytingAlgebraBoolean.conj(true)(Data_HeytingAlgebra_heytingAlgebraBoolean._not_(false)))() + return Effect_Console_log((function() + if Data_HeytingAlgebra_heytingAlgebraBoolean.conj(true)(Data_HeytingAlgebra_heytingAlgebraBoolean._not_(false)) then + return "true" + else + return "false" + end + end)())() end)() diff --git a/test/ps/output/Golden.STDoBlock.Test/golden.ir b/test/ps/output/Golden.STDoBlock.Test/golden.ir index 3011883d..91fb24ed 100644 --- a/test/ps/output/Golden.STDoBlock.Test/golden.ir +++ b/test/ps/output/Golden.STDoBlock.Test/golden.ir @@ -47,7 +47,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse488", AbsN Nothing + ( Nothing, Name "$cse513", AbsN Nothing ( ParamNamed Nothing ( Name "s$448" ) :| [] ) ( Let Nothing ( Standalone @@ -89,7 +89,7 @@ UberModule ( Name "modifyImpl" ) ) ) - ( Ref Nothing ( Local ( Name "$cse488" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse513" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) @@ -106,7 +106,7 @@ UberModule ( Name "modifyImpl" ) ) ) - ( Ref Nothing ( Local ( Name "$cse488" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse513" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) diff --git a/test/ps/output/Golden.SpecConstr.Test/golden.ir b/test/ps/output/Golden.SpecConstr.Test/golden.ir index 3e46da59..d7c93eab 100644 --- a/test/ps/output/Golden.SpecConstr.Test/golden.ir +++ b/test/ps/output/Golden.SpecConstr.Test/golden.ir @@ -20,41 +20,10 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showInt" - }, LiteralObject Nothing - [ - ( PropName "show", Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ] - ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "logShow$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) - ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictShow" ) ) ) - ( PropName "show" ) - ) - ( Ref Nothing ( Local ( Name "a" ) ) :| [] ) :| [] - ) - ) + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.SpecConstr.Test", qnameName = Name "sumCount" @@ -132,7 +101,7 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse463", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse499", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) @@ -144,7 +113,7 @@ UberModule ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse463" ) ) ) + ( Ref Nothing ( Local ( Name "$cse499" ) ) ) ( LiteralInt Nothing 0 ) ) ( LiteralInt Nothing 42 ) @@ -156,7 +125,7 @@ UberModule ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse463" ) ) ) + ( Ref Nothing ( Local ( Name "$cse499" ) ) ) ( LiteralInt Nothing 1 ) :| [] ) ) @@ -202,31 +171,31 @@ UberModule ( ParamNamed Nothing ( Name "t" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse465", DataArgumentByIndex Nothing ProductType 1 + ( Nothing, Name "$cse501", DataArgumentByIndex Nothing ProductType 1 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse464", DataArgumentByIndex Nothing ProductType 0 + ( Nothing, Name "$cse500", DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse464" ) ) ) + ( Ref Nothing ( Local ( Name "$cse500" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "$cse465" ) ) ) + ( Ref Nothing ( Local ( Name "$cse501" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "ping$sc1Tuple" ) ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse464" ) ) ) + ( Ref Nothing ( Local ( Name "$cse500" ) ) ) ( LiteralInt Nothing 1 ) :| [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse465" ) ) ) + ( Ref Nothing ( Local ( Name "$cse501" ) ) ) ( LiteralInt Nothing 2 ) ] ) @@ -269,31 +238,31 @@ UberModule ( ParamNamed Nothing ( Name "t" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse467", DataArgumentByIndex Nothing ProductType 1 + ( Nothing, Name "$cse503", DataArgumentByIndex Nothing ProductType 1 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse466", DataArgumentByIndex Nothing ProductType 0 + ( Nothing, Name "$cse502", DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse466" ) ) ) + ( Ref Nothing ( Local ( Name "$cse502" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "$cse467" ) ) ) + ( Ref Nothing ( Local ( Name "$cse503" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "pong$sc1Tuple" ) ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse466" ) ) ) + ( Ref Nothing ( Local ( Name "$cse502" ) ) ) ( LiteralInt Nothing 1 ) :| [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse467" ) ) ) + ( Ref Nothing ( Local ( Name "$cse503" ) ) ) ( LiteralInt Nothing 1 ) ] ) @@ -319,9 +288,11 @@ UberModule ( PrimBinOp Nothing PrimSub ( Ref Nothing ( Local ( Name "n" ) ) ) ( LiteralInt Nothing 1 ) :| - [ AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( Ref Nothing ( Local ( Name "n" ) ) :| [ Ref Nothing ( Local ( Name "n" ) ) ] ) + [ Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing ( Local ( Name "n" ) ), Ref Nothing ( Local ( Name "n" ) ) ] ] ) ) @@ -370,82 +341,79 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$86" ) :| [] ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v$86", Let Nothing + ( RecursiveGroup + ( + ( Nothing, Name "go$460$sc1Tuple", AbsN Nothing + ( ParamNamed Nothing + ( Name "go$460$sc1Tuple$f1" ) :| + [ ParamNamed Nothing ( Name "go$460$sc1Tuple$f2" ) ] + ) + ( IfThenElse Nothing + ( PrimBinOp Nothing PrimLt + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple$f2" ) ) ) + ( LiteralInt Nothing 5 ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple" ) ) ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple$f1" ) ) ) + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple$f2" ) ) ) :| + [ PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple$f2" ) ) ) + ( LiteralInt Nothing 1 ) + ] + ) + ) + ( Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ Ref Nothing + ( Local ( Name "go$460$sc1Tuple$f1" ) ), Ref Nothing + ( Local ( Name "go$460$sc1Tuple$f2" ) ) + ] + ) + ) + ) :| [] + ) :| [] + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "go$460$sc1Tuple" ) ) ) + ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 0 ] ) + ) + ) :| [] + ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "(Tuple " ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ) + ( DataArgumentByIndex Nothing ProductType 0 + ( Ref Nothing ( Local ( Name "v$86" ) ) ) :| [] + ) + ) ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "(Tuple " ) + ( LiteralString Nothing " " ) ( PrimBinOp Nothing PrimConcat ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( DataArgumentByIndex Nothing ProductType 0 + ( DataArgumentByIndex Nothing ProductType 1 ( Ref Nothing ( Local ( Name "v$86" ) ) ) :| [] ) ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing " " ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing ( Local ( Name "v$86" ) ) ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) - ) + ( LiteralString Nothing ")" ) ) ) ) - ] :| - [ Let Nothing - ( RecursiveGroup - ( - ( Nothing, Name "go$447$sc1Tuple", AbsN Nothing - ( ParamNamed Nothing - ( Name "go$447$sc1Tuple$f1" ) :| - [ ParamNamed Nothing ( Name "go$447$sc1Tuple$f2" ) ] - ) - ( IfThenElse Nothing - ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple$f2" ) ) ) - ( LiteralInt Nothing 5 ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple$f1" ) ) ) - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple$f2" ) ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple$f2" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) - ) - ( Ctor Nothing ProductType - ( ModuleName "Data.Tuple" ) - ( TyName "Tuple" ) - ( CtorName "Tuple" ) - [ Ref Nothing - ( Local ( Name "go$447$sc1Tuple$f1" ) ), Ref Nothing - ( Local ( Name "go$447$sc1Tuple$f2" ) ) - ] - ) - ) - ) :| [] - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$447$sc1Tuple" ) ) ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 0 ] ) - ) - ] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -453,28 +421,28 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "stepDown$sc1Just" ) ) ) - ( LiteralInt Nothing 3 :| [] ) - ] + ( LiteralInt Nothing 3 :| [] ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "stepDown" ) ) ) @@ -482,26 +450,26 @@ UberModule ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Nothing" ) [] :| [] - ) - ] + ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "ping$sc1Tuple" ) ) ) - ( LiteralInt Nothing 4 :| [ LiteralInt Nothing 10 ] ) - ] + ( LiteralInt Nothing 4 :| [ LiteralInt Nothing 10 ] ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -510,20 +478,22 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "blind$w" ) ) ) ( LiteralInt Nothing 3 :| - [ AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) ) - ( LiteralInt Nothing 1 :| [ LiteralInt Nothing 1 ] ) + [ Ctor Nothing ProductType + ( ModuleName "Data.Tuple" ) + ( TyName "Tuple" ) + ( CtorName "Tuple" ) + [ LiteralInt Nothing 1, LiteralInt Nothing 1 ] ] - ) - ] + ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.SpecConstr.Test/golden.lua b/test/ps/output/Golden.SpecConstr.Test/golden.lua index 77822df9..a672cbd1 100644 --- a/test/ps/output/Golden.SpecConstr.Test/golden.lua +++ b/test/ps/output/Golden.SpecConstr.Test/golden.lua @@ -4,13 +4,7 @@ local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Show_showInt = { show = Data_Show_showIntImpl } -local Data_Tuple_Tuple_S_w = function(value0, value1) - return { value0, value1 } -end -local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_foreign.log(dictShow.show(a)) -end +local Effect_Console_log = Effect_Console_foreign.log M.Golden_SpecConstr_Test_sumCount = function(n) local go_S_sc1Tuple_S_f1, go_S_sc1Tuple_S_f2 go_S_sc1Tuple_S_f1, go_S_sc1Tuple_S_f2 = 0, 0 @@ -94,7 +88,7 @@ Golden_SpecConstr_Test_blind_S_w = function(n) if n == 0 then return 0 else - return Golden_SpecConstr_Test_blind_S_w(n - 1, Data_Tuple_Tuple_S_w(n, n)) + return Golden_SpecConstr_Test_blind_S_w(n - 1, { n, n }) end end M.Golden_SpecConstr_Test_blind = function(blind_S_p1) @@ -103,25 +97,27 @@ M.Golden_SpecConstr_Test_blind = function(blind_S_p1) end end return (function() - local _ = Effect_Console_logShow_S_w({ - show = function(v_S_0) - return "(Tuple " .. Data_Show_showIntImpl(v_S_0[1]) .. " " .. Data_Show_showIntImpl(v_S_0[2]) .. ")" - end - }, (function() - local go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 - go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 = 0, 0 - while true do - if go_S_0_S_sc1Tuple_S_f2 < 5 then - go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 = go_S_0_S_sc1Tuple_S_f1 + go_S_0_S_sc1Tuple_S_f2, go_S_0_S_sc1Tuple_S_f2 + 1 - else - return { go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 } + local _ = Effect_Console_log((function() + local v_S_0 = (function() + local go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 + go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 = 0, 0 + while true do + if go_S_0_S_sc1Tuple_S_f2 < 5 then + go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 = go_S_0_S_sc1Tuple_S_f1 + go_S_0_S_sc1Tuple_S_f2, go_S_0_S_sc1Tuple_S_f2 + 1 + else + return { go_S_0_S_sc1Tuple_S_f1, go_S_0_S_sc1Tuple_S_f2 } + end end - end + end)() + return "(Tuple " .. Data_Show_showIntImpl(v_S_0[1]) .. " " .. Data_Show_showIntImpl(v_S_0[2]) .. ")" end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Golden_SpecConstr_Test_stepDown_S_sc1Just(3))() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Golden_SpecConstr_Test_stepDown({ + local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_SpecConstr_Test_stepDown_S_sc1Just(3)))() + local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_SpecConstr_Test_stepDown({ "Data.Maybe∷Maybe.Nothing" - }))() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Golden_SpecConstr_Test_ping_S_sc1Tuple(4, 10))() - return Effect_Console_logShow_S_w(Data_Show_showInt, Golden_SpecConstr_Test_blind_S_w(3, Data_Tuple_Tuple_S_w(1, 1)))() + })))() + local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_SpecConstr_Test_ping_S_sc1Tuple(4, 10)))() + return Effect_Console_log(Data_Show_showIntImpl(Golden_SpecConstr_Test_blind_S_w(3, { + 1, + 1 + })))() end)() diff --git a/test/ps/output/Golden.StringCodePoints.Test/golden.ir b/test/ps/output/Golden.StringCodePoints.Test/golden.ir index 9899a8cb..fd40eb5a 100644 --- a/test/ps/output/Golden.StringCodePoints.Test/golden.ir +++ b/test/ps/output/Golden.StringCodePoints.Test/golden.ir @@ -127,6 +127,12 @@ UberModule }, ForeignImport Nothing ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) ), RecursiveGroup ( ( QName @@ -209,15 +215,6 @@ UberModule ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showInt" - }, LiteralObject Nothing - [ - ( PropName "show", Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ] - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Ordering", qnameName = Name "LT" }, Ctor Nothing SumType @@ -370,19 +367,19 @@ UberModule ( QName { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "add$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$1627" ) :| [ ParamNamed Nothing ( Name "y$1628" ) ] ) + ( ParamNamed Nothing ( Name "x$1752" ) :| [ ParamNamed Nothing ( Name "y$1753" ) ] ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x$1627" ) ) ) - ( Ref Nothing ( Local ( Name "y$1628" ) ) ) + ( Ref Nothing ( Local ( Name "x$1752" ) ) ) + ( Ref Nothing ( Local ( Name "y$1753" ) ) ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "sub$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$1624" ) :| [ ParamNamed Nothing ( Name "y$1625" ) ] ) + ( ParamNamed Nothing ( Name "x$1749" ) :| [ ParamNamed Nothing ( Name "y$1750" ) ] ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "x$1624" ) ) ) - ( Ref Nothing ( Local ( Name "y$1625" ) ) ) + ( Ref Nothing ( Local ( Name "x$1749" ) ) ) + ( Ref Nothing ( Local ( Name "y$1750" ) ) ) ) ), Standalone ( QName @@ -462,7 +459,7 @@ UberModule ( AppN Nothing ( Let Nothing ( Standalone - ( Nothing, Name "x$1610", AppN Nothing + ( Nothing, Name "x$1723", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "length" ) ) ) @@ -470,19 +467,19 @@ UberModule ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "y$1611" ) :| [] ) + ( ParamNamed Nothing ( Name "y$1724" ) :| [] ) ( IfThenElse Nothing ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "x$1610" ) ) ) - ( Ref Nothing ( Local ( Name "y$1611" ) ) ) + ( Ref Nothing ( Local ( Name "x$1723" ) ) ) + ( Ref Nothing ( Local ( Name "y$1724" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "LT" ) ) ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "x$1610" ) ) ) - ( Ref Nothing ( Local ( Name "y$1611" ) ) ) + ( Ref Nothing ( Local ( Name "x$1723" ) ) ) + ( Ref Nothing ( Local ( Name "y$1724" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "EQ" ) ) @@ -569,7 +566,7 @@ UberModule ( QName { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "fromCharCode" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$1604" ) :| [] ) + ( ParamNamed Nothing ( Name "x$1680" ) :| [] ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "foreign" ) ) ) @@ -596,7 +593,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| [ Ref Nothing - ( Local ( Name "x$1604" ) ), AppN Nothing + ( Local ( Name "x$1680" ) ), AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) @@ -614,7 +611,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| [ Ref Nothing - ( Local ( Name "x$1604" ) ), AppN Nothing + ( Local ( Name "x$1680" ) ), AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) @@ -634,7 +631,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "foreign" ) ) ) ( PropName "fromCharCode" ) ) - ( Ref Nothing ( Local ( Name "x$1604" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "x$1680" ) ) :| [] ) ] ) ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) @@ -652,7 +649,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| [ Ref Nothing - ( Local ( Name "x$1604" ) ), AppN Nothing + ( Local ( Name "x$1680" ) ), AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) :| [] @@ -672,18 +669,26 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "v" ) :| [] ) ( IfThenElse Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThanOrEq$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing ( Local ( Name "v" ) ), LiteralInt Nothing 65535 ] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "fromCharCode" ) ) + ( Eq Nothing + ( LiteralString Nothing "Data.Ordering∷Ordering.GT" ) + ( IfThenElse Nothing + ( PrimBinOp Nothing PrimLt + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( LiteralInt Nothing 65535 ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "LT" ) ) ) + ) + ( IfThenElse Nothing + ( Eq Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ( LiteralInt Nothing 65535 ) ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "EQ" ) ) ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "GT" ) ) ) + ) + ) ) - ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) ) ( PrimBinOp Nothing PrimConcat ( AppN Nothing @@ -743,6 +748,12 @@ UberModule ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "fromCharCode" ) ) + ) + ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) + ) ) ), Standalone ( QName @@ -848,11 +859,25 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "v" ) :| [ ParamNamed Nothing ( Name "v1" ) ] ) ( IfThenElse Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThan$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing ( Local ( Name "v" ) ), LiteralInt Nothing 1 ] + ( Eq Nothing + ( LiteralString Nothing "Data.Ordering∷Ordering.LT" ) + ( IfThenElse Nothing + ( PrimBinOp Nothing PrimLt + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( LiteralInt Nothing 1 ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "LT" ) ) ) + ) + ( IfThenElse Nothing + ( Eq Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ( LiteralInt Nothing 1 ) ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "EQ" ) ) ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "GT" ) ) ) + ) + ) ) ) ( LiteralString Nothing "" ) @@ -1017,14 +1042,14 @@ UberModule ( AbsN Nothing ( ParamUnused Nothing :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "v$1574" ) :| [] ) + ( ParamNamed Nothing ( Name "v$1608" ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1574" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1608" ) ) ) ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1574" ) ) ) + ( Ref Nothing ( Local ( Name "v$1608" ) ) ) ) ( Exception Nothing "No patterns matched" ) ) @@ -1050,7 +1075,7 @@ UberModule ( ParamNamed Nothing ( Name "s$8" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "v1$1577", AppN Nothing + ( Nothing, Name "v1$1611", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) ) @@ -1060,7 +1085,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1577" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1611" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1072,11 +1097,11 @@ UberModule ( CtorName "Tuple" ) [ ObjectProp Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1577" ) ) ) + ( Ref Nothing ( Local ( Name "v1$1611" ) ) ) ) ( PropName "head" ), ObjectProp Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1577" ) ) ) + ( Ref Nothing ( Local ( Name "v1$1611" ) ) ) ) ( PropName "tail" ) ] @@ -1178,11 +1203,25 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "v" ) :| [ ParamNamed Nothing ( Name "v1" ) ] ) ( IfThenElse Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThan$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing ( Local ( Name "v" ) ), LiteralInt Nothing 0 ] + ( Eq Nothing + ( LiteralString Nothing "Data.Ordering∷Ordering.LT" ) + ( IfThenElse Nothing + ( PrimBinOp Nothing PrimLt + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( LiteralInt Nothing 0 ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "LT" ) ) ) + ) + ( IfThenElse Nothing + ( Eq Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ( LiteralInt Nothing 0 ) ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "EQ" ) ) ) + ) + ( ReflectCtor Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ordering" ) ( Name "GT" ) ) ) + ) + ) ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) @@ -1331,7 +1370,7 @@ UberModule ( LiteralObject Nothing [ ( PropName "succ", AbsN Nothing - ( ParamNamed Nothing ( Name "a$1560" ) :| [] ) + ( ParamNamed Nothing ( Name "a$1588" ) :| [] ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing @@ -1353,14 +1392,14 @@ UberModule ) ( PropName "fromEnum" ) ) - ( Ref Nothing ( Local ( Name "a$1560" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "a$1588" ) ) :| [] ) ) ( LiteralInt Nothing 1 ) :| [] ) ) ), ( PropName "pred", AbsN Nothing - ( ParamNamed Nothing ( Name "a$1568" ) :| [] ) + ( ParamNamed Nothing ( Name "a$1596" ) :| [] ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing @@ -1382,7 +1421,7 @@ UberModule ) ( PropName "fromEnum" ) ) - ( Ref Nothing ( Local ( Name "a$1568" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "a$1596" ) ) :| [] ) ) ( LiteralInt Nothing 1 ) :| [] ) @@ -1405,10 +1444,7 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dictShow" ) ) ) @@ -1426,37 +1462,30 @@ UberModule ) ( PropName "fromEnum" ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "showArray" - }, LiteralObject Nothing - [ - ( PropName "show", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] ) - ) - ] - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "logShow" }, AbsN Nothing - ( ParamNamed Nothing ( Name "logShow$p2$1550" ) :| [] ) + ( ParamNamed Nothing ( Name "logShow$p2$1556" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "showArray" ) ) :| - [ Ref Nothing ( Local ( Name "logShow$p2$1550" ) ) ] + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] ) + ) + ( Ref Nothing ( Local ( Name "logShow$p2$1556" ) ) :| [] ) :| [] ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "logShow1" }, AbsN Nothing - ( ParamNamed Nothing ( Name "logShow$p2$1548" ) :| [] ) + ( ParamNamed Nothing ( Name "logShow$p2$1551" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ Ref Nothing ( Local ( Name "logShow$p2$1548" ) ) ] + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( Ref Nothing ( Local ( Name "logShow$p2$1551" ) ) :| [] ) :| [] ) ) ), Standalone @@ -1465,35 +1494,25 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "logShow$p2$1546" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$1537" ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1537" ) ) ) ) - ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "(Just " ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1537" ) ) ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "logShow$p2$1546" ) ) ) ) + ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "(Just " ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "logShow$p2$1546" ) ) ) :| [] ) - ( LiteralString Nothing "Nothing" ) ) + ( LiteralString Nothing ")" ) ) - ] :| - [ Ref Nothing ( Local ( Name "logShow$p2$1546" ) ) ] + ) + ( LiteralString Nothing "Nothing" ) :| [] ) ) ), Standalone @@ -1661,7 +1680,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "v1$1686", AppN Nothing + ( Nothing, Name "v1$2051", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) @@ -1674,7 +1693,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1686" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$2051" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1688,7 +1707,7 @@ UberModule ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1686" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v1$2051" ) ) ) :| [] ) ] ) @@ -1705,7 +1724,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "v1$1690", AppN Nothing + ( Nothing, Name "v1$2055", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) @@ -1718,7 +1737,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1690" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$2055" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1732,7 +1751,7 @@ UberModule ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1690" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v1$2055" ) ) ) :| [] ) ] ) @@ -1749,7 +1768,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "v1$1694", AppN Nothing + ( Nothing, Name "v1$2059", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) @@ -1762,7 +1781,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1694" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$2059" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1776,7 +1795,7 @@ UberModule ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1694" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v1$2059" ) ) ) :| [] ) ] ) @@ -1793,7 +1812,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "v1$1698", AppN Nothing + ( Nothing, Name "v1$2063", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) ) @@ -1803,7 +1822,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1698" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$2063" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1818,7 +1837,7 @@ UberModule ) ( ObjectProp Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1698" ) ) ) + ( Ref Nothing ( Local ( Name "v1$2063" ) ) ) ) ( PropName "head" ) :| [] ) @@ -1836,11 +1855,11 @@ UberModule ( LiteralObject Nothing [ ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$1705" ) :| [] ) + ( ParamNamed Nothing ( Name "v$2070" ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1705" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$2070" ) ) ) ) ) ( PrimBinOp Nothing PrimConcat ( LiteralString Nothing "(Just " ) @@ -1858,7 +1877,7 @@ UberModule ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1705" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v$2070" ) ) ) :| [] ) ) ( LiteralString Nothing ")" ) @@ -1870,7 +1889,7 @@ UberModule ] :| [ Let Nothing ( Standalone - ( Nothing, Name "v1$1716", AppN Nothing + ( Nothing, Name "v1$2081", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) ) @@ -1880,7 +1899,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1716" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$2081" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1895,7 +1914,7 @@ UberModule ) ( ObjectProp Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1716" ) ) ) + ( Ref Nothing ( Local ( Name "v1$2081" ) ) ) ) ( PropName "tail" ) :| [] ) diff --git a/test/ps/output/Golden.StringCodePoints.Test/golden.lua b/test/ps/output/Golden.StringCodePoints.Test/golden.lua index 3c725336..3e4b82a2 100644 --- a/test/ps/output/Golden.StringCodePoints.Test/golden.lua +++ b/test/ps/output/Golden.StringCodePoints.Test/golden.lua @@ -257,6 +257,7 @@ end)() local Effect_Console_foreign = { log = function(s) return function() print(s) end end } +local Effect_Console_log = Effect_Console_foreign.log local Data_HeytingAlgebra_heytingAlgebraBoolean Data_HeytingAlgebra_heytingAlgebraBoolean = { ff = false, @@ -277,7 +278,6 @@ Data_HeytingAlgebra_heytingAlgebraBoolean = { local Data_Eq_eqInt = { eq = function(r1_S_0) return function(r2_S_0) return r1_S_0 == r2_S_0 end end } -local Data_Show_showInt = { show = Data_Show_showIntImpl } local Data_Ordering_LT = { "Data.Ordering∷Ordering.LT" } local Data_Ordering_GT = { "Data.Ordering∷Ordering.GT" } local Data_Ordering_EQ = { "Data.Ordering∷Ordering.EQ" } @@ -363,10 +363,18 @@ local Data_String_CodePoints_fromCharCode = function(x_S_4) end)()) end local Data_String_CodePoints_singletonFallback = function(v) - if Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, v, 65535) then - return Data_String_CodePoints_fromCharCode(v) - else + if "Data.Ordering∷Ordering.GT" == (function() + if v < 65535 then + return Data_Ordering_LT[1] + elseif v == 65535 then + return Data_Ordering_EQ[1] + else + return Data_Ordering_GT[1] + end + end)() then return Data_String_CodePoints_fromCharCode(Data_String_CodePoints_add_S_w(Data_EuclideanRing_foreign.intDiv(Data_String_CodePoints_sub_S_w(v, 65536))(1024), 55296)) .. Data_String_CodePoints_fromCharCode(Data_String_CodePoints_add_S_w(Data_EuclideanRing_foreign.intMod(Data_String_CodePoints_sub_S_w(v, 65536))(1024), 56320)) + else + return Data_String_CodePoints_fromCharCode(v) end end local Data_String_CodePoints_singleton = Data_String_CodePoints_foreign._singleton(Data_String_CodePoints_singletonFallback) @@ -404,7 +412,15 @@ local Data_String_CodePoints_uncons = function(s) end local Data_String_CodePoints_takeFallback_S_w Data_String_CodePoints_takeFallback_S_w = function(v, v1) - if Data_Ord_lessThan_S_w(Data_Ord_ordInt, v, 1) then + if "Data.Ordering∷Ordering.LT" == (function() + if v < 1 then + return Data_Ordering_LT[1] + elseif v == 1 then + return Data_Ordering_EQ[1] + else + return Data_Ordering_GT[1] + end + end)() then return "" else local v2_S_0 = Data_String_CodePoints_uncons(v1) @@ -468,7 +484,15 @@ local Data_String_CodePoints_codePointAtFallback = function( codePointAtFallback end end local Data_String_CodePoints_codePointAt_S_w = function(v, v1) - if Data_Ord_lessThan_S_w(Data_Ord_ordInt, v, 0) then + if "Data.Ordering∷Ordering.LT" == (function() + if v < 0 then + return Data_Ordering_LT[1] + elseif v == 0 then + return Data_Ordering_EQ[1] + else + return Data_Ordering_GT[1] + end + end)() then return Data_Maybe_Nothing elseif 0 == v then if "" == v1 then @@ -515,34 +539,29 @@ Data_String_CodePoints_Lazy_enumCodePoint = PSLUA_runtime_lazy("enumCodePoint")( } end) local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_foreign.log(dictShow.show(a)) + return Effect_Console_log(dictShow.show(a)) end local Golden_StringCodePoints_Test_fromEnum = Data_String_CodePoints_boundedEnumCodePoint.fromEnum -local Golden_StringCodePoints_Test_showArray = { - show = Data_Show_showArrayImpl(Data_Show_showIntImpl) -} local Golden_StringCodePoints_Test_logShow = function(logShow_S_p2_S_0) - return Effect_Console_logShow_S_w(Golden_StringCodePoints_Test_showArray, logShow_S_p2_S_0) + return Effect_Console_log(Data_Show_showArrayImpl(Data_Show_showIntImpl)(logShow_S_p2_S_0)) end local Golden_StringCodePoints_Test_logShow1 = function(logShow_S_p2_S_1) - return Effect_Console_logShow_S_w(Data_Show_showInt, logShow_S_p2_S_1) + return Effect_Console_log(Data_Show_showIntImpl(logShow_S_p2_S_1)) end local Golden_StringCodePoints_Test_logShow2 = function(logShow_S_p2_S_2) - return Effect_Console_logShow_S_w({ - show = function(v_S_4) - if "Data.Maybe∷Maybe.Just" == v_S_4[1] then - return "(Just " .. Data_Show_showIntImpl(v_S_4[2]) .. ")" - else - return "Nothing" - end + return Effect_Console_log((function() + if "Data.Maybe∷Maybe.Just" == logShow_S_p2_S_2[1] then + return "(Just " .. Data_Show_showIntImpl(logShow_S_p2_S_2[2]) .. ")" + else + return "Nothing" end - }, logShow_S_p2_S_2) + end)()) end local Golden_StringCodePoints_Test_cp = function(x_S_6) return Partial_Unsafe__unsafePartial(function() - return function(v_S_5) - if "Data.Maybe∷Maybe.Just" == v_S_5[1] then - return v_S_5[2] + return function(v_S_4) + if "Data.Maybe∷Maybe.Just" == v_S_4[1] then + return v_S_4[2] else return error("No patterns matched") end @@ -603,9 +622,9 @@ return (function() end end)())() local _ = Effect_Console_logShow_S_w({ - show = function(v_S_6) - if "Data.Maybe∷Maybe.Just" == v_S_6[1] then - return "(Just " .. Data_Show_showArrayImpl(Data_Show_showIntImpl)(v_S_6[2]) .. ")" + show = function(v_S_5) + if "Data.Maybe∷Maybe.Just" == v_S_5[1] then + return "(Just " .. Data_Show_showArrayImpl(Data_Show_showIntImpl)(v_S_5[2]) .. ")" else return "Nothing" end @@ -622,8 +641,8 @@ return (function() end end)())() local _ = Effect_Console_logShow_S_w({ - show = function(v_S_7) - if v_S_7 then return "true" else return "false" end + show = function(v_S_6) + if v_S_6 then return "true" else return "false" end end }, Data_String_CodePoints_foreign._fromCodePointArray(Data_String_CodePoints_singletonFallback)(Data_String_CodePoints_toCodePointArray("aéЯ𝐀z")) == "aéЯ𝐀z")() return Golden_StringCodePoints_Test_logShow(Golden_StringCodePoints_Test_codes(Data_String_CodePoints_singleton(Golden_StringCodePoints_Test_cp(119808))))() diff --git a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir index f3471813..c79c46ce 100644 --- a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir +++ b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir @@ -276,21 +276,21 @@ UberModule ( ParamNamed Nothing ( Name "o$475" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse562", ObjectProp Nothing + ( Nothing, Name "$cse607", ObjectProp Nothing ( Ref Nothing ( Local ( Name "o$475" ) ) ) ( PropName "a" ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse561", ObjectProp Nothing + ( Nothing, Name "$cse606", ObjectProp Nothing ( Ref Nothing ( Local ( Name "o$475" ) ) ) ( PropName "b" ) ) :| [] ) ( IfThenElse Nothing ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "$cse561" ) ) ) + ( Ref Nothing ( Local ( Name "$cse606" ) ) ) ( Ref Nothing ( Local ( Name "n" ) ) ) ) ( AppN Nothing @@ -302,11 +302,11 @@ UberModule [ LiteralObject Nothing [ ( PropName "a", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse562" ) ) ) - ( Ref Nothing ( Local ( Name "$cse561" ) ) ) + ( Ref Nothing ( Local ( Name "$cse607" ) ) ) + ( Ref Nothing ( Local ( Name "$cse606" ) ) ) ), ( PropName "b", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse561" ) ) ) + ( Ref Nothing ( Local ( Name "$cse606" ) ) ) ( LiteralInt Nothing 1 ) ) ] @@ -319,7 +319,7 @@ UberModule ( ModuleName "Control.Monad.Rec.Class" ) ( TyName "Step" ) ( CtorName "Done" ) - [ Ref Nothing ( Local ( Name "$cse562" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "$cse607" ) ) ] :| [] ) ) ) diff --git a/test/ps/output/Golden.UncurriedLift.Test/golden.ir b/test/ps/output/Golden.UncurriedLift.Test/golden.ir index 03d8d06c..a9669205 100644 --- a/test/ps/output/Golden.UncurriedLift.Test/golden.ir +++ b/test/ps/output/Golden.UncurriedLift.Test/golden.ir @@ -7,12 +7,6 @@ UberModule ( ModuleName "Data.Show" ) ".spago/p/prelude/5718c84fdde6247749cb053e816df696c30fe691/src/Data/Show.purs" [ ( Nothing, Name "showIntImpl" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showIntImpl" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PropName "showIntImpl" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "foreign" }, ForeignImport Nothing @@ -31,6 +25,21 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "log" ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.UncurriedLift.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) + ) + ( Ref Nothing ( Local ( Name "a$2" ) ) :| [] ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.UncurriedLift.Test", qnameName = Name "sumST" }, AbsN Nothing @@ -150,50 +159,76 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LiteralInt Nothing 6 :| [] ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "add3" ) ) + ) + ( LiteralInt Nothing 1 :| [ LiteralInt Nothing 2, LiteralInt Nothing 3 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LiteralInt Nothing 20 :| [] ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "mul2" ) ) + ) + ( LiteralInt Nothing 4 :| [ LiteralInt Nothing 5 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LiteralInt Nothing 48 :| [] ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "mulByFn" ) ) + ) + ( LiteralInt Nothing 6 :| [ LiteralInt Nothing 8 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LiteralInt Nothing 103 :| [] ) :| [] + ( Ref Nothing + ( Imported + ( ModuleName "Golden.UncurriedLift.Test" ) + ( Name "addOnePlusTwoTo" ) + ) + ) + ( LiteralInt Nothing 100 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LiteralInt Nothing 203 :| [] ) :| [] + ( Ref Nothing + ( Imported + ( ModuleName "Golden.UncurriedLift.Test" ) + ( Name "addOnePlusTwoTo" ) + ) + ) + ( LiteralInt Nothing 200 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -202,19 +237,23 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( ObjectProp Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "run" ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ( Imported ( ModuleName "Golden.UncurriedLift.Test" ) ( Name "sumST" ) ) ) - ( PropName "run" ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralInt Nothing 42 ) :| [] + ( LiteralInt Nothing 40 :| [ LiteralInt Nothing 2 ] ) ) :| [] ) :| [] ) diff --git a/test/ps/output/Golden.UncurriedLift.Test/golden.lua b/test/ps/output/Golden.UncurriedLift.Test/golden.lua index b7897650..32cae0fb 100644 --- a/test/ps/output/Golden.UncurriedLift.Test/golden.lua +++ b/test/ps/output/Golden.UncurriedLift.Test/golden.lua @@ -1,6 +1,4 @@ -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Control_Monad_ST_Internal_foreign = { pure_ = function(a) return function() return a end end, run = function(f) return f() end @@ -9,33 +7,36 @@ local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log -M.Golden_UncurriedLift_Test_sumST = function(a_S_0, b_S_0) - return a_S_0 + b_S_0 +local Golden_UncurriedLift_Test_logShow = function(a_S_0) + return Effect_Console_log(Data_Show_foreign.showIntImpl(a_S_0)) end -M.Golden_UncurriedLift_Test_mulByFn = function(a_S_1, b_S_1) - return a_S_1 * b_S_1 +local Golden_UncurriedLift_Test_sumST = function(a_S_1, b_S_0) + return a_S_1 + b_S_0 end -M.Golden_UncurriedLift_Test_mul2 = function(a_S_2, b_S_2) - return a_S_2 * b_S_2 +local Golden_UncurriedLift_Test_mulByFn = function(a_S_2, b_S_1) + return a_S_2 * b_S_1 end -local Golden_UncurriedLift_Test_logTwice = function(a_S_3, b_S_3) - local _ = Effect_Console_log(a_S_3)() +local Golden_UncurriedLift_Test_mul2 = function(a_S_3, b_S_2) + return a_S_3 * b_S_2 +end +local Golden_UncurriedLift_Test_logTwice = function(a_S_4, b_S_3) + local _ = Effect_Console_log(a_S_4)() return Effect_Console_log(b_S_3)() end -M.Golden_UncurriedLift_Test_add3 = function(a_S_4, b_S_4, c_S_0) - return a_S_4 + b_S_4 + c_S_0 +local Golden_UncurriedLift_Test_add3 = function(a_S_5, b_S_4, c_S_0) + return a_S_5 + b_S_4 + c_S_0 end -M.Golden_UncurriedLift_Test_addOnePlusTwoTo = function(c_S_1) +local Golden_UncurriedLift_Test_addOnePlusTwoTo = function(c_S_1) return 3 + c_S_1 end return (function() local _ = Golden_UncurriedLift_Test_logTwice("hello", "world") - local _ = Effect_Console_log(Data_Show_showIntImpl(6))() - local _ = Effect_Console_log(Data_Show_showIntImpl(20))() - local _ = Effect_Console_log(Data_Show_showIntImpl(48))() - local _ = Effect_Console_log(Data_Show_showIntImpl(103))() - local _ = Effect_Console_log(Data_Show_showIntImpl(203))() - return Effect_Console_log(Data_Show_showIntImpl(Control_Monad_ST_Internal_foreign.run(function( ) - return 42 - end)))() + local _ = Golden_UncurriedLift_Test_logShow(Golden_UncurriedLift_Test_add3(1, 2, 3))() + local _ = Golden_UncurriedLift_Test_logShow(Golden_UncurriedLift_Test_mul2(4, 5))() + local _ = Golden_UncurriedLift_Test_logShow(Golden_UncurriedLift_Test_mulByFn(6, 8))() + local _ = Golden_UncurriedLift_Test_logShow(Golden_UncurriedLift_Test_addOnePlusTwoTo(100))() + local _ = Golden_UncurriedLift_Test_logShow(Golden_UncurriedLift_Test_addOnePlusTwoTo(200))() + return Golden_UncurriedLift_Test_logShow(Control_Monad_ST_Internal_foreign.run(function( ) + return Golden_UncurriedLift_Test_sumST(40, 2) + end))() end)() diff --git a/test/ps/output/Golden.Uncurry.Test/golden.ir b/test/ps/output/Golden.Uncurry.Test/golden.ir index c9f994af..9c70ee0a 100644 --- a/test/ps/output/Golden.Uncurry.Test/golden.ir +++ b/test/ps/output/Golden.Uncurry.Test/golden.ir @@ -25,6 +25,12 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showInt" }, LiteralObject Nothing @@ -34,15 +40,17 @@ UberModule ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Show", qnameName = Name "show" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "show" ) ) + ), Standalone ( QName { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "logShow$w" }, AbsN Nothing ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dictShow" ) ) ) @@ -52,6 +60,18 @@ UberModule ) ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "logShow$p2$214" ) :| [] ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( Ref Nothing ( Local ( Name "logShow$p2$214" ) ) :| [] ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "sumTo" }, AbsN Nothing @@ -167,6 +187,42 @@ UberModule ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "alwaysFirst$w" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "x" ) :| [ ParamUnused Nothing ] ) + ( Ref Nothing ( Local ( Name "x" ) ) ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "adderOf$w" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "x" ) :| [ ParamNamed Nothing ( Name "y" ) ] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "y$237" ) :| [] ) + ( PrimBinOp Nothing PrimAdd + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x" ) ) ) + ( Ref Nothing ( Local ( Name "y" ) ) ) + ) + ( Ref Nothing ( Local ( Name "y$237" ) ) ) + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "add3$w" + }, AbsN Nothing + ( ParamNamed Nothing + ( Name "x" ) :| + [ ParamNamed Nothing ( Name "y" ), ParamNamed Nothing ( Name "z" ) ] + ) + ( PrimBinOp Nothing PrimAdd + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x" ) ) ) + ( Ref Nothing ( Local ( Name "y" ) ) ) + ) + ( Ref Nothing ( Local ( Name "z" ) ) ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.Uncurry.Test", qnameName = Name "add3" }, AbsN Nothing @@ -214,13 +270,13 @@ UberModule ( AbsN Nothing ( ParamNamed Nothing ( Name "adderOf$p2$210" ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "y$294" ) :| [] ) + ( ParamNamed Nothing ( Name "y$265" ) :| [] ) ( PrimBinOp Nothing PrimAdd ( PrimBinOp Nothing PrimAdd ( Ref Nothing ( Local ( Name "adderOf$p1$209" ) ) ) ( Ref Nothing ( Local ( Name "adderOf$p2$210" ) ) ) ) - ( Ref Nothing ( Local ( Name "y$294" ) ) ) + ( Ref Nothing ( Local ( Name "y$265" ) ) ) ) ) ) @@ -238,10 +294,14 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 6 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "add3$w" ) ) + ) + ( LiteralInt Nothing 1 :| [ LiteralInt Nothing 2, LiteralInt Nothing 3 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -249,30 +309,44 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 15 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "add3$w" ) ) + ) + ( LiteralInt Nothing 4 :| [ LiteralInt Nothing 5, LiteralInt Nothing 6 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 13 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "add3$w" ) ) + ) + ( LiteralInt Nothing 10 :| + [ LiteralInt Nothing 1, LiteralInt Nothing 2 ] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 42 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "inc" ) ) + ) + ( LiteralInt Nothing 41 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -289,8 +363,11 @@ UberModule ) ( PropName "showArrayImpl" ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "show" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| [] + ) :| [] ) ) ] :| @@ -302,12 +379,14 @@ UberModule ) ( PropName "arrayMap" ) ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "add3$p3$315" ) :| [] ) - ( PrimBinOp Nothing PrimAdd - ( LiteralInt Nothing 3 ) - ( Ref Nothing ( Local ( Name "add3$p3$315" ) ) ) - ) :| [] + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "add3" ) ) + ) + ( LiteralInt Nothing 1 :| [] ) + ) + ( LiteralInt Nothing 2 :| [] ) :| [] ) ) ( LiteralArray Nothing @@ -320,146 +399,104 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "evenSteps$w" ) ) - ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 10 ] ) - ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "evenSteps$w" ) ) + ) + ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 10 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "oddSteps$w" ) ) - ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 7 ] ) - ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "oddSteps$w" ) ) + ) + ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 7 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ Let Nothing - ( RecursiveGroup - ( - ( Nothing, Name "go$w$322", AbsN Nothing - ( ParamNamed Nothing - ( Name "acc$323" ) :| - [ ParamNamed Nothing ( Name "n$324" ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( Ref Nothing ( Local ( Name "n$324" ) ) ) - ( LiteralInt Nothing 0 ) - ) - ( Ref Nothing ( Local ( Name "acc$323" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$322" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "acc$323" ) ) ) - ( Ref Nothing ( Local ( Name "n$324" ) ) ) :| - [ PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "n$324" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) - ) - ) - ) :| [] - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$322" ) ) ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 10 ] ) - ) - ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "sumTo" ) ) + ) + ( LiteralInt Nothing 10 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ Let Nothing - ( RecursiveGroup - ( - ( Nothing, Name "go$w$327", AbsN Nothing - ( ParamNamed Nothing - ( Name "acc$328" ) :| - [ ParamNamed Nothing ( Name "n$329" ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( Ref Nothing ( Local ( Name "n$329" ) ) ) - ( LiteralInt Nothing 0 ) - ) - ( Ref Nothing ( Local ( Name "acc$328" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$327" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "acc$328" ) ) ) - ( Ref Nothing ( Local ( Name "n$329" ) ) ) :| - [ PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "n$329" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) - ) - ) - ) :| [] - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$327" ) ) ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 100 ] ) - ) - ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "sumTo" ) ) + ) + ( LiteralInt Nothing 100 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 6 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "adderOf$w" ) ) + ) + ( LiteralInt Nothing 1 :| [ LiteralInt Nothing 2 ] ) + ) + ( LiteralInt Nothing 3 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 9 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "adderOf$w" ) ) + ) + ( LiteralInt Nothing 2 :| [ LiteralInt Nothing 3 ] ) + ) + ( LiteralInt Nothing 4 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 7 ] + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "alwaysFirst$w" ) ) + ) + ( LiteralInt Nothing 7 :| [ LiteralInt Nothing 8 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -468,10 +505,12 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 9 ] + ( Ref Nothing ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "logShow" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.Uncurry.Test" ) ( Name "alwaysFirst$w" ) ) + ) + ( LiteralInt Nothing 9 :| [ LiteralInt Nothing 10 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.Uncurry.Test/golden.lua b/test/ps/output/Golden.Uncurry.Test/golden.lua index 6ff980b3..470aa609 100644 --- a/test/ps/output/Golden.Uncurry.Test/golden.lua +++ b/test/ps/output/Golden.Uncurry.Test/golden.lua @@ -24,11 +24,16 @@ local Data_Functor_foreign = { local Effect_Console_foreign = { log = function(s) return function() print(s) end end } +local Effect_Console_log = Effect_Console_foreign.log local Data_Show_showInt = { show = Data_Show_showIntImpl } +local Data_Show_show = function(dict) return dict.show end local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_foreign.log(dictShow.show(a)) + return Effect_Console_log(dictShow.show(a)) end -M.Golden_Uncurry_Test_sumTo = function(m) +local Golden_Uncurry_Test_logShow = function(logShow_S_p2_S_0) + return Effect_Console_log(Data_Show_showIntImpl(logShow_S_p2_S_0)) +end +local Golden_Uncurry_Test_sumTo = function(m) local acc, n acc, n = 0, m while true do if n == 0 then return acc else acc, n = acc + n, n - 1 end end @@ -68,48 +73,37 @@ M.Golden_Uncurry_Test_evenSteps = function(evenSteps_S_p1) return Golden_Uncurry_Test_evenSteps_S_w(evenSteps_S_p1, evenSteps_S_p2) end end -M.Golden_Uncurry_Test_add3 = function(add3_S_p1) +local Golden_Uncurry_Test_alwaysFirst_S_w = function(x) return x end +local Golden_Uncurry_Test_adderOf_S_w = function(x, y) + return function(y_S_0) return x + y + y_S_0 end +end +local Golden_Uncurry_Test_add3_S_w = function(x, y, z) return x + y + z end +local Golden_Uncurry_Test_add3 = function(add3_S_p1) return function(add3_S_p2) return function(add3_S_p3) return add3_S_p1 + add3_S_p2 + add3_S_p3 end end end -M.Golden_Uncurry_Test_inc = function(add3_S_p3_S_0) return 1 + add3_S_p3_S_0 end +local Golden_Uncurry_Test_inc = function(add3_S_p3_S_0) + return 1 + add3_S_p3_S_0 +end return (function() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 6)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 15)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 13)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 42)() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_add3_S_w(1, 2, 3))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_add3_S_w(4, 5, 6))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_add3_S_w(10, 1, 2))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_inc(41))() local _ = Effect_Console_logShow_S_w({ - show = Data_Show_foreign.showArrayImpl(Data_Show_showIntImpl) - }, Data_Functor_foreign.arrayMap(function(add3_S_p3_S_1) - return 3 + add3_S_p3_S_1 - end)({ [1] = 1, [2] = 2, [3] = 3 }))() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Golden_Uncurry_Test_evenSteps_S_w(0, 10))() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Golden_Uncurry_Test_oddSteps_S_w(0, 7))() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local acc_S_0, n_S_0 - acc_S_0, n_S_0 = 0, 10 - while true do - if n_S_0 == 0 then - return acc_S_0 - else - acc_S_0, n_S_0 = acc_S_0 + n_S_0, n_S_0 - 1 - end - end - end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local acc_S_1, n_S_1 - acc_S_1, n_S_1 = 0, 100 - while true do - if n_S_1 == 0 then - return acc_S_1 - else - acc_S_1, n_S_1 = acc_S_1 + n_S_1, n_S_1 - 1 - end - end - end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 6)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 9)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 7)() - return Effect_Console_logShow_S_w(Data_Show_showInt, 9)() + show = Data_Show_foreign.showArrayImpl(Data_Show_show(Data_Show_showInt)) + }, Data_Functor_foreign.arrayMap(Golden_Uncurry_Test_add3(1)(2))({ + [1] = 1, + [2] = 2, + [3] = 3 + }))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_evenSteps_S_w(0, 10))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_oddSteps_S_w(0, 7))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_sumTo(10))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_sumTo(100))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_adderOf_S_w(1, 2)(3))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_adderOf_S_w(2, 3)(4))() + local _ = Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_alwaysFirst_S_w(7, 8))() + return Golden_Uncurry_Test_logShow(Golden_Uncurry_Test_alwaysFirst_S_w(9, 10))() end)() diff --git a/test/ps/output/Golden.UncurryCtor.Test/golden.ir b/test/ps/output/Golden.UncurryCtor.Test/golden.ir index 196bd579..2c0e1940 100644 --- a/test/ps/output/Golden.UncurryCtor.Test/golden.ir +++ b/test/ps/output/Golden.UncurryCtor.Test/golden.ir @@ -7,6 +7,12 @@ UberModule ( ModuleName "Data.Show" ) ".spago/p/prelude/5718c84fdde6247749cb053e816df696c30fe691/src/Data/Show.purs" [ ( Nothing, Name "showIntImpl" ), ( Nothing, Name "showArrayImpl" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showIntImpl" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Functor", qnameName = Name "foreign" }, ForeignImport Nothing @@ -19,13 +25,18 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" + }, ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showInt" }, LiteralObject Nothing [ - ( PropName "show", ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PropName "showIntImpl" ) + ( PropName "show", Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ] ), Standalone @@ -39,10 +50,7 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "dictShow" ) :| [ ParamNamed Nothing ( Name "a" ) ] ) ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) - ) + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dictShow" ) ) ) @@ -57,10 +65,10 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "logShow$p2$319" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ Ref Nothing ( Local ( Name "logShow$p2$319" ) ) ] + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) + ( Ref Nothing ( Local ( Name "logShow$p2$319" ) ) :| [] ) :| [] ) ) ), Standalone @@ -114,14 +122,15 @@ UberModule ( ParamNamed Nothing ( Name "Tri$p2" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "Tri$p3" ) :| [] ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Tri$w" ) ) - ) - ( Ref Nothing - ( Local ( Name "Tri$p1" ) ) :| - [ Ref Nothing ( Local ( Name "Tri$p2" ) ), Ref Nothing ( Local ( Name "Tri$p3" ) ) ] - ) + ( Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "Shape" ) + ( CtorName "Tri" ) + [ Ref Nothing + ( Local ( Name "Tri$p1" ) ), Ref Nothing + ( Local ( Name "Tri$p2" ) ), Ref Nothing + ( Local ( Name "Tri$p3" ) ) + ] ) ) ) @@ -144,17 +153,6 @@ UberModule ( TyName "IntList" ) ( CtorName "Nil" ) [] ), Standalone - ( QName - { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "Cons$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) - ( Ctor Nothing SumType - ( ModuleName "Golden.UncurryCtor.Test" ) - ( TyName "IntList" ) - ( CtorName "Cons" ) - [ Ref Nothing ( Local ( Name "value0" ) ), Ref Nothing ( Local ( Name "value1" ) ) ] - ) - ), Standalone ( QName { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "unbox" }, AbsN Nothing @@ -188,92 +186,58 @@ UberModule ), Standalone ( QName { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "range" - }, AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) ) - ( LiteralInt Nothing 1 :| - [ AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) ) - ( LiteralInt Nothing 2 :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) - ) - ( LiteralInt Nothing 3 :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) - ) - ( LiteralInt Nothing 4 :| - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) - ) - ( LiteralInt Nothing 5 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Cons$w" ) - ) - ) - ( LiteralInt Nothing 6 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Cons$w" ) - ) - ) - ( LiteralInt Nothing 7 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Cons$w" ) - ) - ) - ( LiteralInt Nothing 8 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Cons$w" ) - ) - ) - ( LiteralInt Nothing 9 :| - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Cons$w" ) - ) - ) - ( LiteralInt Nothing 10 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Nil" ) - ) - ] - ) - ] - ) - ] - ) - ] - ) - ] - ) + }, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 1, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 2, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 3, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 4, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 5, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 6, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 7, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 8, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 9, Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ LiteralInt Nothing 10, Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Nil" ) ) ] - ) + ] ] - ) + ] ] - ) + ] ] - ) + ] ] - ) + ] ), Standalone ( QName { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "pairSum" @@ -290,31 +254,31 @@ UberModule ( ParamNamed Nothing ( Name "v" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse430", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse585", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse429", ReflectCtor Nothing + ( Nothing, Name "$cse584", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Origin" ) - ( Ref Nothing ( Local ( Name "$cse429" ) ) ) + ( Ref Nothing ( Local ( Name "$cse584" ) ) ) ) ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Dot" ) - ( Ref Nothing ( Local ( Name "$cse429" ) ) ) + ( Ref Nothing ( Local ( Name "$cse584" ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse430" ) ) ) + ( Ref Nothing ( Local ( Name "$cse585" ) ) ) ( PrimBinOp Nothing PrimAdd ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse430" ) ) ) + ( Ref Nothing ( Local ( Name "$cse585" ) ) ) ( DataArgumentByIndex Nothing SumType 1 ( Ref Nothing ( Local ( Name "v" ) ) ) ) ) ( DataArgumentByIndex Nothing SumType 2 ( Ref Nothing ( Local ( Name "v" ) ) ) ) @@ -339,12 +303,14 @@ UberModule ( ParamNamed Nothing ( Name "Pair$p1$316" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "Pair$p2$317" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Pair$w" ) ) ) - ( Ref Nothing - ( Local ( Name "Pair$p1$316" ) ) :| - [ Ref Nothing ( Local ( Name "Pair$p2$317" ) ) ] - ) + ( Ctor Nothing ProductType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "Pair" ) + ( CtorName "Pair" ) + [ Ref Nothing + ( Local ( Name "Pair$p1$316" ) ), Ref Nothing + ( Local ( Name "Pair$p2$317" ) ) + ] ) ) ), @@ -359,12 +325,14 @@ UberModule ( ParamNamed Nothing ( Name "Cons$p1$314" ) :| [] ) ( AbsN Nothing ( ParamNamed Nothing ( Name "Cons$p2$315" ) :| [] ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Cons$w" ) ) ) - ( Ref Nothing - ( Local ( Name "Cons$p1$314" ) ) :| - [ Ref Nothing ( Local ( Name "Cons$p2$315" ) ) ] - ) + ( Ctor Nothing SumType + ( ModuleName "Golden.UncurryCtor.Test" ) + ( TyName "IntList" ) + ( CtorName "Cons" ) + [ Ref Nothing + ( Local ( Name "Cons$p1$314" ) ), Ref Nothing + ( Local ( Name "Cons$p2$315" ) ) + ] ) ) ), diff --git a/test/ps/output/Golden.UncurryCtor.Test/golden.lua b/test/ps/output/Golden.UncurryCtor.Test/golden.lua index e4381fbe..3bb630b6 100644 --- a/test/ps/output/Golden.UncurryCtor.Test/golden.lua +++ b/test/ps/output/Golden.UncurryCtor.Test/golden.lua @@ -9,6 +9,7 @@ local Data_Show_foreign = { end end } +local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Data_Functor_foreign = { arrayMap = function(f) return function(arr) @@ -22,13 +23,14 @@ local Data_Functor_foreign = { local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Show_showInt = { show = Data_Show_foreign.showIntImpl } +local Effect_Console_log = Effect_Console_foreign.log +local Data_Show_showInt = { show = Data_Show_showIntImpl } local Data_Show_show = function(dict) return dict.show end local Effect_Console_logShow_S_w = function(dictShow, a) - return Effect_Console_foreign.log(dictShow.show(a)) + return Effect_Console_log(dictShow.show(a)) end local Golden_UncurryCtor_Test_logShow = function(logShow_S_p2_S_0) - return Effect_Console_logShow_S_w(Data_Show_showInt, logShow_S_p2_S_0) + return Effect_Console_log(Data_Show_showIntImpl(logShow_S_p2_S_0)) end local Golden_UncurryCtor_Test_map = Data_Functor_foreign.arrayMap local Golden_UncurryCtor_Test_Origin = { @@ -43,7 +45,12 @@ end local Golden_UncurryCtor_Test_Tri = function(Tri_S_p1) return function(Tri_S_p2) return function(Tri_S_p3) - return Golden_UncurryCtor_Test_Tri_S_w(Tri_S_p1, Tri_S_p2, Tri_S_p3) + return { + "Golden.UncurryCtor.Test∷Shape.Tri", + Tri_S_p1, + Tri_S_p2, + Tri_S_p3 + } end end end @@ -51,9 +58,6 @@ local Golden_UncurryCtor_Test_Pair_S_w = function(value0, value1) return { value0, value1 } end local Golden_UncurryCtor_Test_Nil = { "Golden.UncurryCtor.Test∷IntList.Nil" } -local Golden_UncurryCtor_Test_Cons_S_w = function(value0, value1) - return { "Golden.UncurryCtor.Test∷IntList.Cons", value0, value1 } -end local Golden_UncurryCtor_Test_unbox = function(v) return v end local Golden_UncurryCtor_Test_total Golden_UncurryCtor_Test_total = function(v) @@ -63,7 +67,47 @@ Golden_UncurryCtor_Test_total = function(v) return v[2] + Golden_UncurryCtor_Test_total(v[3]) end end -local Golden_UncurryCtor_Test_range = Golden_UncurryCtor_Test_Cons_S_w(1, Golden_UncurryCtor_Test_Cons_S_w(2, Golden_UncurryCtor_Test_Cons_S_w(3, Golden_UncurryCtor_Test_Cons_S_w(4, Golden_UncurryCtor_Test_Cons_S_w(5, Golden_UncurryCtor_Test_Cons_S_w(6, Golden_UncurryCtor_Test_Cons_S_w(7, Golden_UncurryCtor_Test_Cons_S_w(8, Golden_UncurryCtor_Test_Cons_S_w(9, Golden_UncurryCtor_Test_Cons_S_w(10, Golden_UncurryCtor_Test_Nil)))))))))) +local Golden_UncurryCtor_Test_range = { + "Golden.UncurryCtor.Test∷IntList.Cons", + 1, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 2, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 3, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 4, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 5, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 6, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 7, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 8, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 9, + { + "Golden.UncurryCtor.Test∷IntList.Cons", + 10, + Golden_UncurryCtor_Test_Nil + } + } + } + } + } + } + } + } + } +} local Golden_UncurryCtor_Test_pairSum = function(v) return v[1] + v[2] end local Golden_UncurryCtor_Test_area = function(v) local _S_cse0 = v[2] From f4371b6d59f151130d65c3717cc83a0695a0bb94 Mon Sep 17 00:00:00 2001 From: Yura Lazarev Date: Tue, 28 Jul 2026 17:47:53 +0200 Subject: [PATCH 2/2] docs(optimizer): refresh the constructor-paste claim in propagateKnownCtorThroughLet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The doc said 'inlineSaturatedCall' leaves the Data.Either.Right worker in place because its Ctor RHS is not a lambda. Constructor bindings are lambdas over saturated Ctor bodies (Note [Constructor applications are saturated]) and the call-site inliner does paste them at saturated sites — the curried arity-1 binding and, since the n-ary worker tier, the arity-≥2 worker alike. The enduring reason for the through-a-reference resolution is different: heuristic pastes are disarmed in the growth veto's fallback sweeps while the env-reading folds keep firing there, and resolving only arity and tag introduces no Ctor node, so non-folding chains are not pessimised. State that instead. --- .../PureScript/Backend/IR/Optimizer.hs | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/lib/Language/PureScript/Backend/IR/Optimizer.hs b/lib/Language/PureScript/Backend/IR/Optimizer.hs index d6b89769..aaebf60a 100644 --- a/lib/Language/PureScript/Backend/IR/Optimizer.hs +++ b/lib/Language/PureScript/Backend/IR/Optimizer.hs @@ -1898,15 +1898,17 @@ the fresh field-binders unique and the binder resolved by name. The RHS's constructor is recognised either as an in-place 'Ctor' node or, via the inline environment, through a 'Ref' to a top-level constructor binding -(issue #180). A user-written @Right x@ compiles to a reference to the -@Data.Either.Right@ worker, which 'inlineSaturatedCall' leaves in place — its -'Ctor' RHS is not a lambda, and pasting the worker would only rebuild the same -@(function … end)(x)@ the reference already denotes, more deeply nested. So -without the through-a-reference resolution the constructor test the inlined -@bind@ introduces (@justTag == ReflectCtor v@) never folds, and the collapsed -monadic chain stays a deeply-nested @if@\/@let@ tree. Resolving the reference -only to read its arity and tag introduces no 'Ctor' node, so a chain that does -not fold is not pessimised into pasted constructor thunks. +(issue #180). A user-written @Right x@ compiles to a call of the +@Data.Either.Right@ binding — a lambda over a saturated 'Ctor' body +(Note [Constructor applications are saturated]) that 'inlineSaturatedCall' +does paste at saturated sites, beta-reducing to an in-place 'Ctor'. This rule +still cannot lean on that paste: the heuristic paste tiers are disarmed in +the growth veto's fallback sweeps, where the env-reading folds keep firing +(Note [Bounded call-site inlining growth]). Resolving the reference only to +read its arity and tag introduces no 'Ctor' node, so the constructor test the +inlined @bind@ introduces (@justTag == ReflectCtor v@) folds in every sweep, +and a chain that does not fold is not pessimised into pasted constructor +thunks. -} propagateKnownCtorThroughLet ∷ InlineEnv → RewriteRuleM SupplyM Ann propagateKnownCtorThroughLet env = \case