From b82c17ed7a5488df5de977c159074193b3a2f954 Mon Sep 17 00:00:00 2001 From: Yura Lazarev Date: Mon, 20 Jul 2026 15:55:38 +0200 Subject: [PATCH 1/2] feat(optimizer): bound call-site inlining growth per expression (#221) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A call-site paste pays off when it meets a known-constructor fold and collapses; a product-type monad (State over Tuple) has no tag to test, so its pasted bind/pure bodies survive whole and a long chain grows linearly with no payoff. Whether a paste collapses is unknowable at the paste site — the fold may need other pastes and reductions that happen later in the same sweep — so the sweep itself becomes the speculation: * optimizeExp measures each call-site-inlining sweep against inlineGrowthBudget (a quarter of the input size, floored at smallInlineBudget). A sweep that grew past the allowance — growth without collapse — is discarded, result and change flag both, and redone with the heuristic paste tiers disarmed (DirectedPastesOnly). Explicit @inline directives and the env-reading constructor folds keep firing in the fallback sweep. * The discarded sweep never reports Rewritten, so a converged module still reports Unmodified and the specialize fixpoint terminates; the veto is re-attempted each round against the then-current environment, so a collapse unlocked by a neighbour's settled form still lands. * The dial is calibrated from both sides of the golden corpus: it must reject the transformer stack of LongStackBind (grows past a third of its host when nothing folds) and stay above the transient growth of a multi-round collapse (the Either chain grows just under a fifth before folding a round later; a lower dial freezes it unfolded). See Note [Bounded call-site inlining growth]. The plain State chain of LongStateBind (~10% node growth diluted in a huge host expression) sits below any dial that keeps the Either chain collapsing; catching it needs the measurement at fixpoint convergence rather than per sweep — a follow-up. --- ...60720_130000_unisay_bound_inline_growth.md | 14 ++ .../PureScript/Backend/IR/Optimizer.hs | 174 +++++++++++++++--- .../PureScript/Backend/IR/Optimizer/Spec.hs | 133 +++++++++++++ 3 files changed, 295 insertions(+), 26 deletions(-) create mode 100644 changelog.d/20260720_130000_unisay_bound_inline_growth.md diff --git a/changelog.d/20260720_130000_unisay_bound_inline_growth.md b/changelog.d/20260720_130000_unisay_bound_inline_growth.md new file mode 100644 index 00000000..66c78928 --- /dev/null +++ b/changelog.d/20260720_130000_unisay_bound_inline_growth.md @@ -0,0 +1,14 @@ +### Changed + +- Call-site inlining growth is now bounded per expression (#221): the + rewrite sweep that pastes worker and dictionary-method bodies is + speculative — its result is kept only while the expression stays within + a growth allowance (a quarter of its size, floored at the small-inline + budget), and a sweep that grew without collapsing is redone with only + directive-forced pastes armed. Product-monad chains, whose pastes meet + no constructor fold, keep their compact shared calls instead of + unrolling: the transformer-stack golden (`LongStackBind`) shrinks by + ~300 lines back to its pre-inliner size, and a dozen more goldens lose + paste residue. Explicit `@inline` directives keep their budget bypass + inside vetoed expressions, and collapsing sum-type chains + (Maybe/Either) are unaffected. diff --git a/lib/Language/PureScript/Backend/IR/Optimizer.hs b/lib/Language/PureScript/Backend/IR/Optimizer.hs index 7ce8b684..8e2b0552 100644 --- a/lib/Language/PureScript/Backend/IR/Optimizer.hs +++ b/lib/Language/PureScript/Backend/IR/Optimizer.hs @@ -158,7 +158,9 @@ optimizerPipeline policy = -- longer recognise. The inlined methods' constructor matches then meet -- the case-of-known-constructor folds (#177/#213/#214), collapsing -- Maybe/Either/Writer/State chains into straight-line code. Code growth - -- is bounded by 'inlineSizeBudget'. + -- is bounded per paste by 'inlineSizeBudget' and per expression by the + -- growth veto (Note [Bounded call-site inlining growth]), which keeps + -- a chain whose pastes never collapse from unrolling. -- -- Call-pattern specialization (issue #208) rides in the same fixpoint: -- a recursive binding whose recursion passes a known constructor at a @@ -652,9 +654,25 @@ optimizeModule inlining policy UberModule {..} = runWriterT do -- the pass's 'WasRewritten' result; nothing else in this pass changes -- the module, so a converged module reports 'Unmodified'. optimizeExp ∷ Exp → WriterT WasRewritten SupplyM Exp - optimizeExp e = do - (e', rewritten) ← lift (optimizedExpressionM policy inlineEnv e) - e' <$ tell rewritten + 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]. + (e', rewritten) ← + lift (optimizedExpressionWithPastes HeuristicPastes policy inlineEnv e) + if expSize e' <= inlineGrowthBudget (expSize e) + then e' <$ tell rewritten + else keepSweep DirectedPastesOnly + where + keepSweep ∷ CallSitePastes → WriterT WasRewritten SupplyM Exp + keepSweep pastes = do + (e', rewritten) ← + lift (optimizedExpressionWithPastes pastes policy inlineEnv e) + e' <$ tell rewritten -- See Note [Incremental free-reference counting] withBinding @@ -761,10 +779,11 @@ type InlineEnv = Map (Qualified Name) Exp {- | The largest expression the call-site inliner will paste, GHC's unfolding-use-threshold analogue, sized in IR nodes ('expSize'). Code -growth is the transform's main risk (issue #180); this bounds it. -Deliberately generous enough to admit an uncurried monad-method worker -(a folded Maybe/Either match), the payload the cascade is built to -collapse. +growth is the transform's main risk (issue #180); this bounds one +paste, and the growth veto bounds their sum across an expression +(Note [Bounded call-site inlining growth]). Deliberately generous +enough to admit an uncurried monad-method worker (a folded Maybe/Either +match), the payload the cascade is built to collapse. -} inlineSizeBudget ∷ Natural inlineSizeBudget = 64 @@ -778,6 +797,86 @@ every use site, so growth scales with the use count. smallInlineBudget ∷ Natural smallInlineBudget = 16 +{- Note [Bounded call-site inlining growth] +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Call-site pastes are bets: pasting a method body pays off when the copy +meets a known-constructor fold and collapses (a Maybe/Either match +dissolves into straight-line code), and loses when nothing folds (a +product-type monad such as State threads a single-constructor Tuple — +no tag test exists, so the pasted bodies just accumulate, issue #221). +Whether a paste collapses is not knowable at the paste site: the fold +may need several other pastes and reductions to expose a known +constructor, all of which happen later in the same bottom-up sweep. The +per-paste budgets bound each site's bet, but not the sum of bets across +an expression: a long chain pastes one body per step, and when none of +them folds the expression grows linearly in the chain length. + +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', +'propagateKnownCtorThroughLet') also keep firing: they only shrink, and +disarming them would make the fallback sweep strictly worse than the +sweep it replaces. + +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. + +The proportional term is calibrated from both sides of the corpus. It +must reject the chains where every paste survives — the transformer +stack of Golden.LongStackBind grows past a third of its host, well +over the quarter. And it must stay above the /transient/ growth of a +collapse that spans fixpoint rounds: the veto measures one sweep, but +an Either chain first grows when its binds paste and only folds a +round later, once the env carries the settled neighbours — measured +just under a fifth of the host on Golden.LongEitherBind. A dial below +that freezes the chain at its unfolded worst (vetoed every round, the +fold never arrives). A quarter clears the one and rejects the other. +The blind spot of the dial is many tiny pastes diluted in a huge host +(the plain State chain of Golden.LongStateBind grows only ~10% in +nodes, though far more in printed lines); catching it needs the +measurement at fixpoint convergence rather than per sweep, where +transient growth is invisible and the dial could drop. + +The measurement baseline resets each round of the specialize fixpoint, +which is what makes the veto safe and non-sticky. Reverting to the +round's own input can never dangle a reference: that input is live this +round, and DCE runs after. An expression vetoed in round N is +re-attempted in round N+1 against the then-current environment, so a +collapse unlocked by a neighbour's settled form still lands; one that +needs the kept pastes themselves does not get that chance, which is +what the transient-growth calibration above accounts for. The +discarded sweep never reports 'Rewritten', so a converged module still +reports 'Unmodified' and the fixpoint terminates ('runStepsChecked' +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'. +See Note [Bounded call-site inlining growth]. +-} +data CallSitePastes = HeuristicPastes | DirectedPastesOnly + +{- | Per-expression growth allowance for one call-site inlining sweep: +the largest 'expSize' the sweep may leave behind, given the size it +started from. See Note [Bounded call-site inlining growth]. +-} +inlineGrowthBudget ∷ Natural → Natural +inlineGrowthBudget before = before + max smallInlineBudget (before `div` 4) + {- | How costly an expression is to duplicate, ordered by escalation. Combines by taking the worse classification. See Note [Complexity and Capture gate inlining]. @@ -845,7 +944,15 @@ optimizedExpression = runSupply . fmap fst . optimizedExpressionM mempty mempty optimizedExpressionM ∷ InlinePolicy → InlineEnv → Exp → SupplyM (Exp, WasRewritten) -optimizedExpressionM policy env = +optimizedExpressionM = optimizedExpressionWithPastes HeuristicPastes + +optimizedExpressionWithPastes + ∷ CallSitePastes + → InlinePolicy + → InlineEnv + → Exp + → SupplyM (Exp, WasRewritten) +optimizedExpressionWithPastes pastes policy env = -- See Note [Eta reduction is unsound] rewriteExpBottomUpM ( canonicalizeEffectHead @@ -859,9 +966,9 @@ optimizedExpressionM policy env = `thenRewrite` reduceKnownConstructor `thenRewrite` reduceKnownCtorRefRead env `thenRewrite` propagateKnownCtorThroughLet env - `thenRewrite` resolveDictionaryProp policy env + `thenRewrite` resolveDictionaryProp pastes policy env `thenRewrite` inlineAnnotatedProjection policy env - `thenRewrite` inlineSaturatedCall policy env + `thenRewrite` inlineSaturatedCall pastes policy env `thenRewrite` betaReduce `thenRewrite` removeUnreachableThenBranch `thenRewrite` removeUnreachableElseBranch @@ -1488,17 +1595,26 @@ The veto is best-effort rather than airtight: a dictionary referenced exactly once is pasted whole by the use-once path in 'optimizeModule', and 'reduceObjectProp' then folds the projection without consulting any policy — harmless, since sharing is moot at a single use site. + +In a 'DirectedPastesOnly' sweep the size-budget path is disarmed and only +an @always@ field resolves — the sweep exists to suppress exactly the +heuristic pastes (Note [Bounded call-site inlining growth]). -} -resolveDictionaryProp ∷ InlinePolicy → InlineEnv → RewriteRuleM SupplyM Ann -resolveDictionaryProp policy env = \case +resolveDictionaryProp + ∷ CallSitePastes → InlinePolicy → InlineEnv → RewriteRuleM SupplyM Ann +resolveDictionaryProp pastes policy env = \case ObjectProp ann (Ref _ dictName) prop | Just (LiteralObject _ props) ← Map.lookup dictName env , Just method ← List.lookup prop props , countFreeRef dictName method == 0 - , maybe - (expSize method <= inlineSizeBudget) - (== Always) - (fieldPolicy policy dictName prop) → + , case pastes of + HeuristicPastes → + maybe + (expSize method <= inlineSizeBudget) + (== Always) + (fieldPolicy policy dictName prop) + DirectedPastesOnly → + fieldPolicy policy dictName prop == Just Always → Just . setAnn ann <$> freshenBinders method _ → pure Nothing @@ -1586,11 +1702,14 @@ code. 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 by 'inlineSizeBudget'. -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). +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). 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 @@ -1613,10 +1732,12 @@ 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 ∷ InlinePolicy → InlineEnv → RewriteRuleM SupplyM Ann -inlineSaturatedCall policy env expr = case expr of +inlineSaturatedCall + ∷ CallSitePastes → InlinePolicy → InlineEnv → RewriteRuleM SupplyM Ann +inlineSaturatedCall pastes policy env expr = case expr of AppN ann (Ref _ fname) args - | _ : _ : _ ← toList args + | HeuristicPastes ← pastes + , _ : _ : _ ← toList args , Nothing ← directedArity fname , Just rhs@(AbsN _ params body) ← Map.lookup fname env , length args == length params @@ -1641,7 +1762,8 @@ inlineSaturatedCall policy env expr = case expr of <$> freshenBinders rhs Just _underApplied → pure Nothing Nothing - | AbsN _ params _ ← rhs + | HeuristicPastes ← pastes + , AbsN _ params _ ← rhs , length args >= length params , countFreeRef fname rhs == 0 , expSize rhs <= inlineSizeBudget → diff --git a/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs b/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs index c15ce321..0aed8fc9 100644 --- a/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs +++ b/test/Language/PureScript/Backend/IR/Optimizer/Spec.hs @@ -1761,6 +1761,139 @@ spec = describe "IR Optimizer" do uberWith (Name "wide") wideDef [saturated n1 n2, saturated n2 n1] topLevelNames optimized `shouldBe` [QName mainModule (Name "wide$w")] + describe "bounds call-site growth on non-collapsing chains (#221)" do + let mainModule = moduleNameFromString "Main" + extern = moduleNameFromString "Extern" + checked = either (fail . show) pure . optimizedUberModuleChecked + namesOf uber = + [ name + | Standalone (QName _ (Name name), _) ← + Linker.uberModuleBindings uber + ] + bindProp = PropName "bind" + dictName = QName mainModule (Name "dict") + dictRef = refImported mainModule (Name "dict") + -- bind = λm. λf. λs. let v = m s in (f v.0) v.1 — the State + -- shape: the payload is a single-constructor product, so a + -- pasted copy meets no tag test and nothing folds. + productBind = + abstraction (paramNamed (Name "m")) $ + abstraction (paramNamed (Name "f")) $ + abstraction (paramNamed (Name "s")) $ + let1 + (Name "v") + (application (refLocal (Name "m")) (refLocal (Name "s"))) + ( application + ( application + (refLocal (Name "f")) + ( dataArgumentByIndex + ProductType + 0 + (refLocal (Name "v")) + ) + ) + (dataArgumentByIndex ProductType 1 (refLocal (Name "v"))) + ) + productDict = literalObject [(bindProp, productBind)] + chainSite mm i = + application + (application (objectProp dictRef bindProp) mm) + (refImported extern (Name ("k" <> show i))) + productChain = + foldl' chainSite (refImported extern (Name "m0")) [1 .. 16 ∷ Int] + + it "keeps a product-monad dictionary out of a non-collapsing chain" do + -- Every resolved `dict.bind` replaces a compact call with a body + -- nothing folds; over the chain that is pure growth, so the sweep + -- is discarded and the sites keep sharing the dictionary. + optimized ← + checked + Linker.UberModule + { uberModuleForeigns = [] + , uberModuleBindings = [Standalone (dictName, productDict)] + , uberModuleExports = [(Name "main", productChain)] + } + namesOf optimized `shouldSatisfy` elem "dict" + + it "keeps the pastes when the chain collapses" do + -- The Maybe shape: bind tests a sum tag, so from a known + -- constructor every paste folds to straight-line code — the sweep + -- shrinks, is kept, and the dictionary dissolves. The continuation + -- parameter comes first: it substitutes in on the first reduction, + -- so the known-constructor Let lands directly over the tag test, + -- where the #214 fold reaches it. + let maybeTy = TyName "Maybe" + justName = CtorName "Just" + justOf x = ctor SumType extern maybeTy justName [x] + justTag = ctorId extern maybeTy justName + nothingOf = ctor SumType extern maybeTy (CtorName "Nothing") [] + -- bind = λf. λm. if reflectCtor m == Just then f m.0 else Nothing + maybeBind = + abstraction (paramNamed (Name "f")) $ + abstraction (paramNamed (Name "m")) $ + ifThenElse + ( eq + (literalString justTag) + (reflectCtor (refLocal (Name "m"))) + ) + ( application + (refLocal (Name "f")) + (dataArgumentByIndex SumType 0 (refLocal (Name "m"))) + ) + nothingOf + maybeDict = literalObject [(bindProp, maybeBind)] + incr = + abstraction (paramNamed (Name "x")) $ + justOf (primBinOp PrimAdd (refLocal (Name "x")) (literalInt 1)) + site = application (application (objectProp dictRef bindProp) incr) + collapsing = site (site (site (justOf (literalInt 1)))) + optimized ← + checked + Linker.UberModule + { uberModuleForeigns = [] + , uberModuleBindings = [Standalone (dictName, maybeDict)] + , uberModuleExports = [(Name "main", collapsing)] + } + namesOf optimized `shouldSatisfy` notElem "dict" + Linker.uberModuleExports optimized + `shouldBe` [(Name "main", justOf (literalInt 4))] + + it "pastes a directed method inside a growth-vetoed expression" do + -- An explicit directive keeps its budget bypass where the growth + -- bound suppresses heuristic pastes: the fallback sweep still + -- resolves the @inline always@ field, so only the undirected + -- dictionary survives. + let adictName = QName mainModule (Name "adict") + adictRef = refImported mainModule (Name "adict") + addChain = foldl' \acc i → primBinOp PrimAdd acc (literalInt i) + adictDef = + literalObject + [ + ( PropName "m" + , setAnn (Just Always) + . abstraction (paramNamed (Name "x")) + $ addChain (refLocal (Name "x")) [1 .. 40] + ) + ] + directedSite = + application (objectProp adictRef (PropName "m")) (literalInt 0) + combined = + application + (application (refImported extern (Name "use")) directedSite) + productChain + optimized ← + checked + Linker.UberModule + { uberModuleForeigns = [] + , uberModuleBindings = + [ Standalone (dictName, productDict) + , Standalone (adictName, adictDef) + ] + , uberModuleExports = [(Name "main", combined)] + } + namesOf optimized `shouldSatisfy` elem "dict" + namesOf optimized `shouldSatisfy` notElem "adict" + describe "honours @inline arity=N directives (issue #232)" do let mainModule = moduleNameFromString "Main" extern = moduleNameFromString "Extern" From 9a3d3b7a4e49eb2e4995159a0330df4021ca824c Mon Sep 17 00:00:00 2001 From: Yura Lazarev Date: Mon, 20 Jul 2026 15:55:54 +0200 Subject: [PATCH 2/2] test(golden): accept growth-bounded inlining shapes (#221) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Twenty-one goldens move, .ir and .lua only; every eval/golden.txt oracle is untouched and green. LongStackBind sheds the unrolled ExceptT-over-State machinery (1187 → 888 lines, back at its pre-inliner size); TailRecM2Shadow, StringCodePoints, NumberIsNaN, UncurryCtor, the GenericEq pair and six more lose paste residue. Four goldens grow by a few lines where a vetoed expression now keeps its workers shared instead of pasted (CprResult +9, LongApplyChain +11, CSE and DerivedFunctor +3). Zero-line movers carry only the binder renumbering that the discarded speculative sweeps shift. --- .../Golden.ArrayPatternMatch.Test/golden.ir | 126 +- .../Golden.ArrayPatternMatch.Test/golden.lua | 40 +- .../Golden.BugListGenericEq.Test/golden.ir | 235 +- .../Golden.BugListGenericEq.Test/golden.lua | 91 +- test/ps/output/Golden.CSE.Test/golden.ir | 330 +- test/ps/output/Golden.CSE.Test/golden.lua | 79 +- .../output/Golden.CasePruning.Test/golden.ir | 321 +- .../output/Golden.CasePruning.Test/golden.lua | 45 +- .../ps/output/Golden.CprResult.Test/golden.ir | 251 +- .../output/Golden.CprResult.Test/golden.lua | 47 +- .../Golden.DerivedFunctor.Test/golden.ir | 230 +- .../Golden.DerivedFunctor.Test/golden.lua | 49 +- .../Golden.EffectPureChain.Test/golden.ir | 163 +- .../Golden.EffectPureChain.Test/golden.lua | 26 +- .../output/Golden.FieldCaching.Test/golden.ir | 133 +- .../Golden.FieldCaching.Test/golden.lua | 25 +- .../Golden.GenericEqTwoTypes.Test/golden.ir | 926 +- .../Golden.GenericEqTwoTypes.Test/golden.lua | 188 +- .../Golden.LongApplyChain.Test/golden.ir | 134 +- .../Golden.LongApplyChain.Test/golden.lua | 59 +- .../Golden.LongStackBind.Test/golden.ir | 9004 +++++------------ .../Golden.LongStackBind.Test/golden.lua | 747 +- .../Golden.Loopification.Test/golden.ir | 155 +- .../Golden.Loopification.Test/golden.lua | 33 +- .../Golden.MixedEffectSTDo.Test/golden.ir | 132 +- .../Golden.MixedEffectSTDo.Test/golden.lua | 25 +- .../output/Golden.NumberIsNaN.Test/golden.ir | 225 +- .../output/Golden.NumberIsNaN.Test/golden.lua | 94 +- .../ps/output/Golden.STDoBlock.Test/golden.ir | 141 +- .../output/Golden.STDoBlock.Test/golden.lua | 30 +- .../output/Golden.SpecConstr.Test/golden.ir | 58 +- .../output/Golden.SpecConstr.Test/golden.lua | 46 +- .../Golden.StringCodePoints.Test/golden.ir | 1526 ++- .../Golden.StringCodePoints.Test/golden.lua | 199 +- .../Golden.TailRecM2Shadow.Test/golden.ir | 469 +- .../Golden.TailRecM2Shadow.Test/golden.lua | 97 +- test/ps/output/Golden.Uncurry.Test/golden.ir | 44 +- test/ps/output/Golden.Uncurry.Test/golden.lua | 28 +- .../output/Golden.UncurryCtor.Test/golden.ir | 561 +- .../output/Golden.UncurryCtor.Test/golden.lua | 95 +- .../Golden.UncurryEffect.Test/golden.ir | 247 +- .../Golden.UncurryEffect.Test/golden.lua | 42 +- 42 files changed, 6305 insertions(+), 11191 deletions(-) diff --git a/test/ps/output/Golden.ArrayPatternMatch.Test/golden.ir b/test/ps/output/Golden.ArrayPatternMatch.Test/golden.ir index 3a6a9449..44f61bdf 100644 --- a/test/ps/output/Golden.ArrayPatternMatch.Test/golden.ir +++ b/test/ps/output/Golden.ArrayPatternMatch.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 "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -20,10 +14,22 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) + { qnameModuleName = ModuleName "Golden.ArrayPatternMatch.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "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.ArrayPatternMatch.Test", qnameName = Name "lastOfThree" @@ -68,26 +74,15 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$226", LiteralArray Nothing - [ LiteralInt Nothing 10, LiteralInt Nothing 20 ] - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralInt Nothing 2 ) - ( ArrayLength Nothing ( Ref Nothing ( Local ( Name "v$226" ) ) ) ) - ) - ( PrimBinOp Nothing PrimAdd - ( ArrayIndex Nothing ( Ref Nothing ( Local ( Name "v$226" ) ) ) 0 ) - ( ArrayIndex Nothing ( Ref Nothing ( Local ( Name "v$226" ) ) ) 1 ) - ) - ( LiteralInt Nothing ( -1 ) ) - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "firstTwo" ) ) + ) + ( LiteralArray Nothing + [ LiteralInt Nothing 10, LiteralInt Nothing 20 ] :| [] ) :| [] ) ) @@ -96,26 +91,18 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$233", LiteralArray Nothing - [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 ] - ) :| [] + ( Ref Nothing + ( Imported + ( ModuleName "Golden.ArrayPatternMatch.Test" ) + ( Name "firstTwo" ) ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralInt Nothing 2 ) - ( ArrayLength Nothing ( Ref Nothing ( Local ( Name "v$233" ) ) ) ) - ) - ( PrimBinOp Nothing PrimAdd - ( ArrayIndex Nothing ( Ref Nothing ( Local ( Name "v$233" ) ) ) 0 ) - ( ArrayIndex Nothing ( Ref Nothing ( Local ( Name "v$233" ) ) ) 1 ) - ) - ( LiteralInt Nothing ( -1 ) ) - ) :| [] + ) + ( LiteralArray Nothing + [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 ] :| [] ) :| [] ) ) @@ -123,20 +110,17 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralInt Nothing 2 ) - ( ArrayLength Nothing ( LiteralArray Nothing [] ) ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.ArrayPatternMatch.Test" ) + ( Name "firstTwo" ) ) - ( PrimBinOp Nothing PrimAdd - ( ArrayIndex Nothing ( LiteralArray Nothing [] ) 0 ) - ( ArrayIndex Nothing ( LiteralArray Nothing [] ) 1 ) - ) - ( LiteralInt Nothing ( -1 ) ) :| [] - ) :| [] + ) + ( LiteralArray Nothing [] :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -145,23 +129,15 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$247", LiteralArray Nothing - [ LiteralInt Nothing 7, LiteralInt Nothing 8, LiteralInt Nothing 9 ] - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralInt Nothing 3 ) - ( ArrayLength Nothing ( Ref Nothing ( Local ( Name "v$247" ) ) ) ) - ) - ( ArrayIndex Nothing ( Ref Nothing ( Local ( Name "v$247" ) ) ) 2 ) - ( LiteralInt Nothing ( -1 ) ) - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.ArrayPatternMatch.Test" ) ( Name "lastOfThree" ) ) + ) + ( LiteralArray Nothing + [ LiteralInt Nothing 7, LiteralInt Nothing 8, LiteralInt Nothing 9 ] :| [] ) :| [] ) ) diff --git a/test/ps/output/Golden.ArrayPatternMatch.Test/golden.lua b/test/ps/output/Golden.ArrayPatternMatch.Test/golden.lua index a4cee295..4ba3b0bf 100644 --- a/test/ps/output/Golden.ArrayPatternMatch.Test/golden.lua +++ b/test/ps/output/Golden.ArrayPatternMatch.Test/golden.lua @@ -1,30 +1,30 @@ -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Effect_Console_log = Effect_Console_foreign.log -M.Golden_ArrayPatternMatch_Test_lastOfThree = function(v) +local Golden_ArrayPatternMatch_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(a_S_2)) +end +local Golden_ArrayPatternMatch_Test_lastOfThree = function(v) if 3 == #(v) then return v[3] else return -1 end end -M.Golden_ArrayPatternMatch_Test_firstTwo = function(v) +local Golden_ArrayPatternMatch_Test_firstTwo = function(v) if 2 == #(v) then return v[1] + v[2] else return -1 end end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - local v_S_226 = { [1] = 10, [2] = 20 } - if 2 == #(v_S_226) then return v_S_226[1] + v_S_226[2] else return -1 end - end)()))() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - local v_S_233 = { [1] = 1, [2] = 2, [3] = 3 } - if 2 == #(v_S_233) then return v_S_233[1] + v_S_233[2] else return -1 end - end)()))() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - if 2 == #({}) then return ({})[1] + ({})[2] else return -1 end - end)()))() - return Effect_Console_log(Data_Show_showIntImpl((function() - local v_S_247 = { [1] = 7, [2] = 8, [3] = 9 } - if 3 == #(v_S_247) then return v_S_247[3] else return -1 end - end)()))() + local _ = Golden_ArrayPatternMatch_Test_logShow(Golden_ArrayPatternMatch_Test_firstTwo({ + [1] = 10, + [2] = 20 + }))() + local _ = Golden_ArrayPatternMatch_Test_logShow(Golden_ArrayPatternMatch_Test_firstTwo({ + [1] = 1, + [2] = 2, + [3] = 3 + }))() + local _ = Golden_ArrayPatternMatch_Test_logShow(Golden_ArrayPatternMatch_Test_firstTwo({}))() + return Golden_ArrayPatternMatch_Test_logShow(Golden_ArrayPatternMatch_Test_lastOfThree({ + [1] = 7, + [2] = 8, + [3] = 9 + }))() end)() diff --git a/test/ps/output/Golden.BugListGenericEq.Test/golden.ir b/test/ps/output/Golden.BugListGenericEq.Test/golden.ir index f0d060be..eccdf917 100644 --- a/test/ps/output/Golden.BugListGenericEq.Test/golden.ir +++ b/test/ps/output/Golden.BugListGenericEq.Test/golden.ir @@ -13,12 +13,6 @@ 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 "Type.Proxy", qnameName = Name "Proxy" }, Ctor Nothing ProductType @@ -184,6 +178,26 @@ UberModule ] ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.BugListGenericEq.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ) + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "a$2" ) ) ) + ( LiteralString Nothing "true" ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralBool Nothing False ) ( Ref Nothing ( Local ( Name "a$2" ) ) ) ) + ( LiteralString Nothing "false" ) + ( Exception Nothing "No patterns matched" ) + ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.BugListGenericEq.Test", qnameName = Name "Nil" }, Ctor Nothing SumType @@ -210,14 +224,14 @@ UberModule ( ParamNamed Nothing ( Name "x" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse268", ReflectCtor Nothing + ( Nothing, Name "$cse274", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse268" ) ) ) + ( Ref Nothing ( Local ( Name "$cse274" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) @@ -225,7 +239,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse268" ) ) ) + ( Ref Nothing ( Local ( Name "$cse274" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Golden.BugListGenericEq.Test" ) @@ -242,14 +256,14 @@ UberModule ( ParamNamed Nothing ( Name "x0" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse269", ReflectCtor Nothing + ( Nothing, Name "$cse275", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x0" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Nil" ) - ( Ref Nothing ( Local ( Name "$cse269" ) ) ) + ( Ref Nothing ( Local ( Name "$cse275" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -264,7 +278,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Cons" ) - ( Ref Nothing ( Local ( Name "$cse269" ) ) ) + ( Ref Nothing ( Local ( Name "$cse275" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -294,13 +308,13 @@ UberModule ( ParamNamed Nothing ( Name "y" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse272", ReflectCtor Nothing + ( Nothing, Name "$cse278", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "y" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse271", Ctor Nothing SumType + ( Nothing, Name "$cse277", Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) ( TyName "Sum" ) ( CtorName "Inl" ) @@ -313,7 +327,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse270", ReflectCtor Nothing + ( Nothing, Name "$cse276", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x" ) ) ) ) :| [] ) @@ -323,13 +337,13 @@ UberModule ( Nothing, Name "v$13", IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Nil" ) - ( Ref Nothing ( Local ( Name "$cse270" ) ) ) + ( Ref Nothing ( Local ( Name "$cse276" ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse271" ) ) ) + ( Ref Nothing ( Local ( Name "$cse277" ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Cons" ) - ( Ref Nothing ( Local ( Name "$cse270" ) ) ) + ( Ref Nothing ( Local ( Name "$cse276" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -347,34 +361,34 @@ UberModule ( ParamNamed Nothing ( Name "v1$14" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse274", ReflectCtor Nothing + ( Nothing, Name "$cse280", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$14" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse273", ReflectCtor Nothing + ( Nothing, Name "$cse279", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$13" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse273" ) ) ) + ( Ref Nothing ( Local ( Name "$cse279" ) ) ) ) ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse274" ) ) ) + ( Ref Nothing ( Local ( Name "$cse280" ) ) ) ) ( PrimBinOp Nothing PrimAnd ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse273" ) ) ) + ( Ref Nothing ( Local ( Name "$cse279" ) ) ) ) ( PrimBinOp Nothing PrimAnd ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse274" ) ) ) + ( Ref Nothing ( Local ( Name "$cse280" ) ) ) ) ( AppN Nothing ( AppN Nothing @@ -470,13 +484,13 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Nil" ) - ( Ref Nothing ( Local ( Name "$cse272" ) ) ) + ( Ref Nothing ( Local ( Name "$cse278" ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse271" ) ) ) + ( Ref Nothing ( Local ( Name "$cse277" ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.BugListGenericEq.Test∷List.Cons" ) - ( Ref Nothing ( Local ( Name "$cse272" ) ) ) + ( Ref Nothing ( Local ( Name "$cse278" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -567,19 +581,14 @@ UberModule ( Let Nothing ( Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$265", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.BugListGenericEq.Test" ) - ( Name "Nil" ) - ) :| [] - ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) ) ( Ref Nothing ( Imported @@ -587,60 +596,24 @@ UberModule ( Name "Nil" ) ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$265" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$265" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) :| [ Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$266", 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 :| - [ 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 "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "eq" ) ) ) ( AppN Nothing ( Ref Nothing @@ -668,71 +641,67 @@ UberModule ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$266" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$266" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] - ) - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) - ] - ) - ( AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$267", 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" ) + ) + ] + ) ] ) :| [] - ) + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "logShow" ) ) + ) + ( 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 2 :| + ( LiteralInt Nothing 1 :| [ Ref Nothing ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$267" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$267" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "cons$w" ) ) + ) + ( LiteralInt Nothing 2 :| + [ Ref Nothing + ( Imported ( ModuleName "Golden.BugListGenericEq.Test" ) ( Name "Nil" ) ) + ] + ) :| [] + ) :| [] ) ) ( 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 10fd15dc..c8c2a45c 100644 --- a/test/ps/output/Golden.BugListGenericEq.Test/golden.lua +++ b/test/ps/output/Golden.BugListGenericEq.Test/golden.lua @@ -5,7 +5,6 @@ local Record_Unsafe_foreign = { 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 = { @@ -40,6 +39,17 @@ local Data_Eq_eqRowCons_S_w = function( dictEqRecord end } end +local Golden_BugListGenericEq_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log((function() + if a_S_2 then + return "true" + elseif false == a_S_2 then + return "false" + else + return error("No patterns matched") + end + end)()) +end local Golden_BugListGenericEq_Test_Nil = { "Golden.BugListGenericEq.Test∷List.Nil" } @@ -48,20 +58,20 @@ M.Golden_BugListGenericEq_Test_Cons = function(value0) end M.Golden_BugListGenericEq_Test_genericList = { to = function(x) - local _S_cse268 = x[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse268 then + local _S_cse274 = x[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse274 then return Golden_BugListGenericEq_Test_Nil - elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse268 then + elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse274 then return { "Golden.BugListGenericEq.Test∷List.Cons", x[2] } else return error("No patterns matched") end end, from = function(x0) - local _S_cse269 = x0[1] - if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse269 then + local _S_cse275 = x0[1] + if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse275 then return { "Data.Generic.Rep∷Sum.Inl", {} } - elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse269 then + elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse275 then return { "Data.Generic.Rep∷Sum.Inr", x0[2] } else return error("No patterns matched") @@ -73,26 +83,26 @@ Golden_BugListGenericEq_Test_eqList = function(dictEq) return { eq = function(x) return function(y) - local _S_cse272 = y[1] - local _S_cse271 = { "Data.Generic.Rep∷Sum.Inl", {} } - local _S_cse270 = x[1] + local _S_cse278 = y[1] + local _S_cse277 = { "Data.Generic.Rep∷Sum.Inl", {} } + local _S_cse276 = x[1] return (function() local v_S_13 = (function() - if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse270 then - return _S_cse271 - elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse270 then + if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse276 then + return _S_cse277 + elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse276 then return { "Data.Generic.Rep∷Sum.Inr", x[2] } else return error("No patterns matched") end end)() return function(v1_S_14) - local _S_cse274 = v1_S_14[1] - local _S_cse273 = v_S_13[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse273 then - return "Data.Generic.Rep∷Sum.Inl" == _S_cse274 + local _S_cse280 = v1_S_14[1] + local _S_cse279 = v_S_13[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse279 then + return "Data.Generic.Rep∷Sum.Inl" == _S_cse280 else - return "Data.Generic.Rep∷Sum.Inr" == _S_cse273 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse274 and (Data_Eq_eqRowCons_S_w(Data_Eq_eqRowCons_S_w({ + return "Data.Generic.Rep∷Sum.Inr" == _S_cse279 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse280 and (Data_Eq_eqRowCons_S_w(Data_Eq_eqRowCons_S_w({ eqRecord = function() return function() return function() return true end end end @@ -104,9 +114,9 @@ Golden_BugListGenericEq_Test_eqList = function(dictEq) end end end)()((function() - if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse272 then - return _S_cse271 - elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse272 then + if "Golden.BugListGenericEq.Test∷List.Nil" == _S_cse278 then + return _S_cse277 + elseif "Golden.BugListGenericEq.Test∷List.Cons" == _S_cse278 then return { "Data.Generic.Rep∷Sum.Inr", y[2] } else return error("No patterns matched") @@ -128,40 +138,7 @@ local Golden_BugListGenericEq_Test_cons_S_w = function(head, tail) } end return (function() - local _ = (function() - local a_S_265 = Golden_BugListGenericEq_Test_eq(Golden_BugListGenericEq_Test_Nil)(Golden_BugListGenericEq_Test_Nil) - return Effect_Console_log((function() - if a_S_265 then - return "true" - elseif false == a_S_265 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_266 = 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))) - return Effect_Console_log((function() - if a_S_266 then - return "true" - elseif false == a_S_266 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - return (function() - local a_S_267 = 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)) - return Effect_Console_log((function() - if a_S_267 then - return "true" - elseif false == a_S_267 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() + local _ = Golden_BugListGenericEq_Test_logShow(Golden_BugListGenericEq_Test_eq(Golden_BugListGenericEq_Test_Nil)(Golden_BugListGenericEq_Test_Nil))() + local _ = Golden_BugListGenericEq_Test_logShow(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))))() + return Golden_BugListGenericEq_Test_logShow(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)))() end)() diff --git a/test/ps/output/Golden.CSE.Test/golden.ir b/test/ps/output/Golden.CSE.Test/golden.ir index 9a13c428..36516bbf 100644 --- a/test/ps/output/Golden.CSE.Test/golden.ir +++ b/test/ps/output/Golden.CSE.Test/golden.ir @@ -19,12 +19,6 @@ 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 "showArrayImpl" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PropName "showArrayImpl" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showIntImpl" }, ObjectProp Nothing @@ -55,6 +49,36 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "log" ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.CSE.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$230" ) :| [] ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showArrayImpl" ) + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] ) + ) + ( Ref Nothing ( Local ( Name "a$230" ) ) :| [] ) :| [] + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.CSE.Test", qnameName = Name "logShow1" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$226" ) :| [] ) + ( 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$226" ) ) :| [] ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CSE.Test", qnameName = Name "Zero" }, Ctor Nothing SumType @@ -100,15 +124,15 @@ UberModule ( ParamNamed Nothing ( Name "x" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse255", ObjectProp Nothing + ( Nothing, Name "$cse265", ObjectProp Nothing ( Ref Nothing ( Local ( Name "r" ) ) ) ( PropName "run" ) ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse255" ) ) ) + ( Ref Nothing ( Local ( Name "$cse265" ) ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse255" ) ) ) + ( Ref Nothing ( Local ( Name "$cse265" ) ) ) ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) :| [] ) ) @@ -121,32 +145,32 @@ UberModule ( ParamNamed Nothing ( Name "e" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse257", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse267", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "e" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse256", ReflectCtor Nothing + ( Nothing, Name "$cse266", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "e" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Not" ) - ( Ref Nothing ( Local ( Name "$cse256" ) ) ) + ( Ref Nothing ( Local ( Name "$cse266" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Num" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse257" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Zero" ) ( ReflectCtor Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "$cse257" ) ) ) + ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ) @@ -156,7 +180,7 @@ UberModule ( LiteralString Nothing "Golden.CSE.Test∷N.Succ" ) ( ReflectCtor Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "$cse257" ) ) ) + ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ) @@ -167,7 +191,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Not" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse257" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ( LiteralInt Nothing 2 ) ( Exception Nothing "No patterns matched" ) @@ -176,18 +200,18 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷E.Num" ) - ( Ref Nothing ( Local ( Name "$cse256" ) ) ) + ( Ref Nothing ( Local ( Name "$cse266" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Zero" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse257" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ( LiteralInt Nothing 3 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CSE.Test∷N.Succ" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse257" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "$cse267" ) ) ) ) ) ( LiteralInt Nothing 4 ) ( Exception Nothing "No patterns matched" ) @@ -205,7 +229,7 @@ UberModule ( ParamNamed Nothing ( Name "f" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse258", LiteralArray Nothing + ( Nothing, Name "$cse268", LiteralArray Nothing [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 ] ) :| [] ) @@ -214,12 +238,12 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Semigroup" ) ( Name "concatArray" ) ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse258" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse268" ) ) :| [] ) :| [] ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse258" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "$cse268" ) ) :| [] ) :| [] ) ) ) @@ -232,7 +256,7 @@ UberModule ( ParamNamed Nothing ( Name "xs" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse259", AbsN Nothing + ( Nothing, Name "$cse269", AbsN Nothing ( ParamNamed Nothing ( Name "i" ) :| [] ) ( PrimBinOp Nothing PrimAdd ( Ref Nothing ( Local ( Name "i" ) ) ) @@ -246,7 +270,7 @@ UberModule ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) - ( Ref Nothing ( Local ( Name "$cse259" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse269" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "xs" ) ) :| [] ) :| [] ) @@ -254,7 +278,7 @@ UberModule ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) - ( Ref Nothing ( Local ( Name "$cse259" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse269" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "xs" ) ) :| [] ) :| [] ) @@ -284,7 +308,7 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse261", Ctor Nothing SumType + ( Nothing, Name "$cse271", Ctor Nothing SumType ( ModuleName "Golden.CSE.Test" ) ( TyName "E" ) ( CtorName "Num" ) @@ -293,37 +317,29 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse260", Ctor Nothing SumType + ( Nothing, Name "$cse270", Ctor Nothing SumType ( ModuleName "Golden.CSE.Test" ) ( TyName "E" ) ( CtorName "Not" ) - [ Ref Nothing ( Local ( Name "$cse261" ) ) ] + [ Ref Nothing ( Local ( Name "$cse271" ) ) ] ) :| [] ) ( Let Nothing ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "addToAll" ) ) ) + ( LiteralInt Nothing 10 :| [] ) ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "addToAll" ) ) - ) - ( LiteralInt Nothing 10 :| [] ) - ) - ( LiteralArray Nothing - [ LiteralInt Nothing 1, LiteralInt Nothing 2 ] :| [] - ) :| [] + ( LiteralArray Nothing + [ LiteralInt Nothing 1, LiteralInt Nothing 2 ] :| [] ) :| [] ) ) @@ -332,115 +348,93 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "addToAll" ) ) ) + ( LiteralInt Nothing 20 :| [] ) ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "addToAll" ) ) - ) - ( LiteralInt Nothing 20 :| [] ) - ) - ( LiteralArray Nothing [ LiteralInt Nothing 3 ] :| [] ) :| [] - ) :| [] + ( LiteralArray Nothing [ 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.CSE.Test" ) ( Name "logShow1" ) ) + ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "runTwice" ) ) - ) - ( LiteralObject Nothing - [ - ( PropName "run", AbsN Nothing - ( ParamNamed Nothing ( Name "i$0" ) :| [] ) - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "i$0" ) ) ) - ( LiteralInt Nothing 2 ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "runTwice" ) ) + ) + ( LiteralObject Nothing + [ + ( PropName "run", AbsN Nothing + ( ParamNamed Nothing ( Name "i$0" ) :| [] ) + ( PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "i$0" ) ) ) + ( LiteralInt Nothing 2 ) ) - ] :| [] - ) + ) + ] :| [] ) - ( 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 "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow1" ) ) + ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "runTwice" ) ) - ) - ( LiteralObject Nothing - [ - ( PropName "run", AbsN Nothing - ( ParamNamed Nothing ( Name "i0$1" ) :| [] ) - ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "i0$1" ) ) ) - ( LiteralInt Nothing 1 ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "runTwice" ) ) + ) + ( LiteralObject Nothing + [ + ( PropName "run", AbsN Nothing + ( ParamNamed Nothing ( Name "i0$1" ) :| [] ) + ( PrimBinOp Nothing PrimSub + ( Ref Nothing ( Local ( Name "i0$1" ) ) ) + ( LiteralInt Nothing 1 ) ) - ] :| [] - ) + ) + ] :| [] ) - ( LiteralInt Nothing 10 :| [] ) :| [] - ) :| [] + ) + ( LiteralInt Nothing 10 :| [] ) :| [] ) ) ( 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.CSE.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "catBoth" ) ) ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "catBoth" ) ) + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v$2" ) :| [] ) - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "v$2" ) ) ) - ( LiteralInt Nothing 3 ) - ) :| [] + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v$2" ) :| [] ) + ( PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "v$2" ) ) ) + ( LiteralInt Nothing 3 ) ) :| [] ) :| [] ) :| [] @@ -450,24 +444,16 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showArrayImpl" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "catBoth" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "catBoth" ) ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "x$216" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$216" ) ) ) :| [] - ) :| [] + ( AbsN Nothing + ( ParamNamed Nothing ( Name "x$216" ) :| [] ) + ( Ref Nothing ( Local ( Name "x$216" ) ) ) :| [] ) :| [] ) ) @@ -475,45 +461,39 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow1" ) ) + ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) - ) - ( Ref Nothing ( Local ( Name "$cse261" ) ) :| [] ) :| [] - ) :| [] + ( Ref Nothing ( Local ( Name "$cse271" ) ) :| [] ) :| [] ) ) ( 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.CSE.Test" ) ( Name "logShow1" ) ) + ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) - ) - ( Ctor Nothing SumType + ( Ctor Nothing SumType + ( ModuleName "Golden.CSE.Test" ) + ( TyName "E" ) + ( CtorName "Num" ) + [ Ctor Nothing SumType ( ModuleName "Golden.CSE.Test" ) - ( TyName "E" ) - ( CtorName "Num" ) - [ Ctor Nothing SumType - ( ModuleName "Golden.CSE.Test" ) - ( TyName "N" ) - ( CtorName "Succ" ) - [ Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "Zero" ) ) - ] - ] :| [] - ) :| [] + ( TyName "N" ) + ( CtorName "Succ" ) + [ Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "Zero" ) ) + ] + ] :| [] ) :| [] ) ) @@ -521,17 +501,14 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow1" ) ) + ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) - ) - ( Ref Nothing ( Local ( Name "$cse260" ) ) :| [] ) :| [] - ) :| [] + ( Ref Nothing ( Local ( Name "$cse270" ) ) :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -540,19 +517,16 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "logShow1" ) ) ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Golden.CSE.Test" ) - ( TyName "E" ) - ( CtorName "Not" ) - [ Ref Nothing ( Local ( Name "$cse260" ) ) ] :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CSE.Test" ) ( Name "classify" ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.CSE.Test" ) + ( TyName "E" ) + ( CtorName "Not" ) + [ Ref Nothing ( Local ( Name "$cse270" ) ) ] :| [] ) :| [] ) ) diff --git a/test/ps/output/Golden.CSE.Test/golden.lua b/test/ps/output/Golden.CSE.Test/golden.lua index b19e7233..c89d2b3d 100644 --- a/test/ps/output/Golden.CSE.Test/golden.lua +++ b/test/ps/output/Golden.CSE.Test/golden.lua @@ -24,7 +24,6 @@ local Data_Show_foreign = { end end } -local Data_Show_showArrayImpl = Data_Show_foreign.showArrayImpl local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Data_Functor_foreign = { arrayMap = function(f) @@ -41,6 +40,12 @@ local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log +local Golden_CSE_Test_logShow = function(a_S_230) + return Effect_Console_log(Data_Show_foreign.showArrayImpl(Data_Show_showIntImpl)(a_S_230)) +end +local Golden_CSE_Test_logShow1 = function(a_S_226) + return Effect_Console_log(Data_Show_showIntImpl(a_S_226)) +end local Golden_CSE_Test_Zero = { "Golden.CSE.Test∷N.Zero" } M.Golden_CSE_Test_Succ = function(value0) return { "Golden.CSE.Test∷N.Succ", value0 } @@ -52,29 +57,29 @@ M.Golden_CSE_Test_Not = function(value0) return { "Golden.CSE.Test∷E.Not", value0 } end local Golden_CSE_Test_runTwice = function(r) - return function(x) local _S_cse255 = r.run return _S_cse255(_S_cse255(x)) end + return function(x) local _S_cse265 = r.run return _S_cse265(_S_cse265(x)) end end local Golden_CSE_Test_classify = function(e) - local _S_cse257 = e[2] - local _S_cse256 = e[1] - if "Golden.CSE.Test∷E.Not" == _S_cse256 then - if "Golden.CSE.Test∷E.Num" == _S_cse257[1] then - if "Golden.CSE.Test∷N.Zero" == _S_cse257[2][1] then + local _S_cse267 = e[2] + local _S_cse266 = e[1] + if "Golden.CSE.Test∷E.Not" == _S_cse266 then + if "Golden.CSE.Test∷E.Num" == _S_cse267[1] then + if "Golden.CSE.Test∷N.Zero" == _S_cse267[2][1] then return 0 - elseif "Golden.CSE.Test∷N.Succ" == _S_cse257[2][1] then + elseif "Golden.CSE.Test∷N.Succ" == _S_cse267[2][1] then return 1 else return error("No patterns matched") end - elseif "Golden.CSE.Test∷E.Not" == _S_cse257[1] then + elseif "Golden.CSE.Test∷E.Not" == _S_cse267[1] then return 2 else return error("No patterns matched") end - elseif "Golden.CSE.Test∷E.Num" == _S_cse256 then - if "Golden.CSE.Test∷N.Zero" == _S_cse257[1] then + elseif "Golden.CSE.Test∷E.Num" == _S_cse266 then + if "Golden.CSE.Test∷N.Zero" == _S_cse267[1] then return 3 - elseif "Golden.CSE.Test∷N.Succ" == _S_cse257[1] then + elseif "Golden.CSE.Test∷N.Succ" == _S_cse267[1] then return 4 else return error("No patterns matched") @@ -84,45 +89,43 @@ local Golden_CSE_Test_classify = function(e) end end local Golden_CSE_Test_catBoth = function(f) - local _S_cse258 = { [1] = 1, [2] = 2, [3] = 3 } - return Data_Semigroup_concatArray(f(_S_cse258))(f(_S_cse258)) + local _S_cse268 = { [1] = 1, [2] = 2, [3] = 3 } + return Data_Semigroup_concatArray(f(_S_cse268))(f(_S_cse268)) end local Golden_CSE_Test_addToAll = function(n) return function(xs) - local _S_cse259 = function(i) return i + n end - return Data_Semigroup_concatArray(Data_Functor_arrayMap(_S_cse259)(xs))(Data_Functor_arrayMap(_S_cse259)(xs)) + local _S_cse269 = function(i) return i + n end + return Data_Semigroup_concatArray(Data_Functor_arrayMap(_S_cse269)(xs))(Data_Functor_arrayMap(_S_cse269)(xs)) end end return (function() - local _S_cse261 = { "Golden.CSE.Test∷E.Num", Golden_CSE_Test_Zero } - local _S_cse260 = { "Golden.CSE.Test∷E.Not", _S_cse261 } - local _ = Effect_Console_log(Data_Show_showArrayImpl(Data_Show_showIntImpl)(Golden_CSE_Test_addToAll(10)({ + local _S_cse271 = { "Golden.CSE.Test∷E.Num", Golden_CSE_Test_Zero } + local _S_cse270 = { "Golden.CSE.Test∷E.Not", _S_cse271 } + local _ = Golden_CSE_Test_logShow(Golden_CSE_Test_addToAll(10)({ [1] = 1, [2] = 2 - })))() - local _ = Effect_Console_log(Data_Show_showArrayImpl(Data_Show_showIntImpl)(Golden_CSE_Test_addToAll(20)({ - [1] = 3 - })))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_runTwice({ + }))() + local _ = Golden_CSE_Test_logShow(Golden_CSE_Test_addToAll(20)({ [1] = 3 }))() + local _ = Golden_CSE_Test_logShow1(Golden_CSE_Test_runTwice({ run = function(i_S_0) return i_S_0 * 2 end - })(3)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_runTwice({ + })(3))() + local _ = Golden_CSE_Test_logShow1(Golden_CSE_Test_runTwice({ run = function(i0_S_1) return i0_S_1 - 1 end - })(10)))() - local _ = Effect_Console_log(Data_Show_showArrayImpl(Data_Show_showIntImpl)(Golden_CSE_Test_catBoth(Data_Functor_arrayMap(function( v_S_2 ) + })(10))() + local _ = Golden_CSE_Test_logShow(Golden_CSE_Test_catBoth(Data_Functor_arrayMap(function( v_S_2 ) return v_S_2 * 3 - end))))() - local _ = Effect_Console_log(Data_Show_showArrayImpl(Data_Show_showIntImpl)(Golden_CSE_Test_catBoth(function( x_S_216 ) - return x_S_216 end)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_classify(_S_cse261)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_classify({ + local _ = Golden_CSE_Test_logShow(Golden_CSE_Test_catBoth(function(x_S_216) + return x_S_216 + end))() + local _ = Golden_CSE_Test_logShow1(Golden_CSE_Test_classify(_S_cse271))() + local _ = Golden_CSE_Test_logShow1(Golden_CSE_Test_classify({ "Golden.CSE.Test∷E.Num", { "Golden.CSE.Test∷N.Succ", Golden_CSE_Test_Zero } - })))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_classify(_S_cse260)))() - return Effect_Console_log(Data_Show_showIntImpl(Golden_CSE_Test_classify({ + }))() + local _ = Golden_CSE_Test_logShow1(Golden_CSE_Test_classify(_S_cse270))() + return Golden_CSE_Test_logShow1(Golden_CSE_Test_classify({ "Golden.CSE.Test∷E.Not", - _S_cse260 - })))() + _S_cse270 + }))() end)() diff --git a/test/ps/output/Golden.CasePruning.Test/golden.ir b/test/ps/output/Golden.CasePruning.Test/golden.ir index 8f668cce..f4f0a34c 100644 --- a/test/ps/output/Golden.CasePruning.Test/golden.ir +++ b/test/ps/output/Golden.CasePruning.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 "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -20,10 +14,22 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) + { qnameModuleName = ModuleName "Golden.CasePruning.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "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.CasePruning.Test", qnameName = Name "A" @@ -100,31 +106,31 @@ UberModule ( ParamNamed Nothing ( Name "v1" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse223", ReflectCtor Nothing + ( Nothing, Name "$cse249", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse222", ReflectCtor Nothing + ( Nothing, Name "$cse248", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.A" ) - ( Ref Nothing ( Local ( Name "$cse222" ) ) ) + ( Ref Nothing ( Local ( Name "$cse248" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.A" ) - ( Ref Nothing ( Local ( Name "$cse223" ) ) ) + ( Ref Nothing ( Local ( Name "$cse249" ) ) ) ) ( LiteralInt Nothing 1 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse223" ) ) ) + ( Ref Nothing ( Local ( Name "$cse249" ) ) ) ) ( LiteralInt Nothing 3 ) ( LiteralInt Nothing 4 ) @@ -133,12 +139,12 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse222" ) ) ) + ( Ref Nothing ( Local ( Name "$cse248" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.CasePruning.Test∷T.B" ) - ( Ref Nothing ( Local ( Name "$cse223" ) ) ) + ( Ref Nothing ( Local ( Name "$cse249" ) ) ) ) ( LiteralInt Nothing 2 ) ( LiteralInt Nothing 4 ) @@ -170,21 +176,17 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalRetest" ) - ) - ) - ( LiteralInt Nothing 0 :| [] ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "literalRetest" ) ) ) - ( LiteralString Nothing "" :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 0 :| [] ) + ) + ( LiteralString Nothing "" :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -192,66 +194,60 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalRetest" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalRetest" ) ) - ( LiteralInt Nothing 0 :| [] ) ) - ( LiteralString Nothing "x" :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 0 :| [] ) + ) + ( LiteralString Nothing "x" :| [] ) :| [] ) ) ( 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.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalRetest" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalRetest" ) ) - ( LiteralInt Nothing 5 :| [] ) ) - ( LiteralString Nothing "" :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 5 :| [] ) + ) + ( LiteralString Nothing "" :| [] ) :| [] ) ) ( 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.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "ctorRetest" ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "ctorRetest" ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] - ) :| [] + ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] ) :| [] ) ) @@ -259,24 +255,20 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "ctorRetest" ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "B" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "ctorRetest" ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "B" ) ) :| [] - ) :| [] + ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "B" ) ) :| [] ) :| [] ) ) @@ -284,24 +276,20 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "ctorRetest" ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "ctorRetest" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "B" ) ) :| [] - ) :| [] + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] + ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "B" ) ) :| [] ) :| [] ) ) @@ -309,24 +297,20 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "ctorRetest" ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "ctorRetest" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "C" ) ) :| [] - ) :| [] + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "A" ) ) :| [] + ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "C" ) ) :| [] ) :| [] ) ) @@ -334,24 +318,20 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "ctorRetest" ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "C" ) ) :| [] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "ctorRetest" ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "C" ) ) :| [] - ) :| [] + ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "C" ) ) :| [] ) :| [] ) ) @@ -359,84 +339,80 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalNegatives" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalNegatives" ) ) - ( LiteralInt Nothing 1 :| [] ) ) - ( LiteralInt Nothing 1 :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 1 :| [] ) + ) + ( LiteralInt Nothing 1 :| [] ) :| [] ) ) ( 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.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalNegatives" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalNegatives" ) ) - ( LiteralInt Nothing 2 :| [] ) ) - ( LiteralInt Nothing 2 :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 2 :| [] ) + ) + ( LiteralInt Nothing 2 :| [] ) :| [] ) ) ( 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.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalNegatives" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalNegatives" ) ) - ( LiteralInt Nothing 1 :| [] ) ) - ( LiteralInt Nothing 2 :| [] ) :| [] - ) :| [] + ( 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 "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalNegatives" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalNegatives" ) ) - ( LiteralInt Nothing 1 :| [] ) ) - ( LiteralInt Nothing 3 :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 1 :| [] ) + ) + ( LiteralInt Nothing 3 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -445,21 +421,20 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CasePruning.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CasePruning.Test" ) - ( Name "literalNegatives" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.CasePruning.Test" ) + ( Name "literalNegatives" ) ) - ( LiteralInt Nothing 3 :| [] ) ) - ( LiteralInt Nothing 3 :| [] ) :| [] - ) :| [] + ( LiteralInt Nothing 3 :| [] ) + ) + ( LiteralInt Nothing 3 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.CasePruning.Test/golden.lua b/test/ps/output/Golden.CasePruning.Test/golden.lua index fe9697af..60fd6c26 100644 --- a/test/ps/output/Golden.CasePruning.Test/golden.lua +++ b/test/ps/output/Golden.CasePruning.Test/golden.lua @@ -1,9 +1,10 @@ local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Effect_Console_log = Effect_Console_foreign.log +local Golden_CasePruning_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(a_S_2)) +end local Golden_CasePruning_Test_A = { "Golden.CasePruning.Test∷T.A" } local Golden_CasePruning_Test_B = { "Golden.CasePruning.Test∷T.B" } local Golden_CasePruning_Test_C = { "Golden.CasePruning.Test∷T.C" } @@ -25,18 +26,18 @@ local Golden_CasePruning_Test_literalNegatives = function(v) end local Golden_CasePruning_Test_ctorRetest = function(v) return function(v1) - local _S_cse223 = v1[1] - local _S_cse222 = v[1] - if "Golden.CasePruning.Test∷T.A" == _S_cse222 then - if "Golden.CasePruning.Test∷T.A" == _S_cse223 then + local _S_cse249 = v1[1] + local _S_cse248 = v[1] + if "Golden.CasePruning.Test∷T.A" == _S_cse248 then + if "Golden.CasePruning.Test∷T.A" == _S_cse249 then return 1 - elseif "Golden.CasePruning.Test∷T.B" == _S_cse223 then + elseif "Golden.CasePruning.Test∷T.B" == _S_cse249 then return 3 else return 4 end - elseif "Golden.CasePruning.Test∷T.B" == _S_cse222 then - if "Golden.CasePruning.Test∷T.B" == _S_cse223 then + elseif "Golden.CasePruning.Test∷T.B" == _S_cse248 then + if "Golden.CasePruning.Test∷T.B" == _S_cse249 then return 2 else return 4 @@ -47,17 +48,17 @@ local Golden_CasePruning_Test_ctorRetest = function(v) end end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalRetest(0)("")))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalRetest(0)("x")))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalRetest(5)("")))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_A)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_B)(Golden_CasePruning_Test_B)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_B)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_C)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_C)(Golden_CasePruning_Test_C)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalNegatives(1)(1)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalNegatives(2)(2)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalNegatives(1)(2)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalNegatives(1)(3)))() - return Effect_Console_log(Data_Show_showIntImpl(Golden_CasePruning_Test_literalNegatives(3)(3)))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalRetest(0)(""))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalRetest(0)("x"))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalRetest(5)(""))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_A))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_B)(Golden_CasePruning_Test_B))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_B))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_A)(Golden_CasePruning_Test_C))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_ctorRetest(Golden_CasePruning_Test_C)(Golden_CasePruning_Test_C))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalNegatives(1)(1))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalNegatives(2)(2))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalNegatives(1)(2))() + local _ = Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalNegatives(1)(3))() + return Golden_CasePruning_Test_logShow(Golden_CasePruning_Test_literalNegatives(3)(3))() end)() diff --git a/test/ps/output/Golden.CprResult.Test/golden.ir b/test/ps/output/Golden.CprResult.Test/golden.ir index 5f6098c3..38f82bb7 100644 --- a/test/ps/output/Golden.CprResult.Test/golden.ir +++ b/test/ps/output/Golden.CprResult.Test/golden.ir @@ -35,6 +35,58 @@ UberModule [ 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$524" ) :| [ ParamNamed Nothing ( Name "y$525" ) ] ) + ( PrimBinOp Nothing PrimSub + ( Ref Nothing ( Local ( Name "x$524" ) ) ) + ( Ref Nothing ( Local ( Name "y$525" ) ) ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$521" ) :| [] ) + ( 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$521" ) ) :| [] ) :| [] + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "logShow1" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$518" ) :| [] ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( 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 "a$518" ) ) ) :| [] + ) + ) + ( 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 "a$518" ) ) ) :| [] + ) + ) + ( LiteralString Nothing ")" ) + ) + ) + ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.CprResult.Test", qnameName = Name "step" }, AbsN Nothing @@ -245,7 +297,7 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "n" ) :| [] ) ( LetValues Nothing - ( ParamNamed Nothing ( Name "$v585" ) :| [ ParamNamed Nothing ( Name "$v586" ) ] ) + ( ParamNamed Nothing ( Name "$v595" ) :| [ ParamNamed Nothing ( Name "$v596" ) ] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) @@ -253,8 +305,8 @@ UberModule ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$v585" ) ) ) - ( Ref Nothing ( Local ( Name "$v586" ) ) ) + ( Ref Nothing ( Local ( Name "$v595" ) ) ) + ( Ref Nothing ( Local ( Name "$v596" ) ) ) ) ) ), Standalone @@ -401,14 +453,14 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "n" ) :| [] ) ( LetValues Nothing - ( ParamNamed Nothing ( Name "$v587" ) :| [ ParamNamed Nothing ( Name "$v588" ) ] ) + ( ParamNamed Nothing ( Name "$v597" ) :| [ ParamNamed Nothing ( Name "$v598" ) ] ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "big$r" ) ) ) ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v587" ) ) ) - ( Ref Nothing ( Local ( Name "$v588" ) ) ) + ( Ref Nothing ( Local ( Name "$v597" ) ) ) + ( Ref Nothing ( Local ( Name "$v598" ) ) ) ) ) ) @@ -444,72 +496,49 @@ UberModule ( 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" ) ) ) - ( LiteralInt Nothing 16 :| [] ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow" ) ) ) + ( LiteralInt Nothing 16 :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) :| [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( 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 - ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "pair" ) ) - ) :| [] - ) - ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing " " ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing - ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "pair" ) ) - ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) - ) - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow1" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "pair" ) ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), 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" ) ) ) - ( LetValues Nothing - ( ParamNamed Nothing - ( Name "$v589" ) :| - [ ParamNamed Nothing ( Name "$v590" ) ] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow" ) ) + ) + ( LetValues Nothing + ( ParamNamed Nothing + ( Name "$v599" ) :| + [ ParamNamed Nothing ( Name "$v600" ) ] + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) - ) - ( LiteralInt Nothing 7 :| [] ) + ( LiteralInt Nothing 7 :| [] ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "sub$w" ) ) + ) + ( Ref Nothing + ( Local ( Name "$v599" ) ) :| + [ Ref Nothing ( Local ( Name "$v600" ) ) ] ) - ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$v589" ) ) ) - ( Ref Nothing ( Local ( Name "$v590" ) ) ) - ) :| [] ) :| [] ) ) @@ -517,24 +546,28 @@ UberModule ), 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" ) ) ) - ( LetValues Nothing - ( ParamNamed Nothing - ( Name "$v591" ) :| - [ ParamNamed Nothing ( Name "$v592" ) ] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow" ) ) + ) + ( LetValues Nothing + ( ParamNamed Nothing + ( Name "$v601" ) :| + [ ParamNamed Nothing ( Name "$v602" ) ] + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "branchy$r" ) ) - ) - ( LiteralInt Nothing ( -7 ) :| [] ) + ( LiteralInt Nothing ( -7 ) :| [] ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "sub$w" ) ) + ) + ( Ref Nothing + ( Local ( Name "$v601" ) ) :| + [ Ref Nothing ( Local ( Name "$v602" ) ) ] ) - ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$v591" ) ) ) - ( Ref Nothing ( Local ( Name "$v592" ) ) ) - ) :| [] ) :| [] ) ) @@ -542,43 +575,11 @@ UberModule ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( 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 - ( Imported - ( ModuleName "Golden.CprResult.Test" ) - ( Name "keepBranchy" ) - ) - ) :| [] - ) - ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing " " ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) - ) - ( DataArgumentByIndex Nothing ProductType 1 - ( Ref Nothing - ( Imported - ( ModuleName "Golden.CprResult.Test" ) - ( Name "keepBranchy" ) - ) - ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) - ) - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow1" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "keepBranchy" ) ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -587,24 +588,20 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( LetValues Nothing - ( ParamNamed Nothing - ( Name "$v593" ) :| - [ ParamNamed Nothing ( Name "$v594" ) ] - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "big$r" ) ) - ) - ( LiteralInt Nothing 3 :| [] ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "logShow" ) ) + ) + ( LetValues Nothing + ( ParamNamed Nothing ( Name "$v603" ) :| [ ParamNamed Nothing ( Name "$v604" ) ] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.CprResult.Test" ) ( Name "big$r" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v593" ) ) ) - ( Ref Nothing ( Local ( Name "$v594" ) ) ) - ) :| [] + ( LiteralInt Nothing 3 :| [] ) + ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "$v603" ) ) ) + ( Ref Nothing ( Local ( Name "$v604" ) ) ) ) :| [] ) ) diff --git a/test/ps/output/Golden.CprResult.Test/golden.lua b/test/ps/output/Golden.CprResult.Test/golden.lua index 792f5c67..a46fc22f 100644 --- a/test/ps/output/Golden.CprResult.Test/golden.lua +++ b/test/ps/output/Golden.CprResult.Test/golden.lua @@ -8,6 +8,15 @@ 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_524, y_S_525) + return x_S_524 - y_S_525 +end +local Golden_CprResult_Test_logShow = function(a_S_521) + return Effect_Console_log(Data_Show_showIntImpl(a_S_521)) +end +local Golden_CprResult_Test_logShow1 = function(a_S_518) + return Effect_Console_log("(Tuple " .. Data_Show_showIntImpl(a_S_518[1]) .. " " .. Data_Show_showIntImpl(a_S_518[2]) .. ")") +end M.Golden_CprResult_Test_step = function(s) return Data_Tuple_Tuple_S_w(s * 2, s + 1) end @@ -40,8 +49,8 @@ local Golden_CprResult_Test_branchy = function(branchy_S_p1) end local Golden_CprResult_Test_keepBranchy = Golden_CprResult_Test_branchy(3) M.Golden_CprResult_Test_useBranchy = function(n) - local _S_v585, _S_v586 = Golden_CprResult_Test_branchy_S_r(n) - return _S_v585 - _S_v586 + local _S_v595, _S_v596 = Golden_CprResult_Test_branchy_S_r(n) + return _S_v595 - _S_v596 end local Golden_CprResult_Test_big_S_r = function(n) local a1 = n + 1 @@ -66,23 +75,23 @@ M.Golden_CprResult_Test_big = function(big_S_p1) return { big_S_v1, big_S_v2 } end M.Golden_CprResult_Test_useBig = function(n) - local _S_v587, _S_v588 = Golden_CprResult_Test_big_S_r(n) - return _S_v587 + _S_v588 + local _S_v597, _S_v598 = Golden_CprResult_Test_big_S_r(n) + return _S_v597 + _S_v598 end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(16))() - local _ = Effect_Console_log("(Tuple " .. Data_Show_showIntImpl(Golden_CprResult_Test_pair[1]) .. " " .. Data_Show_showIntImpl(Golden_CprResult_Test_pair[2]) .. ")")() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - local _S_v589, _S_v590 = Golden_CprResult_Test_branchy_S_r(7) - return _S_v589 - _S_v590 - end)()))() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - local _S_v591, _S_v592 = Golden_CprResult_Test_branchy_S_r(-7) - return _S_v591 - _S_v592 - end)()))() - local _ = Effect_Console_log("(Tuple " .. Data_Show_showIntImpl(Golden_CprResult_Test_keepBranchy[1]) .. " " .. Data_Show_showIntImpl(Golden_CprResult_Test_keepBranchy[2]) .. ")")() - return Effect_Console_log(Data_Show_showIntImpl((function() - local _S_v593, _S_v594 = Golden_CprResult_Test_big_S_r(3) - return _S_v593 + _S_v594 - end)()))() + local _ = Golden_CprResult_Test_logShow(16)() + local _ = Golden_CprResult_Test_logShow1(Golden_CprResult_Test_pair)() + local _ = Golden_CprResult_Test_logShow((function() + local _S_v599, _S_v600 = Golden_CprResult_Test_branchy_S_r(7) + return Golden_CprResult_Test_sub_S_w(_S_v599, _S_v600) + end)())() + local _ = Golden_CprResult_Test_logShow((function() + local _S_v601, _S_v602 = Golden_CprResult_Test_branchy_S_r(-7) + return Golden_CprResult_Test_sub_S_w(_S_v601, _S_v602) + end)())() + local _ = Golden_CprResult_Test_logShow1(Golden_CprResult_Test_keepBranchy)() + return Golden_CprResult_Test_logShow((function() + local _S_v603, _S_v604 = Golden_CprResult_Test_big_S_r(3) + return _S_v603 + _S_v604 + end)())() end)() diff --git a/test/ps/output/Golden.DerivedFunctor.Test/golden.ir b/test/ps/output/Golden.DerivedFunctor.Test/golden.ir index 6f937cb8..948e44d1 100644 --- a/test/ps/output/Golden.DerivedFunctor.Test/golden.ir +++ b/test/ps/output/Golden.DerivedFunctor.Test/golden.ir @@ -25,6 +25,11 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "log" ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Functor", qnameName = Name "map" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "map" ) ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "Leaf" }, Ctor Nothing SumType @@ -79,20 +84,20 @@ UberModule ( ParamNamed Nothing ( Name "v" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse250", ReflectCtor Nothing + ( Nothing, Name "$cse261", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Tree.Leaf" ) - ( Ref Nothing ( Local ( Name "$cse250" ) ) ) + ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Tree.Node" ) - ( Ref Nothing ( Local ( Name "$cse250" ) ) ) + ( Ref Nothing ( Local ( Name "$cse261" ) ) ) ) ( PrimBinOp Nothing PrimAdd ( PrimBinOp Nothing PrimAdd @@ -132,7 +137,7 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse252", ObjectProp Nothing + ( Nothing, Name "$cse263", ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) @@ -144,14 +149,14 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse251", ReflectCtor Nothing + ( Nothing, Name "$cse262", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Tree.Leaf" ) - ( Ref Nothing ( Local ( Name "$cse251" ) ) ) + ( Ref Nothing ( Local ( Name "$cse262" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) @@ -159,7 +164,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Tree.Node" ) - ( Ref Nothing ( Local ( Name "$cse251" ) ) ) + ( Ref Nothing ( Local ( Name "$cse262" ) ) ) ) ( AppN Nothing ( Ref Nothing @@ -170,7 +175,7 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse252" ) ) ) + ( Ref Nothing ( Local ( Name "$cse263" ) ) ) ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) ) ( DataArgumentByIndex Nothing SumType 0 @@ -182,7 +187,7 @@ UberModule ( Ref Nothing ( Local ( Name "m" ) ) ) :| [] ), AppN Nothing ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse252" ) ) ) + ( Ref Nothing ( Local ( Name "$cse263" ) ) ) ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) ) ( DataArgumentByIndex Nothing SumType 2 @@ -211,31 +216,31 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse254", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse265", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse253", ReflectCtor Nothing + ( Nothing, Name "$cse264", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Left" ) - ( Ref Nothing ( Local ( Name "$cse253" ) ) ) + ( Ref Nothing ( Local ( Name "$cse264" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Golden.DerivedFunctor.Test" ) ( TyName "Either" ) ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse254" ) ) ] + [ Ref Nothing ( Local ( Name "$cse265" ) ) ] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Right" ) - ( Ref Nothing ( Local ( Name "$cse253" ) ) ) + ( Ref Nothing ( Local ( Name "$cse264" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Golden.DerivedFunctor.Test" ) @@ -243,7 +248,7 @@ UberModule ( CtorName "Right" ) [ AppN Nothing ( Ref Nothing ( Local ( Name "f" ) ) ) - ( Ref Nothing ( Local ( Name "$cse254" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse265" ) ) :| [] ) ] ) ( Exception Nothing "No patterns matched" ) @@ -255,26 +260,34 @@ UberModule ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "map1" + }, AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "map" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "functorEither" ) ) :| [] + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.DerivedFunctor.Test", qnameName = Name "fromRight$w" }, AbsN Nothing ( ParamNamed Nothing ( Name "fallback" ) :| [ ParamNamed Nothing ( Name "v" ) ] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse255", ReflectCtor Nothing + ( Nothing, Name "$cse266", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Left" ) - ( Ref Nothing ( Local ( Name "$cse255" ) ) ) + ( Ref Nothing ( Local ( Name "$cse266" ) ) ) ) ( Ref Nothing ( Local ( Name "fallback" ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.DerivedFunctor.Test∷Either.Right" ) - ( Ref Nothing ( Local ( Name "$cse255" ) ) ) + ( Ref Nothing ( Local ( Name "$cse266" ) ) ) ) ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v" ) ) ) ) ( Exception Nothing "No patterns matched" ) @@ -336,32 +349,16 @@ UberModule ( ParamUnused Nothing :| [] ) ( 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 "Golden.DerivedFunctor.Test" ) - ( Name "fromRight$w" ) - ) - ) - ( LiteralInt Nothing 0 :| - [ Ctor Nothing SumType - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( TyName "Either" ) - ( CtorName "Right" ) - [ LiteralInt Nothing 42 ] - ] - ) :| [] - ) :| [] - ) + ( Nothing, Name "$cse267", AbsN Nothing + ( ParamNamed Nothing ( Name "v$0" ) :| [] ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "v$0" ) ) ) + ( LiteralInt Nothing 1 ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone + ) :| [] + ) + ( Let Nothing + ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) @@ -374,67 +371,104 @@ UberModule ( Name "fromRight$w" ) ) ) - ( LiteralInt Nothing 7 :| - [ Ctor Nothing SumType - ( ModuleName "Golden.DerivedFunctor.Test" ) - ( TyName "Either" ) - ( CtorName "Left" ) - [ LiteralString Nothing "no" ] + ( LiteralInt Nothing 0 :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( Name "map1" ) + ) + ) + ( Ref Nothing ( Local ( Name "$cse267" ) ) :| [] ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Either" ) + ( CtorName "Right" ) + [ LiteralInt Nothing 41 ] :| [] + ) ] ) :| [] ) :| [] ) ) ( 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" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "sumTree" ) ) - ) + ) :| + [ Standalone + ( 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 "showIntImpl" ) ) + ) + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) - ( Name "functorTree" ) + ( Name "fromRight$w" ) ) ) - ( PropName "map" ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v1$2" ) :| [] ) - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "v1$2" ) ) ) - ( LiteralInt Nothing 2 ) + ( LiteralInt Nothing 7 :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( Name "map1" ) + ) + ) + ( Ref Nothing ( Local ( Name "$cse267" ) ) :| [] ) + ) + ( Ctor Nothing SumType + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( TyName "Either" ) + ( CtorName "Left" ) + [ LiteralString Nothing "no" ] :| [] + ) + ] ) :| [] - ) + ) :| [] + ) + ) + ( 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" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "sumTree" ) ) ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Node$w" ) ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.DerivedFunctor.Test" ) + ( Name "functorTree" ) + ) + ) + ( PropName "map" ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v1$2" ) :| [] ) + ( PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "v1$2" ) ) ) + ( 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 1, Ref Nothing - ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) - ] - ) :| - [ LiteralInt Nothing 2, AppN Nothing + ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.DerivedFunctor.Test" ) @@ -446,21 +480,41 @@ UberModule ( ModuleName "Golden.DerivedFunctor.Test" ) ( Name "Leaf" ) ) :| - [ LiteralInt Nothing 3, Ref Nothing + [ 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" ) + ) + ] + ) + ] + ) :| [] ) :| [] ) :| [] ) :| [] - ) :| [] + ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ), diff --git a/test/ps/output/Golden.DerivedFunctor.Test/golden.lua b/test/ps/output/Golden.DerivedFunctor.Test/golden.lua index bd8c5440..c9ffab39 100644 --- a/test/ps/output/Golden.DerivedFunctor.Test/golden.lua +++ b/test/ps/output/Golden.DerivedFunctor.Test/golden.lua @@ -5,6 +5,7 @@ local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log +local Data_Functor_map = function(dict) return dict.map end local Golden_DerivedFunctor_Test_Leaf = { "Golden.DerivedFunctor.Test∷Tree.Leaf" } @@ -19,10 +20,10 @@ M.Golden_DerivedFunctor_Test_Right = function(value0) end local Golden_DerivedFunctor_Test_sumTree Golden_DerivedFunctor_Test_sumTree = function(v) - local _S_cse250 = v[1] - if "Golden.DerivedFunctor.Test∷Tree.Leaf" == _S_cse250 then + local _S_cse261 = v[1] + if "Golden.DerivedFunctor.Test∷Tree.Leaf" == _S_cse261 then return 0 - elseif "Golden.DerivedFunctor.Test∷Tree.Node" == _S_cse250 then + elseif "Golden.DerivedFunctor.Test∷Tree.Node" == _S_cse261 then return Golden_DerivedFunctor_Test_sumTree(v[2]) + v[3] + Golden_DerivedFunctor_Test_sumTree(v[4]) else return error("No patterns matched") @@ -32,52 +33,54 @@ local Golden_DerivedFunctor_Test_functorTree Golden_DerivedFunctor_Test_functorTree = { map = function(f) return function(m) - local _S_cse252 = Golden_DerivedFunctor_Test_functorTree.map - local _S_cse251 = m[1] - if "Golden.DerivedFunctor.Test∷Tree.Leaf" == _S_cse251 then + local _S_cse263 = Golden_DerivedFunctor_Test_functorTree.map + local _S_cse262 = m[1] + if "Golden.DerivedFunctor.Test∷Tree.Leaf" == _S_cse262 then return Golden_DerivedFunctor_Test_Leaf - elseif "Golden.DerivedFunctor.Test∷Tree.Node" == _S_cse251 then - return Golden_DerivedFunctor_Test_Node_S_w(_S_cse252(f)(m[2]), f(m[3]), _S_cse252(f)(m[4])) + elseif "Golden.DerivedFunctor.Test∷Tree.Node" == _S_cse262 then + return Golden_DerivedFunctor_Test_Node_S_w(_S_cse263(f)(m[2]), f(m[3]), _S_cse263(f)(m[4])) else return error("No patterns matched") end end end } -M.Golden_DerivedFunctor_Test_functorEither = { +local Golden_DerivedFunctor_Test_functorEither = { map = function(f) return function(m) - local _S_cse254 = m[2] - local _S_cse253 = m[1] - if "Golden.DerivedFunctor.Test∷Either.Left" == _S_cse253 then - return { "Golden.DerivedFunctor.Test∷Either.Left", _S_cse254 } - elseif "Golden.DerivedFunctor.Test∷Either.Right" == _S_cse253 then - return { "Golden.DerivedFunctor.Test∷Either.Right", (f(_S_cse254)) } + local _S_cse265 = m[2] + local _S_cse264 = m[1] + if "Golden.DerivedFunctor.Test∷Either.Left" == _S_cse264 then + return { "Golden.DerivedFunctor.Test∷Either.Left", _S_cse265 } + elseif "Golden.DerivedFunctor.Test∷Either.Right" == _S_cse264 then + return { "Golden.DerivedFunctor.Test∷Either.Right", (f(_S_cse265)) } else return error("No patterns matched") end end end } +local Golden_DerivedFunctor_Test_map1 = Data_Functor_map(Golden_DerivedFunctor_Test_functorEither) local Golden_DerivedFunctor_Test_fromRight_S_w = function(fallback, v) - local _S_cse255 = v[1] - if "Golden.DerivedFunctor.Test∷Either.Left" == _S_cse255 then + local _S_cse266 = v[1] + if "Golden.DerivedFunctor.Test∷Either.Left" == _S_cse266 then return fallback - elseif "Golden.DerivedFunctor.Test∷Either.Right" == _S_cse255 then + elseif "Golden.DerivedFunctor.Test∷Either.Right" == _S_cse266 then return v[2] else return error("No patterns matched") end end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(0, { + local _S_cse267 = function(v_S_0) return v_S_0 + 1 end + local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(0, Golden_DerivedFunctor_Test_map1(_S_cse267)({ "Golden.DerivedFunctor.Test∷Either.Right", - 42 - })))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(7, { + 41 + }))))() + local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_fromRight_S_w(7, Golden_DerivedFunctor_Test_map1(_S_cse267)({ "Golden.DerivedFunctor.Test∷Either.Left", "no" - })))() + }))))() return Effect_Console_log(Data_Show_showIntImpl(Golden_DerivedFunctor_Test_sumTree(Golden_DerivedFunctor_Test_functorTree.map(function( v1_S_2 ) return v1_S_2 * 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))))))() diff --git a/test/ps/output/Golden.EffectPureChain.Test/golden.ir b/test/ps/output/Golden.EffectPureChain.Test/golden.ir index 8c8ab330..284f8d85 100644 --- a/test/ps/output/Golden.EffectPureChain.Test/golden.ir +++ b/test/ps/output/Golden.EffectPureChain.Test/golden.ir @@ -25,62 +25,90 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) ( PropName "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.Show", qnameName = Name "show" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "show" ) ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.EffectPureChain.Test", qnameName = Name "show" }, Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ), Standalone ( QName - { qnameModuleName = ModuleName "Golden.EffectPureChain.Test", qnameName = Name "count" + { qnameModuleName = ModuleName "Golden.EffectPureChain.Test", qnameName = Name "count$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "n" ) :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone + ( ParamNamed Nothing ( Name "n" ) :| [ ParamUnused Nothing ] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "counting from " ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.EffectPureChain.Test" ) ( Name "show" ) ) + ) + ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| + [ Standalone + ( Nothing, Name "x", PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "n" ) ) ) + ( LiteralInt Nothing 1 ) + ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "counting from " ) + ( LiteralString Nothing "got " ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.EffectPureChain.Test" ) ( Name "show" ) ) ) - ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "x", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "n" ) ) ) - ( LiteralInt Nothing 1 ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "got " ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.EffectPureChain.Test" ) ( Name "show" ) ) - ) - ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) - ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) - ] - ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x" ) ) ) - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "x" ) ) ) - ( LiteralInt Nothing 2 ) ) + ] + ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x" ) ) ) + ( PrimBinOp Nothing PrimMul + ( Ref Nothing ( Local ( Name "x" ) ) ) + ( LiteralInt Nothing 2 ) + ) + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.EffectPureChain.Test", qnameName = Name "count" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "count$p1" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "count$p2" ) :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.EffectPureChain.Test" ) ( Name "count$w" ) ) + ) + ( Ref Nothing + ( Local ( Name "count$p1" ) ) :| + [ Ref Nothing ( Local ( Name "count$p2" ) ) ] ) ) ) @@ -95,67 +123,22 @@ UberModule ( Let Nothing ( Standalone ( Nothing, Name "total$0", AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "counting from " ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.EffectPureChain.Test" ) - ( Name "show" ) - ) - ) - ( LiteralInt Nothing 20 :| [] ) - ) :| [] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) :| - [ Standalone - ( Nothing, Name "x$226", LiteralInt Nothing 21 ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) - ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "got " ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.EffectPureChain.Test" ) - ( Name "show" ) - ) - ) - ( Ref Nothing ( Local ( Name "x$226" ) ) :| [] ) - ) :| [] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ] - ) - ( LiteralInt Nothing 63 ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.EffectPureChain.Test" ) ( Name "count$w" ) ) + ) + ( LiteralInt Nothing 20 :| + [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] ) - ( 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" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "show" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| [] ) + ) ( Ref Nothing ( Local ( Name "total$0" ) ) :| [] ) :| [] ) ) diff --git a/test/ps/output/Golden.EffectPureChain.Test/golden.lua b/test/ps/output/Golden.EffectPureChain.Test/golden.lua index 3c53c39b..57cd2566 100644 --- a/test/ps/output/Golden.EffectPureChain.Test/golden.lua +++ b/test/ps/output/Golden.EffectPureChain.Test/golden.lua @@ -5,21 +5,21 @@ 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 Golden_EffectPureChain_Test_show = Data_Show_showIntImpl -M.Golden_EffectPureChain_Test_count = function(n) - return function() - local _ = Effect_Console_log("counting from " .. Golden_EffectPureChain_Test_show(n))() - local x = n + 1 - local _ = Effect_Console_log("got " .. Golden_EffectPureChain_Test_show(x))() - return x + x * 2 +local Golden_EffectPureChain_Test_count_S_w = function(n) + local _ = Effect_Console_log("counting from " .. Golden_EffectPureChain_Test_show(n))() + local x = n + 1 + local _ = Effect_Console_log("got " .. Golden_EffectPureChain_Test_show(x))() + return x + x * 2 +end +M.Golden_EffectPureChain_Test_count = function(count_S_p1) + return function(count_S_p2) + return Golden_EffectPureChain_Test_count_S_w(count_S_p1, count_S_p2) end end return (function() - local total_S_0 = (function() - local _ = Effect_Console_log("counting from " .. Golden_EffectPureChain_Test_show(20))() - local x_S_226 = 21 - local _ = Effect_Console_log("got " .. Golden_EffectPureChain_Test_show(x_S_226))() - return 63 - end)() - return Effect_Console_log(Data_Show_showIntImpl(total_S_0))() + local total_S_0 = Golden_EffectPureChain_Test_count_S_w(20) + return Effect_Console_log(Data_Show_show(Data_Show_showInt)(total_S_0))() end)() diff --git a/test/ps/output/Golden.FieldCaching.Test/golden.ir b/test/ps/output/Golden.FieldCaching.Test/golden.ir index 726124a9..aeb76146 100644 --- a/test/ps/output/Golden.FieldCaching.Test/golden.ir +++ b/test/ps/output/Golden.FieldCaching.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 "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -20,10 +14,22 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) + { qnameModuleName = ModuleName "Golden.FieldCaching.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "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.FieldCaching.Test", qnameName = Name "weigh" @@ -204,23 +210,14 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 1 :| [] ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 2 :| [] ) - ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "pair" ) ) + ) + ( LiteralInt Nothing 1 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -228,53 +225,42 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 10 :| [] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "single" ) ) + ) + ( LiteralInt Nothing 10 :| [] ) :| [] ) ) ( 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.FieldCaching.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "sumLoop$w" ) ) - ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 4 ] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "sumLoop$w" ) ) + ) + ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 4 ] ) :| [] ) ) ( 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.FieldCaching.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 4 :| [] ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 3 :| [] ) - ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "fibby" ) ) + ) + ( LiteralInt Nothing 5 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -283,31 +269,14 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "apply2" ) ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "y$264" ) :| [] ) - ( PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( LiteralInt Nothing 5 :| [] ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "weigh" ) ) - ) - ( Ref Nothing ( Local ( Name "y$264" ) ) :| [] ) - ) - ) :| [] - ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.FieldCaching.Test" ) ( Name "closed" ) ) + ) + ( LiteralInt Nothing 5 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.FieldCaching.Test/golden.lua b/test/ps/output/Golden.FieldCaching.Test/golden.lua index 91972266..b563710a 100644 --- a/test/ps/output/Golden.FieldCaching.Test/golden.lua +++ b/test/ps/output/Golden.FieldCaching.Test/golden.lua @@ -1,10 +1,11 @@ local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Effect_Console_log = Effect_Console_foreign.log +local Golden_FieldCaching_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(a_S_2)) +end local Golden_FieldCaching_Test_weigh = function(x) return x * 2 + 1 end local Golden_FieldCaching_Test_sumLoop_S_w = function(acc, n) while true do @@ -20,13 +21,13 @@ M.Golden_FieldCaching_Test_sumLoop = function(sumLoop_S_p1) return Golden_FieldCaching_Test_sumLoop_S_w(sumLoop_S_p1, sumLoop_S_p2) end end -M.Golden_FieldCaching_Test_single = function(n) +local Golden_FieldCaching_Test_single = function(n) return Golden_FieldCaching_Test_weigh(n) end -M.Golden_FieldCaching_Test_pair = function(n) +local Golden_FieldCaching_Test_pair = function(n) return Golden_FieldCaching_Test_weigh(n) + Golden_FieldCaching_Test_weigh(n + 1) end -M.Golden_FieldCaching_Test_fibby = function(n) +local Golden_FieldCaching_Test_fibby = function(n) if n < 2 then return n else @@ -34,17 +35,15 @@ M.Golden_FieldCaching_Test_fibby = function(n) end end local Golden_FieldCaching_Test_apply2 = function(f) return f(2) end -M.Golden_FieldCaching_Test_closed = function(x) +local Golden_FieldCaching_Test_closed = function(x) return Golden_FieldCaching_Test_apply2(function(y) return Golden_FieldCaching_Test_weigh(x) + Golden_FieldCaching_Test_weigh(y) end) end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FieldCaching_Test_weigh(1) + Golden_FieldCaching_Test_weigh(2)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FieldCaching_Test_weigh(10)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FieldCaching_Test_sumLoop_S_w(0, 4)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_FieldCaching_Test_weigh(4) + Golden_FieldCaching_Test_weigh(3)))() - return Effect_Console_log(Data_Show_showIntImpl(Golden_FieldCaching_Test_apply2(function( y_S_264 ) - return Golden_FieldCaching_Test_weigh(5) + Golden_FieldCaching_Test_weigh(y_S_264) - end)))() + local _ = Golden_FieldCaching_Test_logShow(Golden_FieldCaching_Test_pair(1))() + local _ = Golden_FieldCaching_Test_logShow(Golden_FieldCaching_Test_single(10))() + local _ = Golden_FieldCaching_Test_logShow(Golden_FieldCaching_Test_sumLoop_S_w(0, 4))() + local _ = Golden_FieldCaching_Test_logShow(Golden_FieldCaching_Test_fibby(5))() + return Golden_FieldCaching_Test_logShow(Golden_FieldCaching_Test_closed(5))() end)() diff --git a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir index 48e6b1ca..a2bdb0b2 100644 --- a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir +++ b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.ir @@ -13,12 +13,6 @@ 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 "Type.Proxy", qnameName = Name "Proxy" }, Ctor Nothing ProductType @@ -206,6 +200,56 @@ UberModule ( TyName "NoArguments" ) ( CtorName "NoArguments" ) [] ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Eq.Generic", qnameName = Name "genericEqArgument" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictEq" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "genericEq'", AbsN Nothing + ( ParamNamed Nothing ( Name "v" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v1" ) :| [] ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictEq" ) ) ) + ( PropName "eq" ) + ) + ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) + ) + ( Ref Nothing ( Local ( Name "v1" ) ) :| [] ) + ) + ) + ) + ] + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Eq.Generic", qnameName = Name "genericEqConstructor" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictGenericEq" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "genericEq'", AbsN Nothing + ( ParamNamed Nothing ( Name "v" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v1" ) :| [] ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictGenericEq" ) ) ) + ( PropName "genericEq'" ) + ) + ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) + ) + ( Ref Nothing ( Local ( Name "v1" ) ) :| [] ) + ) + ) + ) + ] + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Eq.Generic", qnameName = Name "genericEq$w" }, AbsN Nothing @@ -219,7 +263,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse303", ObjectProp Nothing + ( Nothing, Name "$cse449", ObjectProp Nothing ( Ref Nothing ( Local ( Name "dictGeneric" ) ) ) ( PropName "from" ) ) :| [] @@ -231,17 +275,145 @@ UberModule ( PropName "genericEq'" ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse303" ) ) ) + ( Ref Nothing ( Local ( Name "$cse449" ) ) ) ( Ref Nothing ( Local ( Name "x" ) ) :| [] ) :| [] ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse303" ) ) ) + ( Ref Nothing ( Local ( Name "$cse449" ) ) ) ( Ref Nothing ( Local ( Name "y" ) ) :| [] ) :| [] ) ) ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "genericEqSum" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictGenericEq1$5" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "genericEq'", AbsN Nothing + ( ParamNamed Nothing ( Name "v$7" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v1$8" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse451", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v1$8" ) ) ) + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse450", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v$7" ) ) ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) + ( Ref Nothing ( Local ( Name "$cse450" ) ) ) + ) + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) + ( Ref Nothing ( Local ( Name "$cse451" ) ) ) + ) + ( PrimBinOp Nothing PrimAnd + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) + ( Ref Nothing ( Local ( Name "$cse450" ) ) ) + ) + ( PrimBinOp Nothing PrimAnd + ( Eq Nothing + ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) + ( Ref Nothing ( Local ( Name "$cse451" ) ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictGenericEq1$5" ) ) ) + ( PropName "genericEq'" ) + ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v$7" ) ) ) :| [] + ) + ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1$8" ) ) ) :| [] + ) + ) + ) + ) + ) + ) + ) + ) + ) + ] + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "eqRec" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictEqRecord$221" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "eq", AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictEqRecord$221" ) ) ) + ( PropName "eqRecord" ) + ) + ( Ref Nothing ( Imported ( ModuleName "Type.Proxy" ) ( Name "Proxy" ) ) :| [] ) + ) + ] + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "eqRowCons$w" + }, AbsN Nothing + ( ParamNamed Nothing + ( Name "eqRowCons$p3$233" ) :| + [ ParamNamed Nothing ( Name "eqRowCons$p4$234" ) ] + ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Eq" ) ( Name "eqRowCons$w" ) ) ) + ( LiteralObject Nothing + [ + ( PropName "eqRecord", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AbsN Nothing ( ParamUnused Nothing :| [] ) ( LiteralBool Nothing True ) ) + ) + ) + ] :| + [ Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ), Ref Nothing + ( Local ( Name "eqRowCons$p3$233" ) ), Ref Nothing + ( Local ( Name "eqRowCons$p4$234" ) ) + ] + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ) + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "a$2" ) ) ) + ( LiteralString Nothing "true" ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralBool Nothing False ) ( Ref Nothing ( Local ( Name "a$2" ) ) ) ) + ( LiteralString Nothing "false" ) + ( Exception Nothing "No patterns matched" ) + ) :| [] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.GenericEqTwoTypes.Test", qnameName = Name "Leaf" }, Ctor Nothing SumType @@ -306,14 +478,14 @@ UberModule ( ParamNamed Nothing ( Name "x" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse304", ReflectCtor Nothing + ( Nothing, Name "$cse452", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse304" ) ) ) + ( Ref Nothing ( Local ( Name "$cse452" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) @@ -321,7 +493,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse304" ) ) ) + ( Ref Nothing ( Local ( Name "$cse452" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Golden.GenericEqTwoTypes.Test" ) @@ -338,14 +510,14 @@ UberModule ( ParamNamed Nothing ( Name "x0" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse305", ReflectCtor Nothing + ( Nothing, Name "$cse453", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x0" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.GenericEqTwoTypes.Test∷Tree.Leaf" ) - ( Ref Nothing ( Local ( Name "$cse305" ) ) ) + ( Ref Nothing ( Local ( Name "$cse453" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -358,7 +530,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.GenericEqTwoTypes.Test∷Tree.Node" ) - ( Ref Nothing ( Local ( Name "$cse305" ) ) ) + ( Ref Nothing ( Local ( Name "$cse453" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -383,14 +555,14 @@ UberModule ( ParamNamed Nothing ( Name "x" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse306", ReflectCtor Nothing + ( Nothing, Name "$cse454", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse306" ) ) ) + ( Ref Nothing ( Local ( Name "$cse454" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Nil" ) ) @@ -398,7 +570,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse306" ) ) ) + ( Ref Nothing ( Local ( Name "$cse454" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Golden.GenericEqTwoTypes.Test" ) @@ -415,14 +587,14 @@ UberModule ( ParamNamed Nothing ( Name "x0" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse307", ReflectCtor Nothing + ( Nothing, Name "$cse455", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "x0" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.GenericEqTwoTypes.Test∷List.Nil" ) - ( Ref Nothing ( Local ( Name "$cse307" ) ) ) + ( Ref Nothing ( Local ( Name "$cse455" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -435,7 +607,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.GenericEqTwoTypes.Test∷List.Cons" ) - ( Ref Nothing ( Local ( Name "$cse307" ) ) ) + ( Ref Nothing ( Local ( Name "$cse455" ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Generic.Rep" ) @@ -472,164 +644,102 @@ UberModule ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "genericTree" ) ) :| - [ LiteralObject Nothing - [ - ( PropName "genericEq'", AbsN Nothing - ( ParamNamed Nothing ( Name "v$272" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v1$273" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse309", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v1$273" ) ) ) - ) :| [] + [ AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "genericEqSum" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.Eq.Generic" ) + ( Name "genericEqConstructor" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.Eq.Generic" ) + ( Name "genericEqArgument" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqRec" ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse308", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$272" ) ) ) - ) :| [] + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Eq" ) ( Name "eqRowCons$w" ) ) + ) + ( 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 "$cse308" ) ) ) - ) - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse309" ) ) ) - ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse308" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqRowCons$w" ) ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse309" ) ) ) + ) + ( LiteralObject Nothing + [ + ( PropName "reflectSymbol", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralString Nothing "value" ) + ) + ] :| + [ Ref Nothing ( Local ( Name "dictEq" ) ) ] + ) :| + [ Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ), LiteralObject Nothing + [ + ( PropName "reflectSymbol", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralString Nothing "right" ) ) - ( AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) - ) - ) - ( LiteralObject Nothing - [ - ( PropName "eqRecord", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) ( LiteralBool Nothing True ) - ) - ) - ) - ] :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "value" ) - ) - ], Ref Nothing - ( Local ( Name "dictEq" ) ) - ] - ) :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "right" ) - ) - ], AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "eqTree" ) - ) - ) - ( Ref Nothing - ( Local ( Name "dictEq" ) ) :| [] - ) - ] - ) :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "left" ) - ) - ], AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "eqTree" ) - ) - ) - ( Ref Nothing - ( Local ( Name "dictEq" ) ) :| [] - ) - ] - ) - ) - ( PropName "eqRecord" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Type.Proxy" ) - ( Name "Proxy" ) - ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$272" ) ) ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$273" ) ) ) :| [] - ) + ], AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqTree" ) ) ) + ( Ref Nothing ( Local ( Name "dictEq" ) ) :| [] ) + ] + ) :| + [ Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ), LiteralObject Nothing + [ + ( PropName "reflectSymbol", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralString Nothing "left" ) + ) + ], AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqTree" ) + ) ) - ) - ) - ) - ) - ) - ], Ref Nothing + ( Ref Nothing ( Local ( Name "dictEq" ) ) :| [] ) + ] + ) :| [] + ) :| [] + ) :| [] + ) :| [] + ), Ref Nothing ( Local ( Name "x" ) ), Ref Nothing ( Local ( Name "y" ) ) ] @@ -672,135 +782,80 @@ UberModule ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "genericList" ) ) :| - [ LiteralObject Nothing - [ - ( PropName "genericEq'", AbsN Nothing - ( ParamNamed Nothing ( Name "v$250" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v1$251" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse311", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v1$251" ) ) ) - ) :| [] + [ AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "genericEqSum" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.Eq.Generic" ) + ( Name "genericEqConstructor" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.Eq.Generic" ) + ( Name "genericEqArgument" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqRec" ) ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse310", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$250" ) ) ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse310" ) ) ) - ) - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inl" ) - ( Ref Nothing ( Local ( Name "$cse311" ) ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Eq" ) ( Name "eqRowCons$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqRowCons$w" ) ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse310" ) ) ) + ) + ( LiteralObject Nothing + [ + ( PropName "reflectSymbol", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralString Nothing "tail" ) ) - ( PrimBinOp Nothing PrimAnd - ( Eq Nothing - ( LiteralString Nothing "Data.Generic.Rep∷Sum.Inr" ) - ( Ref Nothing ( Local ( Name "$cse311" ) ) ) - ) - ( AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Eq" ) - ( Name "eqRowCons$w" ) - ) - ) - ( LiteralObject Nothing - [ - ( PropName "eqRecord", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) ( LiteralBool Nothing True ) - ) - ) - ) - ] :| - [ Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ), LiteralObject Nothing - [ - ( PropName "reflectSymbol", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( LiteralString Nothing "tail" ) - ) - ], AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.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" ) - ) - ], Ref Nothing - ( Local ( Name "dictEq" ) ) - ] - ) - ) - ( PropName "eqRecord" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Type.Proxy" ) - ( Name "Proxy" ) - ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$250" ) ) ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$251" ) ) ) :| [] - ) + ] :| + [ AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "eqList" ) ) ) - ) - ) - ) - ) - ) - ) - ], Ref Nothing + ( Ref Nothing ( Local ( Name "dictEq" ) ) :| [] ) + ] + ) :| + [ Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "undefined" ) + ), LiteralObject Nothing + [ + ( PropName "reflectSymbol", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralString Nothing "head" ) + ) + ], Ref Nothing + ( Local ( Name "dictEq" ) ) + ] + ) :| [] + ) :| [] + ) :| [] + ) :| [] + ), Ref Nothing ( Local ( Name "x" ) ), Ref Nothing ( Local ( Name "y" ) ) ] @@ -894,39 +949,14 @@ UberModule ( Let Nothing ( Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$299", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) - ) - ) - ( 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" ) - ) - ] - ) - ] - ) :| [] - ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) ) ( AppN Nothing ( Ref Nothing @@ -954,50 +984,44 @@ UberModule ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$299" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$299" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] ) - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$300", AppN Nothing - ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "cons$w" ) ) + ) + ( LiteralInt Nothing 1 :| + [ AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "cons$w" ) + ) ) - ( AppN Nothing - ( Ref Nothing + ( LiteralInt Nothing 2 :| + [ Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "cons$w" ) + ( Name "Nil" ) ) - ) - ( LiteralInt Nothing 1 :| - [ Ref Nothing - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Nil" ) - ) - ] - ) :| [] + ] ) + ] + ) :| [] + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq1" ) ) ) ( AppN Nothing ( Ref Nothing @@ -1006,7 +1030,7 @@ UberModule ( Name "cons$w" ) ) ) - ( LiteralInt Nothing 2 :| + ( LiteralInt Nothing 1 :| [ Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) @@ -1015,67 +1039,33 @@ UberModule ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$300" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$300" ) ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "cons$w" ) ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) + ) + ( LiteralInt Nothing 2 :| + [ Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Nil" ) ) + ] ) :| [] - ) + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$301", 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 - ( 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 - ( Imported - ( ModuleName "Golden.GenericEqTwoTypes.Test" ) - ( Name "Leaf" ) - ) - ] - ) - ] - ) :| [] - ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq" ) ) ) ( AppN Nothing ( Ref Nothing @@ -1111,34 +1101,6 @@ UberModule ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$301" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$301" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] - ) - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) - ] - ) - ( AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$302", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq" ) ) ) ( AppN Nothing ( Ref Nothing @@ -1152,14 +1114,43 @@ UberModule ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) :| - [ LiteralInt Nothing 1, 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 + ( Imported + ( ModuleName "Golden.GenericEqTwoTypes.Test" ) + ( Name "Leaf" ) + ) + ] ) ] ) :| [] - ) + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "eq" ) ) ) ( AppN Nothing ( Ref Nothing @@ -1170,26 +1161,23 @@ UberModule ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) :| - [ LiteralInt Nothing 2, Ref Nothing + [ LiteralInt Nothing 1, Ref Nothing ( Imported ( ModuleName "Golden.GenericEqTwoTypes.Test" ) ( Name "Leaf" ) ) ] ) :| [] ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$302" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$302" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] ) + ( 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" ) ) :| [] ) diff --git a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua index a4140ebd..a5cd974e 100644 --- a/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua +++ b/test/ps/output/Golden.GenericEqTwoTypes.Test/golden.lua @@ -5,7 +5,6 @@ local Record_Unsafe_foreign = { 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 = { @@ -46,9 +45,60 @@ local Data_Eq_eqRowCons_S_w = function( dictEqRecord } end local Data_Generic_Rep_NoArguments = {} +local Data_Eq_Generic_genericEqArgument = function(dictEq) + return { + genericEqPrime = function(v) + return function(v1) return dictEq.eq(v)(v1) end + end + } +end +local Data_Eq_Generic_genericEqConstructor = function(dictGenericEq) + return { + genericEqPrime = function(v) + return function(v1) return dictGenericEq.genericEqPrime(v)(v1) end + end + } +end local Data_Eq_Generic_genericEq_S_w = function(dictGeneric, dictGenericEq, x, y) - local _S_cse303 = dictGeneric.from - return dictGenericEq.genericEqPrime(_S_cse303(x))(_S_cse303(y)) + local _S_cse449 = dictGeneric.from + return dictGenericEq.genericEqPrime(_S_cse449(x))(_S_cse449(y)) +end +local Golden_GenericEqTwoTypes_Test_genericEqSum = function(dictGenericEq1_S_5) + return { + genericEqPrime = function(v_S_7) + return function(v1_S_8) + local _S_cse451 = v1_S_8[1] + local _S_cse450 = v_S_7[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse450 then + return "Data.Generic.Rep∷Sum.Inl" == _S_cse451 + else + return "Data.Generic.Rep∷Sum.Inr" == _S_cse450 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse451 and dictGenericEq1_S_5.genericEqPrime(v_S_7[2])(v1_S_8[2])) + end + end + end + } +end +local Golden_GenericEqTwoTypes_Test_eqRec = function(dictEqRecord_S_221) + return { eq = dictEqRecord_S_221.eqRecord(Type_Proxy_Proxy) } +end +local Golden_GenericEqTwoTypes_Test_eqRowCons_S_w = function( eqRowCons_S_p3_S_233 +, eqRowCons_S_p4_S_234 ) + return Data_Eq_eqRowCons_S_w({ + eqRecord = function() + return function() return function() return true end end + end + }, nil, eqRowCons_S_p3_S_233, eqRowCons_S_p4_S_234) +end +local Golden_GenericEqTwoTypes_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log((function() + if a_S_2 then + return "true" + elseif false == a_S_2 then + return "false" + else + return error("No patterns matched") + end + end)()) end local Golden_GenericEqTwoTypes_Test_Leaf = { "Golden.GenericEqTwoTypes.Test∷Tree.Leaf" @@ -70,20 +120,20 @@ local Golden_GenericEqTwoTypes_Test_node_S_w = function(left, value, right) end local Golden_GenericEqTwoTypes_Test_genericTree = { to = function(x) - local _S_cse304 = x[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse304 then + local _S_cse452 = x[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse452 then return Golden_GenericEqTwoTypes_Test_Leaf - elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse304 then + elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse452 then return { "Golden.GenericEqTwoTypes.Test∷Tree.Node", x[2] } else return error("No patterns matched") end end, from = function(x0) - local _S_cse305 = x0[1] - if "Golden.GenericEqTwoTypes.Test∷Tree.Leaf" == _S_cse305 then + local _S_cse453 = x0[1] + if "Golden.GenericEqTwoTypes.Test∷Tree.Leaf" == _S_cse453 then return { "Data.Generic.Rep∷Sum.Inl", Data_Generic_Rep_NoArguments } - elseif "Golden.GenericEqTwoTypes.Test∷Tree.Node" == _S_cse305 then + elseif "Golden.GenericEqTwoTypes.Test∷Tree.Node" == _S_cse453 then return { "Data.Generic.Rep∷Sum.Inr", x0[2] } else return error("No patterns matched") @@ -92,20 +142,20 @@ local Golden_GenericEqTwoTypes_Test_genericTree = { } local Golden_GenericEqTwoTypes_Test_genericList = { to = function(x) - local _S_cse306 = x[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse306 then + local _S_cse454 = x[1] + if "Data.Generic.Rep∷Sum.Inl" == _S_cse454 then return Golden_GenericEqTwoTypes_Test_Nil - elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse306 then + elseif "Data.Generic.Rep∷Sum.Inr" == _S_cse454 then return { "Golden.GenericEqTwoTypes.Test∷List.Cons", x[2] } else return error("No patterns matched") end end, from = function(x0) - local _S_cse307 = x0[1] - if "Golden.GenericEqTwoTypes.Test∷List.Nil" == _S_cse307 then + local _S_cse455 = x0[1] + if "Golden.GenericEqTwoTypes.Test∷List.Nil" == _S_cse455 then return { "Data.Generic.Rep∷Sum.Inl", Data_Generic_Rep_NoArguments } - elseif "Golden.GenericEqTwoTypes.Test∷List.Cons" == _S_cse307 then + elseif "Golden.GenericEqTwoTypes.Test∷List.Cons" == _S_cse455 then return { "Data.Generic.Rep∷Sum.Inr", x0[2] } else return error("No patterns matched") @@ -117,29 +167,13 @@ Golden_GenericEqTwoTypes_Test_eqTree = function(dictEq) return { eq = function(x) return function(y) - return Data_Eq_Generic_genericEq_S_w(Golden_GenericEqTwoTypes_Test_genericTree, { - genericEqPrime = function(v_S_272) - return function(v1_S_273) - local _S_cse309 = v1_S_273[1] - local _S_cse308 = v_S_272[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse308 then - return "Data.Generic.Rep∷Sum.Inl" == _S_cse309 - else - return "Data.Generic.Rep∷Sum.Inr" == _S_cse308 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse309 and (Data_Eq_eqRowCons_S_w(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 "value" end - }, dictEq), nil, { - reflectSymbol = function() return "right" end - }, Golden_GenericEqTwoTypes_Test_eqTree(dictEq)), nil, { - reflectSymbol = function() return "left" end - }, Golden_GenericEqTwoTypes_Test_eqTree(dictEq))).eqRecord(Type_Proxy_Proxy)(v_S_272[2])(v1_S_273[2])) - end - end - end - }, x, y) + return Data_Eq_Generic_genericEq_S_w(Golden_GenericEqTwoTypes_Test_genericTree, Golden_GenericEqTwoTypes_Test_genericEqSum(Data_Eq_Generic_genericEqConstructor(Data_Eq_Generic_genericEqArgument(Golden_GenericEqTwoTypes_Test_eqRec(Data_Eq_eqRowCons_S_w(Data_Eq_eqRowCons_S_w(Golden_GenericEqTwoTypes_Test_eqRowCons_S_w({ + reflectSymbol = function() return "value" end + }, dictEq), nil, { + reflectSymbol = function() return "right" end + }, Golden_GenericEqTwoTypes_Test_eqTree(dictEq)), nil, { + reflectSymbol = function() return "left" end + }, Golden_GenericEqTwoTypes_Test_eqTree(dictEq)))))), x, y) end end } @@ -150,27 +184,11 @@ Golden_GenericEqTwoTypes_Test_eqList = function(dictEq) return { eq = function(x) return function(y) - return Data_Eq_Generic_genericEq_S_w(Golden_GenericEqTwoTypes_Test_genericList, { - genericEqPrime = function(v_S_250) - return function(v1_S_251) - local _S_cse311 = v1_S_251[1] - local _S_cse310 = v_S_250[1] - if "Data.Generic.Rep∷Sum.Inl" == _S_cse310 then - return "Data.Generic.Rep∷Sum.Inl" == _S_cse311 - else - return "Data.Generic.Rep∷Sum.Inr" == _S_cse310 and ("Data.Generic.Rep∷Sum.Inr" == _S_cse311 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_GenericEqTwoTypes_Test_eqList(dictEq)), nil, { - reflectSymbol = function() return "head" end - }, dictEq)).eqRecord(Type_Proxy_Proxy)(v_S_250[2])(v1_S_251[2])) - end - end - end - }, x, y) + return Data_Eq_Generic_genericEq_S_w(Golden_GenericEqTwoTypes_Test_genericList, Golden_GenericEqTwoTypes_Test_genericEqSum(Data_Eq_Generic_genericEqConstructor(Data_Eq_Generic_genericEqArgument(Golden_GenericEqTwoTypes_Test_eqRec(Data_Eq_eqRowCons_S_w(Golden_GenericEqTwoTypes_Test_eqRowCons_S_w({ + reflectSymbol = function() return "tail" end + }, Golden_GenericEqTwoTypes_Test_eqList(dictEq)), nil, { + reflectSymbol = function() return "head" end + }, dictEq))))), x, y) end end } @@ -183,52 +201,8 @@ local Golden_GenericEqTwoTypes_Test_cons_S_w = function(head, tail) } end return (function() - local _ = (function() - local a_S_299 = 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))) - return Effect_Console_log((function() - if a_S_299 then - return "true" - elseif false == a_S_299 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_300 = 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)) - return Effect_Console_log((function() - if a_S_300 then - return "true" - elseif false == a_S_300 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_301 = 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))) - return Effect_Console_log((function() - if a_S_301 then - return "true" - elseif false == a_S_301 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - return (function() - local a_S_302 = 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)) - return Effect_Console_log((function() - if a_S_302 then - return "true" - elseif false == a_S_302 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() + local _ = Golden_GenericEqTwoTypes_Test_logShow(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))))() + local _ = Golden_GenericEqTwoTypes_Test_logShow(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)))() + local _ = Golden_GenericEqTwoTypes_Test_logShow(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))))() + return Golden_GenericEqTwoTypes_Test_logShow(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)))() end)() diff --git a/test/ps/output/Golden.LongApplyChain.Test/golden.ir b/test/ps/output/Golden.LongApplyChain.Test/golden.ir index 7160cb04..d27f46db 100644 --- a/test/ps/output/Golden.LongApplyChain.Test/golden.ir +++ b/test/ps/output/Golden.LongApplyChain.Test/golden.ir @@ -13,6 +13,11 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Functor", qnameName = Name "map" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "map" ) ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "Nothing" }, Ctor Nothing SumType @@ -21,46 +26,58 @@ UberModule ( CtorName "Nothing" ) [] ), Standalone ( QName - { qnameModuleName = ModuleName "Golden.LongApplyChain.Test", qnameName = Name "applySecond$w" - }, AbsN Nothing - ( ParamNamed Nothing ( Name "a$133" ) :| [ ParamNamed Nothing ( Name "b$134" ) ] ) - ( AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "v$625", IfThenElse Nothing + { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "functorMaybe" + }, LiteralObject Nothing + [ + ( PropName "map", AbsN Nothing + ( ParamNamed Nothing ( Name "v" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v1" ) :| [] ) + ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "a$133" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) ( CtorName "Just" ) - [ AbsN Nothing - ( ParamNamed Nothing ( Name "x$318" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$318" ) ) ) + [ AppN Nothing + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1" ) ) ) :| [] + ) ] ) ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) - ) :| [] + ) ) + ) + ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "applyMaybe" + }, LiteralObject Nothing + [ + ( PropName "apply", AbsN Nothing + ( ParamNamed Nothing ( Name "v" ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "v1$626" ) :| [] ) + ( ParamNamed Nothing ( Name "v1" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse646", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$625" ) ) ) + ( Nothing, Name "$cse676", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse646" ) ) ) + ( Ref Nothing ( Local ( Name "$cse676" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$626" ) ) ) ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1" ) ) ) ) ) ( Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -68,10 +85,10 @@ UberModule ( CtorName "Just" ) [ AppN Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$625" ) ) ) + ( Ref Nothing ( Local ( Name "v" ) ) ) ) ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$626" ) ) ) :| [] + ( Ref Nothing ( Local ( Name "v1" ) ) ) :| [] ) ] ) @@ -80,7 +97,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse646" ) ) ) + ( Ref Nothing ( Local ( Name "$cse676" ) ) ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) ( Exception Nothing "No patterns matched" ) @@ -88,6 +105,49 @@ UberModule ) ) ) + ), + ( PropName "Functor0", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "functorMaybe" ) ) ) + ) + ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.LongApplyChain.Test", qnameName = Name "applySecond$w" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$133" ) :| [ ParamNamed Nothing ( Name "b$134" ) ] ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "applyMaybe" ) ) ) + ( PropName "apply" ) + ) + ( AppN Nothing + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "map" ) ) ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Maybe" ) ( Name "applyMaybe" ) ) + ) + ( PropName "Functor0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) :| [] + ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "x$318" ) :| [] ) + ( Ref Nothing ( Local ( Name "x$318" ) ) ) + ) :| [] + ) + ) + ( Ref Nothing ( Local ( Name "a$133" ) ) :| [] ) :| [] + ) ) ( Ref Nothing ( Local ( Name "b$134" ) ) :| [] ) ) @@ -96,7 +156,7 @@ UberModule { qnameModuleName = ModuleName "Golden.LongApplyChain.Test", qnameName = Name "compute" }, Let Nothing ( Standalone - ( Nothing, Name "$tmp648", AppN Nothing + ( Nothing, Name "$tmp678", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -654,7 +714,7 @@ UberModule ) ) :| [ Standalone - ( Nothing, Name "$tmp649", AppN Nothing + ( Nothing, Name "$tmp679", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -930,7 +990,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp648" ) + ( Name "$tmp678" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1213,7 +1273,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$tmp650", AppN Nothing + ( Nothing, Name "$tmp680", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -1489,7 +1549,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp649" ) + ( Name "$tmp679" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -1772,7 +1832,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$tmp651", AppN Nothing + ( Nothing, Name "$tmp681", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -2048,7 +2108,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp650" ) + ( Name "$tmp680" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -2331,7 +2391,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$tmp652", AppN Nothing + ( Nothing, Name "$tmp682", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -2607,7 +2667,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp651" ) + ( Name "$tmp681" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -2890,7 +2950,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$tmp653", AppN Nothing + ( Nothing, Name "$tmp683", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -3166,7 +3226,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp652" ) + ( Name "$tmp682" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -3449,7 +3509,7 @@ UberModule ] ) ), Standalone - ( Nothing, Name "$tmp654", AppN Nothing + ( Nothing, Name "$tmp684", AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "applySecond$w" ) ) ) @@ -3725,7 +3785,7 @@ UberModule ) ( Ref Nothing ( Local - ( Name "$tmp653" ) + ( Name "$tmp683" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) @@ -4132,7 +4192,7 @@ UberModule ) ) ( Ref Nothing - ( Local ( Name "$tmp654" ) ) :| + ( Local ( Name "$tmp684" ) ) :| [ Ctor Nothing SumType ( ModuleName "Data.Maybe" ) ( TyName "Maybe" ) @@ -4275,7 +4335,7 @@ UberModule ), ( Name "main", Let Nothing ( Standalone - ( Nothing, Name "$cse647", ReflectCtor Nothing + ( Nothing, Name "$cse677", ReflectCtor Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongApplyChain.Test" ) ( Name "compute" ) ) ) @@ -4289,7 +4349,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse647" ) ) ) + ( Ref Nothing ( Local ( Name "$cse677" ) ) ) ) ( PrimBinOp Nothing PrimConcat ( LiteralString Nothing "(Just " ) @@ -4311,7 +4371,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse647" ) ) ) + ( Ref Nothing ( Local ( Name "$cse677" ) ) ) ) ( LiteralString Nothing "Nothing" ) ( Exception Nothing "No patterns matched" ) diff --git a/test/ps/output/Golden.LongApplyChain.Test/golden.lua b/test/ps/output/Golden.LongApplyChain.Test/golden.lua index 41470013..e51f0ee0 100644 --- a/test/ps/output/Golden.LongApplyChain.Test/golden.lua +++ b/test/ps/output/Golden.LongApplyChain.Test/golden.lua @@ -2,34 +2,45 @@ 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_Functor_map = function(dict) return dict.map end local Data_Maybe_Nothing = { "Data.Maybe∷Maybe.Nothing" } -local Golden_LongApplyChain_Test_applySecond_S_w = function(a_S_133, b_S_134) - return (function() - local v_S_625 = (function() - if "Data.Maybe∷Maybe.Just" == a_S_133[1] then - return { "Data.Maybe∷Maybe.Just", function(x_S_318) return x_S_318 end } +local Data_Maybe_functorMaybe = { + map = function(v) + return function(v1) + if "Data.Maybe∷Maybe.Just" == v1[1] then + return { "Data.Maybe∷Maybe.Just", (v(v1[2])) } else return Data_Maybe_Nothing end - end)() - return function(v1_S_626) - local _S_cse646 = v_S_625[1] - if "Data.Maybe∷Maybe.Just" == _S_cse646 then - if "Data.Maybe∷Maybe.Just" == v1_S_626[1] then - return { "Data.Maybe∷Maybe.Just", (v_S_625[2](v1_S_626[2])) } + end + end +} +local Data_Maybe_applyMaybe = { + apply = function(v) + return function(v1) + local _S_cse676 = v[1] + if "Data.Maybe∷Maybe.Just" == _S_cse676 then + if "Data.Maybe∷Maybe.Just" == v1[1] then + return { "Data.Maybe∷Maybe.Just", (v[2](v1[2])) } else return Data_Maybe_Nothing end - elseif "Data.Maybe∷Maybe.Nothing" == _S_cse646 then + elseif "Data.Maybe∷Maybe.Nothing" == _S_cse676 then return Data_Maybe_Nothing else return error("No patterns matched") end end - end)()(b_S_134) + end, + Functor0 = function() return Data_Maybe_functorMaybe end +} +local Golden_LongApplyChain_Test_applySecond_S_w = function(a_S_133, b_S_134) + return Data_Maybe_applyMaybe.apply(Data_Functor_map(Data_Maybe_applyMaybe.Functor0())(function( ) + return function(x_S_318) return x_S_318 end + end)(a_S_133))(b_S_134) end local Golden_LongApplyChain_Test_compute = (function() - local _S_tmp648 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w({ + local _S_tmp678 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w({ "Data.Maybe∷Maybe.Just", 1 }, { "Data.Maybe∷Maybe.Just", 2 }), { "Data.Maybe∷Maybe.Just", 3 }), { @@ -72,7 +83,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 40 }), { "Data.Maybe∷Maybe.Just", 41 }) - local _S_tmp649 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp648, { + local _S_tmp679 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp678, { "Data.Maybe∷Maybe.Just", 42 }), { "Data.Maybe∷Maybe.Just", 43 }), { "Data.Maybe∷Maybe.Just", 44 }), { @@ -115,7 +126,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 81 }) - local _S_tmp650 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp649, { + local _S_tmp680 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp679, { "Data.Maybe∷Maybe.Just", 82 }), { "Data.Maybe∷Maybe.Just", 83 }), { "Data.Maybe∷Maybe.Just", 84 }), { @@ -158,7 +169,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 121 }) - local _S_tmp651 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp650, { + local _S_tmp681 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp680, { "Data.Maybe∷Maybe.Just", 122 }), { "Data.Maybe∷Maybe.Just", 123 }), { "Data.Maybe∷Maybe.Just", 124 }), { @@ -201,7 +212,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 161 }) - local _S_tmp652 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp651, { + local _S_tmp682 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp681, { "Data.Maybe∷Maybe.Just", 162 }), { "Data.Maybe∷Maybe.Just", 163 }), { "Data.Maybe∷Maybe.Just", 164 }), { @@ -244,7 +255,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 201 }) - local _S_tmp653 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp652, { + local _S_tmp683 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp682, { "Data.Maybe∷Maybe.Just", 202 }), { "Data.Maybe∷Maybe.Just", 203 }), { "Data.Maybe∷Maybe.Just", 204 }), { @@ -287,7 +298,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 241 }) - local _S_tmp654 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp653, { + local _S_tmp684 = Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp683, { "Data.Maybe∷Maybe.Just", 242 }), { "Data.Maybe∷Maybe.Just", 243 }), { "Data.Maybe∷Maybe.Just", 244 }), { @@ -330,7 +341,7 @@ local Golden_LongApplyChain_Test_compute = (function() "Data.Maybe∷Maybe.Just", 281 }) - return Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp654, { + return Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(Golden_LongApplyChain_Test_applySecond_S_w(_S_tmp684, { "Data.Maybe∷Maybe.Just", 282 }), { "Data.Maybe∷Maybe.Just", 283 }), { "Data.Maybe∷Maybe.Just", 284 }), { @@ -354,11 +365,11 @@ local Golden_LongApplyChain_Test_compute = (function() }) end)() return (function() - local _S_cse647 = Golden_LongApplyChain_Test_compute[1] + local _S_cse677 = Golden_LongApplyChain_Test_compute[1] return Effect_Console_foreign.log((function() - if "Data.Maybe∷Maybe.Just" == _S_cse647 then + if "Data.Maybe∷Maybe.Just" == _S_cse677 then return "(Just " .. Data_Show_foreign.showIntImpl(Golden_LongApplyChain_Test_compute[2]) .. ")" - elseif "Data.Maybe∷Maybe.Nothing" == _S_cse647 then + elseif "Data.Maybe∷Maybe.Nothing" == _S_cse677 then return "Nothing" else return error("No patterns matched") diff --git a/test/ps/output/Golden.LongStackBind.Test/golden.ir b/test/ps/output/Golden.LongStackBind.Test/golden.ir index c496b14a..5af92627 100644 --- a/test/ps/output/Golden.LongStackBind.Test/golden.ir +++ b/test/ps/output/Golden.LongStackBind.Test/golden.ir @@ -31,6 +31,77 @@ UberModule ( ModuleName "Effect.Console" ) ".spago/p/console/f82835a0b873aafe6bd7b14dd30cc150553d4ab9/src/Effect/Console.purs" [ ( Nothing, Name "log" ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Functor", qnameName = Name "map" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "map" ) ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Control.Applicative", qnameName = Name "pure" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "pure" ) ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Control.Monad", qnameName = Name "ap" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictMonad" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "bind", ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictMonad" ) ) ) + ( PropName "Bind1" ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] ) + ) + ( PropName "bind" ) + ) :| [] + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "f" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "a" ) :| [] ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "bind" ) ) ) + ( Ref Nothing ( Local ( Name "f" ) ) :| [] ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "f'" ) :| [] ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "bind" ) ) ) + ( Ref Nothing ( Local ( Name "a" ) ) :| [] ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "a'" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictMonad" ) ) ) + ( PropName "Applicative0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "pure" ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f'" ) ) ) + ( Ref Nothing ( Local ( Name "a'" ) ) :| [] ) :| [] + ) + ) :| [] + ) + ) :| [] + ) + ) + ) + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Tuple", qnameName = Name "Tuple$w" }, AbsN Nothing ( ParamNamed Nothing ( Name "value0" ) :| [ ParamNamed Nothing ( Name "value1" ) ] ) @@ -76,6 +147,75 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Identity" ) ( Name "functorIdentity" ) ) ) ) ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Control.Monad.Except.Trans", qnameName = Name "functorExceptT" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictFunctor" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "map", AbsN Nothing + ( ParamNamed Nothing ( Name "f" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v$577" ) :| [] ) + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictFunctor" ) ) ) + ( PropName "map" ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "m$587" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse6552", DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "m$587" ) ) ) + ) :| [] + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse6551", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "m$587" ) ) ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Either∷Either.Left" ) + ( Ref Nothing ( Local ( Name "$cse6551" ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Either" ) + ( TyName "Either" ) + ( CtorName "Left" ) + [ Ref Nothing ( Local ( Name "$cse6552" ) ) ] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Either∷Either.Right" ) + ( Ref Nothing ( Local ( Name "$cse6551" ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Either" ) + ( TyName "Either" ) + ( CtorName "Right" ) + [ AppN Nothing + ( Ref Nothing ( Local ( Name "f" ) ) ) + ( Ref Nothing ( Local ( Name "$cse6552" ) ) :| [] ) + ] + ) + ( Exception Nothing "No patterns matched" ) + ) + ) + ) + ) :| [] + ) + ) + ( Ref Nothing ( Local ( Name "v$577" ) ) :| [] ) + ) + ) + ) + ] + ) ), RecursiveGroup ( ( QName @@ -139,20 +279,20 @@ UberModule ( ParamNamed Nothing ( Name "v2$585" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse2203", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse6554", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v2$585" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse2202", ReflectCtor Nothing + ( Nothing, Name "$cse6553", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$585" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Either∷Either.Left" ) - ( Ref Nothing ( Local ( Name "$cse2202" ) ) ) + ( Ref Nothing ( Local ( Name "$cse6553" ) ) ) ) ( AppN Nothing ( ObjectProp Nothing @@ -171,17 +311,17 @@ UberModule ( ModuleName "Data.Either" ) ( TyName "Either" ) ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse2203" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "$cse6554" ) ) ] :| [] ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Either∷Either.Right" ) - ( Ref Nothing ( Local ( Name "$cse2202" ) ) ) + ( Ref Nothing ( Local ( Name "$cse6553" ) ) ) ) ( AppN Nothing ( Ref Nothing ( Local ( Name "k" ) ) ) - ( Ref Nothing ( Local ( Name "$cse2203" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse6554" ) ) :| [] ) ) ( Exception Nothing "No patterns matched" ) ) @@ -213,175 +353,52 @@ UberModule ( ParamNamed Nothing ( Name "dictMonad" ) :| [] ) ( LiteralObject Nothing [ - ( PropName "apply", Let Nothing - ( Standalone - ( Nothing, Name "dictMonad$2152", AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.Except.Trans" ) - ( Name "monadExceptT" ) - ) - ) - ( Ref Nothing ( Local ( Name "dictMonad" ) ) :| [] ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "bind$2153", ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonad$2152" ) ) ) - ( PropName "Bind1" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) - ) - ( PropName "bind" ) - ) :| [] - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "f$2154" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "a$2155" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "bind$2153" ) ) ) - ( Ref Nothing ( Local ( Name "f$2154" ) ) :| [] ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "f'$2156" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "bind$2153" ) ) ) - ( Ref Nothing ( Local ( Name "a$2155" ) ) :| [] ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "a'$2157" ) :| [] ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonad$2152" ) ) ) - ( PropName "Applicative0" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ) :| [] - ) - ) - ( PropName "pure" ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "f'$2156" ) ) ) - ( Ref Nothing ( Local ( Name "a'$2157" ) ) :| [] ) :| [] - ) - ) :| [] - ) - ) :| [] - ) - ) + ( PropName "apply", AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Control.Monad" ) ( Name "ap" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Control.Monad.Except.Trans" ) + ( Name "monadExceptT" ) ) ) + ( Ref Nothing ( Local ( Name "dictMonad" ) ) :| [] ) :| [] ) ), ( PropName "Functor0", AbsN Nothing ( ParamUnused Nothing :| [] ) - ( LiteralObject Nothing - [ - ( PropName "map", AbsN Nothing - ( ParamNamed Nothing ( Name "f$2161" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v$2162" ) :| [] ) - ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Control.Monad.Except.Trans" ) + ( Name "functorExceptT" ) + ) + ) + ( AppN Nothing + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing ( AppN Nothing ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonad" ) ) ) - ( PropName "Bind1" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ) :| [] - ) - ) - ( PropName "Apply0" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ) :| [] - ) - ) - ( PropName "Functor0" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) - ) - ( PropName "map" ) + ( Ref Nothing ( Local ( Name "dictMonad" ) ) ) + ( PropName "Bind1" ) ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "m$2164" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse2205", DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "m$2164" ) ) ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse2204", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "m$2164" ) ) ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Either∷Either.Left" ) - ( Ref Nothing ( Local ( Name "$cse2204" ) ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Either" ) - ( TyName "Either" ) - ( CtorName "Left" ) - [ Ref Nothing ( Local ( Name "$cse2205" ) ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Either∷Either.Right" ) - ( Ref Nothing ( Local ( Name "$cse2204" ) ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Either" ) - ( TyName "Either" ) - ( CtorName "Right" ) - [ AppN Nothing - ( Ref Nothing ( Local ( Name "f$2161" ) ) ) - ( Ref Nothing ( Local ( Name "$cse2205" ) ) :| [] ) - ] - ) - ( Exception Nothing "No patterns matched" ) - ) - ) - ) - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] ) ) - ( Ref Nothing ( Local ( Name "v$2162" ) ) :| [] ) + ( PropName "Apply0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] ) ) + ( PropName "Functor0" ) ) - ] + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) :| [] + ) ) ) ] @@ -394,7 +411,7 @@ UberModule ( LiteralObject Nothing [ ( PropName "pure", AbsN Nothing - ( ParamNamed Nothing ( Name "x$2197" ) :| [] ) + ( ParamNamed Nothing ( Name "x$4196" ) :| [] ) ( AppN Nothing ( ObjectProp Nothing ( AppN Nothing @@ -412,7 +429,7 @@ UberModule ( ModuleName "Data.Either" ) ( TyName "Either" ) ( CtorName "Right" ) - [ Ref Nothing ( Local ( Name "x$2197" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "x$4196" ) ) ] :| [] ) ) ), @@ -532,78 +549,13 @@ UberModule ( ParamNamed Nothing ( Name "dictMonad" ) :| [] ) ( LiteralObject Nothing [ - ( PropName "apply", Let Nothing - ( Standalone - ( Nothing, Name "dictMonad$2140", AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.State.Trans" ) - ( Name "monadStateT" ) - ) - ) - ( Ref Nothing ( Local ( Name "dictMonad" ) ) :| [] ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "bind$2141", ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonad$2140" ) ) ) - ( PropName "Bind1" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) - ) - ( PropName "bind" ) - ) :| [] - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "f$2142" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "a$2143" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "bind$2141" ) ) ) - ( Ref Nothing ( Local ( Name "f$2142" ) ) :| [] ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "f'$2144" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "bind$2141" ) ) ) - ( Ref Nothing ( Local ( Name "a$2143" ) ) :| [] ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "a'$2145" ) :| [] ) - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonad$2140" ) ) ) - ( PropName "Applicative0" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "undefined" ) - ) :| [] - ) - ) - ( PropName "pure" ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "f'$2144" ) ) ) - ( Ref Nothing ( Local ( Name "a'$2145" ) ) :| [] ) :| [] - ) - ) :| [] - ) - ) :| [] - ) - ) - ) + ( PropName "apply", AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Control.Monad" ) ( Name "ap" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.State.Trans" ) ( Name "monadStateT" ) ) ) + ( Ref Nothing ( Local ( Name "dictMonad" ) ) :| [] ) :| [] ) ), ( PropName "Functor0", AbsN Nothing @@ -618,7 +570,10 @@ UberModule ( ParamNamed Nothing ( Name "s$574" ) :| [] ) ( AppN Nothing ( AppN Nothing - ( ObjectProp Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "map" ) ) + ) ( AppN Nothing ( ObjectProp Nothing ( AppN Nothing @@ -648,9 +603,8 @@ UberModule ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) + ) :| [] ) - ( PropName "map" ) ) ( AbsN Nothing ( ParamNamed Nothing ( Name "v1$575" ) :| [] ) @@ -834,12 +788,50 @@ UberModule ) ( PropName "bind" ) ), 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" ) ) ] + ) :| [] + ) + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.LongStackBind.Test", qnameName = Name "add$w" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "x$591" ) :| [ ParamNamed Nothing ( Name "y$592" ) ] ) + ( PrimBinOp Nothing PrimAdd + ( Ref Nothing ( Local ( Name "x$591" ) ) ) + ( Ref Nothing ( Local ( Name "y$592" ) ) ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.LongStackBind.Test", qnameName = Name "go" }, Let Nothing ( Standalone - ( Nothing, Name "$kont2208", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2209" ) :| [] ) + ( Nothing, Name "$kont6557", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6558" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -856,38 +848,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x141" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x141" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -915,38 +884,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -977,47 +932,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1048,47 +980,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1119,49 +1028,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1194,49 +1078,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1269,51 +1128,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1346,51 +1180,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Unit" ) - ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x148" ) - ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] ) + ( Ref Nothing + ( Local + ( Name "x148" ) + ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -1423,51 +1232,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1500,51 +1284,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1570,7 +1329,13 @@ UberModule ( Name "final" ) :| [] ) ( AppN Nothing - ( ObjectProp Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Control.Applicative" ) + ( Name "pure" ) + ) + ) ( AppN Nothing ( Ref Nothing ( Imported @@ -1583,20 +1348,25 @@ UberModule ( ModuleName "Golden.LongStackBind.Test" ) ( Name "monadExceptT" ) ) :| [] - ) + ) :| [] ) - ( PropName "pure" ) ) - ( PrimBinOp Nothing PrimAdd + ( AppN Nothing ( Ref Nothing - ( Local - ( Name "x1$2209" ) + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) ) ( Ref Nothing ( Local - ( Name "final" ) - ) + ( Name "x1$6558" ) + ) :| + [ Ref Nothing + ( Local + ( Name "final" ) + ) + ] ) :| [] ) ) :| [] @@ -1644,8 +1414,8 @@ UberModule ) ) :| [ Standalone - ( Nothing, Name "$kont2210", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2211" ) :| [] ) + ( Nothing, Name "$kont6559", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6560" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -1662,38 +1432,18 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x121" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing + ( Local ( Name "x121" ) ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -1721,41 +1471,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1786,47 +1519,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1857,47 +1567,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -1928,49 +1615,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2003,49 +1665,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2078,51 +1715,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2155,51 +1767,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2232,51 +1819,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2309,51 +1871,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2386,51 +1923,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2463,51 +1975,26 @@ UberModule ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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 "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2540,51 +2027,26 @@ UberModule ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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" ) - ) :| [] - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( PropName "pure" ) - ) - ( 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 "x133" ) - ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] ) + ( Ref Nothing + ( Local + ( Name "x133" ) + ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -2617,51 +2079,26 @@ UberModule ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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" ) - ) :| [] - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( PropName "pure" ) - ) - ( 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 "x134" ) - ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] ) + ( Ref Nothing + ( Local + ( Name "x134" ) + ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -2694,51 +2131,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2771,51 +2183,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2848,51 +2235,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -2925,51 +2287,26 @@ UberModule ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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" ) - ) :| [] - ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( PropName "pure" ) - ) - ( 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 "x138" ) - ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] ) + ( Ref Nothing + ( Local + ( Name "x138" ) + ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -3002,51 +2339,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3079,51 +2391,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3132,12 +2419,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2208" ) + ( Name "$kont6557" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2211" ) + ( Name "x1$6560" ) ) :| [] ) ) :| [] @@ -3222,8 +2509,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2212", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2213" ) :| [] ) + ( Nothing, Name "$kont6561", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6562" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -3240,38 +2527,18 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x101" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing + ( Local ( Name "x101" ) ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -3299,41 +2566,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3364,47 +2614,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3435,47 +2662,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Unit" ) - ( Name "unit" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x104" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] ) + ( Ref Nothing + ( Local ( Name "x104" ) ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -3506,49 +2710,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3581,49 +2760,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( 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 "x106" ) ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) + ) ) + ( Ref Nothing + ( Local ( Name "x106" ) ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -3656,51 +2810,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3733,51 +2862,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3810,51 +2914,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3887,51 +2966,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -3964,51 +3018,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4041,51 +3070,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4118,51 +3122,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4195,51 +3174,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4272,51 +3226,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4349,51 +3278,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4426,51 +3330,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4503,51 +3382,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4580,51 +3434,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4657,51 +3486,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4710,12 +3514,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2210" ) + ( Name "$kont6559" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2213" ) + ( Name "x1$6562" ) ) :| [] ) ) :| [] @@ -4800,8 +3604,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2214", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2215" ) :| [] ) + ( Nothing, Name "$kont6563", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6564" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -4818,38 +3622,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x81" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x81" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -4877,41 +3658,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -4942,47 +3706,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5013,47 +3754,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5084,49 +3802,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5159,49 +3852,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5234,51 +3902,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5309,53 +3952,28 @@ UberModule ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) - ) - ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5388,51 +4006,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5465,51 +4058,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5542,51 +4110,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5619,51 +4162,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5696,51 +4214,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5773,51 +4266,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5850,51 +4318,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -5927,51 +4370,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6004,51 +4422,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6081,51 +4474,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6158,51 +4526,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6235,51 +4578,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6288,12 +4606,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2212" ) + ( Name "$kont6561" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2215" ) + ( Name "x1$6564" ) ) :| [] ) ) :| [] @@ -6378,8 +4696,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2216", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2217" ) :| [] ) + ( Nothing, Name "$kont6565", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6566" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -6396,38 +4714,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x61" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x61" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -6447,49 +4742,32 @@ UberModule ) ( AbsN Nothing ( ParamNamed Nothing ( Name "x62" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "discard" ) - ) - ) - ( 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 + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "discard" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6520,47 +4798,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6591,47 +4846,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6662,49 +4894,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6737,49 +4944,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6812,51 +4994,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6889,51 +5046,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -6965,52 +5097,27 @@ UberModule ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) - ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7043,51 +5150,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7120,51 +5202,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7197,51 +5254,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7274,51 +5306,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7351,51 +5358,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7428,51 +5410,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7505,51 +5462,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7582,51 +5514,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7659,51 +5566,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7736,51 +5618,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7813,51 +5670,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -7866,12 +5698,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2214" ) + ( Name "$kont6563" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2217" ) + ( Name "x1$6566" ) ) :| [] ) ) :| [] @@ -7956,8 +5788,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2218", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2219" ) :| [] ) + ( Nothing, Name "$kont6567", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6568" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -7974,38 +5806,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x41" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x41" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -8033,41 +5842,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8098,47 +5890,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8169,47 +5938,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8240,49 +5986,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8315,49 +6036,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8390,51 +6086,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8467,51 +6138,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8544,51 +6190,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8621,51 +6242,26 @@ UberModule ( Name "discard" ) ) ) - ( 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" ) - ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing - ( Local - ( Name "x50" ) - ) - ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( 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 "x50" ) + ) :| + [ LiteralInt Nothing 1 ] + ) :| [] ) :| [] ) ) @@ -8698,51 +6294,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8775,51 +6346,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8852,51 +6398,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -8929,51 +6450,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9006,51 +6502,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9083,51 +6554,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9160,51 +6606,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9237,51 +6658,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9314,51 +6710,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9391,51 +6762,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9444,12 +6790,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2216" ) + ( Name "$kont6565" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2219" ) + ( Name "x1$6568" ) ) :| [] ) ) :| [] @@ -9534,8 +6880,8 @@ UberModule ) ) ), Standalone - ( Nothing, Name "$kont2220", AbsN Nothing - ( ParamNamed Nothing ( Name "x1$2221" ) :| [] ) + ( Nothing, Name "$kont6569", AbsN Nothing + ( ParamNamed Nothing ( Name "x1$6570" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing @@ -9552,38 +6898,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x21" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x21" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -9611,41 +6934,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9676,47 +6982,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9747,47 +7030,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9812,55 +7072,30 @@ UberModule ( ParamNamed Nothing ( Name "x25" ) :| [] ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.LongStackBind.Test" ) - ( Name "discard" ) - ) - ) - ( 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" ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "discard" ) + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9893,49 +7128,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -9968,51 +7178,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10045,51 +7230,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10122,51 +7282,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10199,51 +7334,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10276,51 +7386,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10353,51 +7438,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10430,51 +7490,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10507,51 +7542,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10584,51 +7594,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10661,51 +7646,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10738,51 +7698,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10815,51 +7750,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10892,51 +7802,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -10969,51 +7854,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11022,12 +7882,12 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2218" ) + ( Name "$kont6567" ) ) ) ( Ref Nothing ( Local - ( Name "x1$2221" ) + ( Name "x1$6570" ) ) :| [] ) ) :| [] @@ -11128,36 +7988,15 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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" ) ) :| - [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "x1" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "add$w" ) ) ) + ( Ref Nothing ( Local ( Name "x1" ) ) :| [ LiteralInt Nothing 1 ] ) :| [] ) :| [] ) ) @@ -11179,38 +8018,21 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "put" ) ) + ) ( 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 "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11241,41 +8063,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Tuple" ) ( Name "Tuple$w" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11306,47 +8111,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11377,47 +8159,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11448,49 +8207,24 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11522,50 +8256,25 @@ UberModule ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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 "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11598,51 +8307,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11675,51 +8359,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11752,51 +8411,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11829,51 +8463,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11906,51 +8515,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -11983,51 +8567,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12059,52 +8618,27 @@ UberModule ( ModuleName "Golden.LongStackBind.Test" ) ( Name "discard" ) ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "put" ) + ) + ) ( 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 "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12137,51 +8671,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12214,51 +8723,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12291,51 +8775,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12368,51 +8827,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12445,51 +8879,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12522,51 +8931,26 @@ UberModule ( Name "discard" ) ) ) - ( 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 "Golden.LongStackBind.Test" ) + ( Name "put" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Tuple" ) - ( Name "Tuple$w" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.LongStackBind.Test" ) + ( Name "add$w" ) ) - ( 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 ] + ) :| [] ) :| [] ) ) @@ -12575,7 +8959,7 @@ UberModule ( AppN Nothing ( Ref Nothing ( Local - ( Name "$kont2220" ) + ( Name "$kont6569" ) ) ) ( Ref Nothing @@ -12720,7 +9104,7 @@ UberModule ), ( Name "main", Let Nothing ( Standalone - ( Nothing, Name "$cse2207", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse6556", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "compute" ) ) ) @@ -12728,7 +9112,7 @@ UberModule ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse2206", ReflectCtor Nothing + ( Nothing, Name "$cse6555", ReflectCtor Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.LongStackBind.Test" ) ( Name "compute" ) ) ) @@ -12742,7 +9126,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Either∷Either.Left" ) - ( Ref Nothing ( Local ( Name "$cse2206" ) ) ) + ( Ref Nothing ( Local ( Name "$cse6555" ) ) ) ) ( PrimBinOp Nothing PrimConcat ( LiteralString Nothing "(Left " ) @@ -12752,7 +9136,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) ( PropName "showStringImpl" ) ) - ( Ref Nothing ( Local ( Name "$cse2207" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse6556" ) ) :| [] ) ) ( LiteralString Nothing ")" ) ) @@ -12760,7 +9144,7 @@ UberModule ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Either∷Either.Right" ) - ( Ref Nothing ( Local ( Name "$cse2206" ) ) ) + ( Ref Nothing ( Local ( Name "$cse6555" ) ) ) ) ( PrimBinOp Nothing PrimConcat ( LiteralString Nothing "(Right " ) @@ -12770,7 +9154,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) ( PropName "showIntImpl" ) ) - ( Ref Nothing ( Local ( Name "$cse2207" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse6556" ) ) :| [] ) ) ( LiteralString Nothing ")" ) ) diff --git a/test/ps/output/Golden.LongStackBind.Test/golden.lua b/test/ps/output/Golden.LongStackBind.Test/golden.lua index 07a6c288..d7ebe041 100644 --- a/test/ps/output/Golden.LongStackBind.Test/golden.lua +++ b/test/ps/output/Golden.LongStackBind.Test/golden.lua @@ -46,6 +46,20 @@ local Unsafe_Coerce_foreign = { unsafeCoerce = function(x) return x end } local Effect_Console_foreign = { log = function(s) return function() print(s) end end } +local Data_Functor_map = function(dict) return dict.map end +local Control_Applicative_pure = function(dict) return dict.pure end +local Control_Monad_ap = function(dictMonad) + local bind = (dictMonad.Bind1()).bind + return function(f) + return function(a) + return bind(f)(function(fPrime) + return bind(a)(function(aPrime) + return (dictMonad.Applicative0()).pure(fPrime(aPrime)) + end) + end) + end + end +end local Data_Tuple_Tuple_S_w = function(value0, value1) return { value0, value1 } end @@ -56,6 +70,25 @@ local Data_Identity_applyIdentity = { apply = function(v) return function(v1) return v(v1) end end, Functor0 = function() return Data_Identity_functorIdentity end } +local Control_Monad_Except_Trans_functorExceptT = function(dictFunctor) + return { + map = function(f) + return function(v_S_577) + return dictFunctor.map(function(m_S_587) + local _S_cse6552 = m_S_587[2] + local _S_cse6551 = m_S_587[1] + if "Data.Either∷Either.Left" == _S_cse6551 then + return { "Data.Either∷Either.Left", _S_cse6552 } + elseif "Data.Either∷Either.Right" == _S_cse6551 then + return { "Data.Either∷Either.Right", (f(_S_cse6552)) } + else + return error("No patterns matched") + end + end)(v_S_577) + end + end + } +end local Control_Monad_Except_Trans_bindExceptT local Control_Monad_Except_Trans_applicativeExceptT local Control_Monad_Except_Trans_monadExceptT = function(dictMonad) @@ -74,15 +107,15 @@ Control_Monad_Except_Trans_bindExceptT = function(dictMonad) bind = function(v) return function(k) return (dictMonad.Bind1()).bind(v)(function(v2_S_585) - local _S_cse2203 = v2_S_585[2] - local _S_cse2202 = v2_S_585[1] - if "Data.Either∷Either.Left" == _S_cse2202 then + local _S_cse6554 = v2_S_585[2] + local _S_cse6553 = v2_S_585[1] + if "Data.Either∷Either.Left" == _S_cse6553 then return (dictMonad.Applicative0()).pure({ "Data.Either∷Either.Left", - _S_cse2203 + _S_cse6554 }) - elseif "Data.Either∷Either.Right" == _S_cse2202 then - return k(_S_cse2203) + elseif "Data.Either∷Either.Right" == _S_cse6553 then + return k(_S_cse6554) else return error("No patterns matched") end @@ -96,46 +129,18 @@ Control_Monad_Except_Trans_bindExceptT = function(dictMonad) end Control_Monad_Except_Trans_applyExceptT = function(dictMonad) return { - apply = (function() - local dictMonad_S_2152 = Control_Monad_Except_Trans_monadExceptT(dictMonad) - local bind_S_2153 = (dictMonad_S_2152.Bind1()).bind - return function(f_S_2154) - return function(a_S_2155) - return bind_S_2153(f_S_2154)(function(fPrime_S_2156) - return bind_S_2153(a_S_2155)(function(aPrime_S_2157) - return (dictMonad_S_2152.Applicative0()).pure(fPrime_S_2156(aPrime_S_2157)) - end) - end) - end - end - end)(), + apply = Control_Monad_ap(Control_Monad_Except_Trans_monadExceptT(dictMonad)), Functor0 = function() - return { - map = function(f_S_2161) - return function(v_S_2162) - return (((dictMonad.Bind1()).Apply0()).Functor0()).map(function( m_S_2164 ) - local _S_cse2205 = m_S_2164[2] - local _S_cse2204 = m_S_2164[1] - if "Data.Either∷Either.Left" == _S_cse2204 then - return { "Data.Either∷Either.Left", _S_cse2205 } - elseif "Data.Either∷Either.Right" == _S_cse2204 then - return { "Data.Either∷Either.Right", (f_S_2161(_S_cse2205)) } - else - return error("No patterns matched") - end - end)(v_S_2162) - end - end - } + return Control_Monad_Except_Trans_functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0()) end } end Control_Monad_Except_Trans_applicativeExceptT = function(dictMonad) return { - pure = function(x_S_2197) + pure = function(x_S_4196) return (dictMonad.Applicative0()).pure({ "Data.Either∷Either.Right", - x_S_2197 + x_S_4196 }) end, Apply0 = function() @@ -174,25 +179,13 @@ Control_Monad_State_Trans_bindStateT = function(dictMonad) end Control_Monad_State_Trans_applyStateT = function(dictMonad) return { - apply = (function() - local dictMonad_S_2140 = Control_Monad_State_Trans_monadStateT(dictMonad) - local bind_S_2141 = (dictMonad_S_2140.Bind1()).bind - return function(f_S_2142) - return function(a_S_2143) - return bind_S_2141(f_S_2142)(function(fPrime_S_2144) - return bind_S_2141(a_S_2143)(function(aPrime_S_2145) - return (dictMonad_S_2140.Applicative0()).pure(fPrime_S_2144(aPrime_S_2145)) - end) - end) - end - end - end)(), + apply = Control_Monad_ap(Control_Monad_State_Trans_monadStateT(dictMonad)), Functor0 = function() return { map = function(f_S_572) return function(v_S_573) return function(s_S_574) - return (((dictMonad.Bind1()).Apply0()).Functor0()).map(function( v1_S_575 ) + return Data_Functor_map(((dictMonad.Bind1()).Apply0()).Functor0())(function( v1_S_575 ) return Data_Tuple_Tuple_S_w(f_S_572(v1_S_575[1]), v1_S_575[2]) end)(v_S_573(s_S_574)) end @@ -236,50 +229,38 @@ local Golden_LongStackBind_Test_get = function(x_S_2131) return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(x_S_2131, x_S_2131)) end local Golden_LongStackBind_Test_discard = Golden_LongStackBind_Test_bindStateT.bind +local Golden_LongStackBind_Test_put = function(s_S_109) + return function() + return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, s_S_109)) + end +end +local Golden_LongStackBind_Test_add_S_w = function(x_S_591, y_S_592) + return x_S_591 + y_S_592 +end local Golden_LongStackBind_Test_go = (function() - local _S_kont2208 = function(x1_S_2209) + local _S_kont6557 = function(x1_S_6558) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x141 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x141 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x141, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x142 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x142 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x142, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x143 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x143 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x143, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x144 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x144 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x144, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x145 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x145 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x145, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x146 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x146 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x146, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x147 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x147 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x147, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x148 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x148 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x148, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x149 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x149 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x149, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x150 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x150 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x150, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( final ) - return (Control_Monad_State_Trans_applicativeStateT(Golden_LongStackBind_Test_monadExceptT)).pure(x1_S_2209 + final) + return Control_Applicative_pure(Control_Monad_State_Trans_applicativeStateT(Golden_LongStackBind_Test_monadExceptT))(Golden_LongStackBind_Test_add_S_w(x1_S_6558, final)) end) end) end) @@ -302,88 +283,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2210 = function(x1_S_2211) + local _S_kont6559 = function(x1_S_6560) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x121 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x121 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x121, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x122 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x122 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x122, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x123 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x123 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x123, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x124 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x124 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x124, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x125 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x125 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x125, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x126 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x126 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x126, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x127 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x127 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x127, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x128 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x128 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x128, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x129 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x129 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x129, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x130 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x130 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x130, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x131 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x131 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x131, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x132 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x132 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x132, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x133 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x133 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x133, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x134 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x134 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x134, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x135 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x135 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x135, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x136 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x136 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x136, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x137 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x137 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x137, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x138 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x138 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x138, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x139 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x139 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x139, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x140 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x140 + 1)) - end)(function( ) - return _S_kont2208(x1_S_2211) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x140, 1)))(function( ) + return _S_kont6557(x1_S_6560) end) end) end) @@ -425,88 +366,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2212 = function(x1_S_2213) + local _S_kont6561 = function(x1_S_6562) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x101 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x101 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x101, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x102 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x102 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x102, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x103 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x103 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x103, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x104 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x104 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x104, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x105 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x105 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x105, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x106 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x106 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x106, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x107 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x107 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x107, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x108 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x108 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x108, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x109 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x109 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x109, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x110 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x110 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x110, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x111 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x111 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x111, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x112 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x112 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x112, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x113 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x113 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x113, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x114 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x114 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x114, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x115 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x115 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x115, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x116 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x116 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x116, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x117 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x117 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x117, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x118 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x118 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x118, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x119 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x119 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x119, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x120 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x120 + 1)) - end)(function( ) - return _S_kont2210(x1_S_2213) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x120, 1)))(function( ) + return _S_kont6559(x1_S_6562) end) end) end) @@ -548,88 +449,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2214 = function(x1_S_2215) + local _S_kont6563 = function(x1_S_6564) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x81 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x81 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x81, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x82 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x82 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x82, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x83 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x83 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x83, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x84 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x84 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x84, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x85 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x85 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x85, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x86 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x86 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x86, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x87 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x87 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x87, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x88 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x88 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x88, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x89 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x89 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x89, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x90 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x90 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x90, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x91 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x91 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x91, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x92 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x92 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x92, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x93 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x93 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x93, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x94 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x94 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x94, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x95 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x95 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x95, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x96 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x96 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x96, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x97 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x97 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x97, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x98 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x98 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x98, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x99 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x99 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x99, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x100 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x100 + 1)) - end)(function( ) - return _S_kont2212(x1_S_2215) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x100, 1)))(function( ) + return _S_kont6561(x1_S_6564) end) end) end) @@ -671,88 +532,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2216 = function(x1_S_2217) + local _S_kont6565 = function(x1_S_6566) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x61 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x61 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x61, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x62 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x62 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x62, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x63 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x63 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x63, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x64 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x64 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x64, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x65 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x65 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x65, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x66 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x66 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x66, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x67 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x67 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x67, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x68 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x68 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x68, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x69 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x69 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x69, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x70 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x70 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x70, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x71 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x71 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x71, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x72 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x72 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x72, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x73 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x73 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x73, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x74 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x74 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x74, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x75 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x75 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x75, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x76 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x76 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x76, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x77 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x77 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x77, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x78 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x78 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x78, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x79 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x79 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x79, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x80 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x80 + 1)) - end)(function( ) - return _S_kont2214(x1_S_2217) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x80, 1)))(function( ) + return _S_kont6563(x1_S_6566) end) end) end) @@ -794,88 +615,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2218 = function(x1_S_2219) + local _S_kont6567 = function(x1_S_6568) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x41 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x41 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x41, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x42 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x42 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x42, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x43 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x43 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x43, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x44 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x44 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x44, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x45 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x45 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x45, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x46 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x46 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x46, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x47 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x47 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x47, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x48 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x48 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x48, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x49 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x49 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x49, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x50 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x50 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x50, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x51 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x51 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x51, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x52 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x52 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x52, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x53 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x53 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x53, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x54 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x54 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x54, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x55 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x55 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x55, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x56 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x56 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x56, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x57 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x57 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x57, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x58 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x58 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x58, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x59 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x59 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x59, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x60 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x60 + 1)) - end)(function( ) - return _S_kont2216(x1_S_2219) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x60, 1)))(function( ) + return _S_kont6565(x1_S_6568) end) end) end) @@ -917,88 +698,48 @@ local Golden_LongStackBind_Test_go = (function() end) end) end - local _S_kont2220 = function(x1_S_2221) + local _S_kont6569 = function(x1_S_6570) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x21 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x21 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x21, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x22 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x22 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x22, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x23 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x23 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x23, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x24 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x24 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x24, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x25 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x25 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x25, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x26 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x26 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x26, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x27 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x27 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x27, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x28 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x28 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x28, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x29 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x29 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x29, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x30 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x30 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x30, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x31 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x31 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x31, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x32 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x32 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x32, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x33 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x33 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x33, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x34 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x34 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x34, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x35 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x35 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x35, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x36 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x36 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x36, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x37 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x37 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x37, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x38 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x38 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x38, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x39 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x39 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x39, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x40 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x40 + 1)) - end)(function( ) - return _S_kont2218(x1_S_2221) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x40, 1)))(function( ) + return _S_kont6567(x1_S_6570) end) end) end) @@ -1041,86 +782,46 @@ local Golden_LongStackBind_Test_go = (function() end) end return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x1 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x1 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x1, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x2 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x2 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x2, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x3 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x3 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x3, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x4 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x4 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x4, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x5 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x5 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x5, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x6 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x6 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x6, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x7 ) - return Golden_LongStackBind_Test_discard(function() - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x7 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x7, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x8 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x8 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x8, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x9 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x9 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x9, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x10 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x10 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x10, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x11 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x11 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x11, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x12 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x12 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x12, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x13 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x13 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x13, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x14 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x14 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x14, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x15 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x15 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x15, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x16 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x16 + 1)) - end)(function() + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x16, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x17 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x17 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x17, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x18 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x18 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x18, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x19 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x19 + 1)) - end)(function( ) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x19, 1)))(function( ) return Golden_LongStackBind_Test_bind(Golden_LongStackBind_Test_get)(function( x20 ) - return Golden_LongStackBind_Test_discard(function( ) - return (Golden_LongStackBind_Test_monadExceptT.Applicative0()).pure(Data_Tuple_Tuple_S_w(Data_Unit_unit, x20 + 1)) - end)(function( ) - return _S_kont2220(x1) + return Golden_LongStackBind_Test_discard(Golden_LongStackBind_Test_put(Golden_LongStackBind_Test_add_S_w(x20, 1)))(function( ) + return _S_kont6569(x1) end) end) end) @@ -1173,13 +874,13 @@ local Golden_LongStackBind_Test_compute = Unsafe_Coerce_foreign.unsafeCoerce((fu end end)()) return (function() - local _S_cse2207 = Golden_LongStackBind_Test_compute[2] - local _S_cse2206 = Golden_LongStackBind_Test_compute[1] + local _S_cse6556 = Golden_LongStackBind_Test_compute[2] + local _S_cse6555 = Golden_LongStackBind_Test_compute[1] return Effect_Console_foreign.log((function() - if "Data.Either∷Either.Left" == _S_cse2206 then - return "(Left " .. Data_Show_foreign.showStringImpl(_S_cse2207) .. ")" - elseif "Data.Either∷Either.Right" == _S_cse2206 then - return "(Right " .. Data_Show_foreign.showIntImpl(_S_cse2207) .. ")" + if "Data.Either∷Either.Left" == _S_cse6555 then + return "(Left " .. Data_Show_foreign.showStringImpl(_S_cse6556) .. ")" + elseif "Data.Either∷Either.Right" == _S_cse6555 then + return "(Right " .. Data_Show_foreign.showIntImpl(_S_cse6556) .. ")" else return error("No patterns matched") end diff --git a/test/ps/output/Golden.Loopification.Test/golden.ir b/test/ps/output/Golden.Loopification.Test/golden.ir index 0736aa8e..a1a8198e 100644 --- a/test/ps/output/Golden.Loopification.Test/golden.ir +++ b/test/ps/output/Golden.Loopification.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 "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -20,10 +14,22 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) + { qnameModuleName = ModuleName "Golden.Loopification.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) + ) + ( Ref Nothing ( Local ( Name "a$2" ) ) :| [] ) :| [] + ) + ) ), RecursiveGroup ( ( QName @@ -287,15 +293,14 @@ UberModule ( Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "countdown" ) ) - ) - ( LiteralInt Nothing 5 :| [] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "countdown" ) ) + ) + ( LiteralInt Nothing 5 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -303,95 +308,60 @@ UberModule [ Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "sumTo$w" ) ) - ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 10 ] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "sumTo$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 "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( Let Nothing - ( RecursiveGroup - ( - ( Nothing, Name "go$w$267", AbsN Nothing - ( ParamNamed Nothing - ( Name "acc$268" ) :| - [ ParamNamed Nothing ( Name "n$269" ) ] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( Ref Nothing ( Local ( Name "n$269" ) ) ) - ( LiteralInt Nothing 0 ) - ) - ( Ref Nothing ( Local ( Name "acc$268" ) ) ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$267" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "acc$268" ) ) ) - ( PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "n$269" ) ) ) - ( Ref Nothing ( Local ( Name "n$269" ) ) ) - ) :| - [ PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "n$269" ) ) ) - ( LiteralInt Nothing 1 ) - ] - ) - ) - ) - ) :| [] - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$267" ) ) ) - ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 4 ] ) - ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "sumSquares" ) ) + ) + ( LiteralInt Nothing 4 :| [] ) :| [] ) ) ( 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.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "mc91" ) ) - ) - ( LiteralInt Nothing 1 :| [] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "mc91" ) ) + ) + ( LiteralInt Nothing 1 :| [] ) :| [] ) ) ( 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.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "sumCPS$w" ) ) - ) - ( LiteralInt Nothing 5 :| - [ AbsN Nothing - ( ParamNamed Nothing ( Name "x$223" ) :| [] ) - ( Ref Nothing ( Local ( Name "x$223" ) ) ) - ] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "sumCPS$w" ) ) + ) + ( LiteralInt Nothing 5 :| + [ AbsN Nothing + ( ParamNamed Nothing ( Name "x$223" ) :| [] ) + ( Ref Nothing ( Local ( Name "x$223" ) ) ) + ] ) :| [] ) ) @@ -401,15 +371,14 @@ UberModule ) ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "countDrop$w" ) ) - ) - ( LiteralInt Nothing 3 :| [ LiteralInt Nothing 99 ] ) :| [] - ) :| [] + ( Ref Nothing + ( Imported ( ModuleName "Golden.Loopification.Test" ) ( Name "countDrop$w" ) ) + ) + ( LiteralInt Nothing 3 :| [ LiteralInt Nothing 99 ] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.Loopification.Test/golden.lua b/test/ps/output/Golden.Loopification.Test/golden.lua index 579fd921..99a0489f 100644 --- a/test/ps/output/Golden.Loopification.Test/golden.lua +++ b/test/ps/output/Golden.Loopification.Test/golden.lua @@ -1,10 +1,11 @@ local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Effect_Console_log = Effect_Console_foreign.log +local Golden_Loopification_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(a_S_2)) +end local Golden_Loopification_Test_sumTo_S_w = function(acc, n) while true do if n == 0 then return acc else acc, n = acc + n, n - 1 end end end @@ -13,7 +14,7 @@ M.Golden_Loopification_Test_sumTo = function(sumTo_S_p1) return Golden_Loopification_Test_sumTo_S_w(sumTo_S_p1, sumTo_S_p2) end end -M.Golden_Loopification_Test_sumSquares = function(m) +local Golden_Loopification_Test_sumSquares = function(m) local go_S_w go_S_w = function(acc, n) while true do @@ -59,24 +60,12 @@ M.Golden_Loopification_Test_countDrop = function(countDrop_S_p1) end end return (function() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_Loopification_Test_countdown(5)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_Loopification_Test_sumTo_S_w(0, 10)))() - local _ = Effect_Console_log(Data_Show_showIntImpl((function() - local go_S_w_S_267 - go_S_w_S_267 = function(acc_S_268, n_S_269) - while true do - if n_S_269 == 0 then - return acc_S_268 - else - acc_S_268, n_S_269 = acc_S_268 + n_S_269 * n_S_269, n_S_269 - 1 - end - end - end - return go_S_w_S_267(0, 4) - end)()))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_Loopification_Test_mc91(1)))() - local _ = Effect_Console_log(Data_Show_showIntImpl(Golden_Loopification_Test_sumCPS_S_w(5, function( x_S_223 ) + local _ = Golden_Loopification_Test_logShow(Golden_Loopification_Test_countdown(5))() + local _ = Golden_Loopification_Test_logShow(Golden_Loopification_Test_sumTo_S_w(0, 10))() + local _ = Golden_Loopification_Test_logShow(Golden_Loopification_Test_sumSquares(4))() + local _ = Golden_Loopification_Test_logShow(Golden_Loopification_Test_mc91(1))() + local _ = Golden_Loopification_Test_logShow(Golden_Loopification_Test_sumCPS_S_w(5, function( x_S_223 ) return x_S_223 - end)))() - return Effect_Console_log(Data_Show_showIntImpl(Golden_Loopification_Test_countDrop_S_w(3, 99)))() + end))() + return Golden_Loopification_Test_logShow(Golden_Loopification_Test_countDrop_S_w(3, 99))() end)() diff --git a/test/ps/output/Golden.MixedEffectSTDo.Test/golden.ir b/test/ps/output/Golden.MixedEffectSTDo.Test/golden.ir index 0fbcabaf..ebddde2d 100644 --- a/test/ps/output/Golden.MixedEffectSTDo.Test/golden.ir +++ b/test/ps/output/Golden.MixedEffectSTDo.Test/golden.ir @@ -20,30 +20,6 @@ UberModule ( Nothing, Name "modifyImpl" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "modifyImpl" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "modifyImpl" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "new" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "new" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "read" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "read" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "run" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "run" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -61,15 +37,23 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "start" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "run" ) ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "run" ) + ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone ( Nothing, Name "ref", AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "new" ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "new" ) ) ( Ref Nothing ( Local ( Name "start" ) ) :| [] ) ) @@ -79,11 +63,14 @@ UberModule ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.ST.Internal" ) - ( Name "modifyImpl" ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Control.Monad.ST.Internal" ) + ( Name "foreign" ) + ) ) + ( PropName "modifyImpl" ) ) ( AbsN Nothing ( ParamNamed Nothing ( Name "s$8" ) :| [] ) @@ -109,8 +96,11 @@ UberModule ), Standalone ( Nothing, Name "n", AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "read" ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "read" ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) @@ -145,81 +135,9 @@ UberModule [ Standalone ( Nothing, Name "x$0", AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "run" ) ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "ref$458", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "new" ) ) - ) - ( LiteralInt Nothing 2 :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.ST.Internal" ) - ( Name "modifyImpl" ) - ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "s$460" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "s'$461", PrimBinOp Nothing PrimMul - ( Ref Nothing ( Local ( Name "s$460" ) ) ) - ( LiteralInt Nothing 2 ) - ) :| [] - ) - ( LiteralObject Nothing - [ - ( PropName "state", Ref Nothing - ( Local ( Name "s'$461" ) ) - ), - ( PropName "value", Ref Nothing ( Local ( Name "s'$461" ) ) ) - ] - ) - ) :| [] - ) - ) - ( Ref Nothing ( Local ( Name "ref$458" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ), Standalone - ( Nothing, Name "n$459", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.ST.Internal" ) - ( Name "read" ) - ) - ) - ( Ref Nothing ( Local ( Name "ref$458" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ] - ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "n$459" ) ) ) - ( LiteralInt Nothing 3 ) - ) - ) :| [] + ( Imported ( ModuleName "Golden.MixedEffectSTDo.Test" ) ( Name "tally" ) ) ) + ( LiteralInt Nothing 2 :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing ( AppN Nothing diff --git a/test/ps/output/Golden.MixedEffectSTDo.Test/golden.lua b/test/ps/output/Golden.MixedEffectSTDo.Test/golden.lua index 65df23de..16e339d6 100644 --- a/test/ps/output/Golden.MixedEffectSTDo.Test/golden.lua +++ b/test/ps/output/Golden.MixedEffectSTDo.Test/golden.lua @@ -1,4 +1,3 @@ -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Control_Monad_ST_Internal_foreign = { pure_ = function(a) return function() return a end end, @@ -18,36 +17,24 @@ local Control_Monad_ST_Internal_foreign = { end end } -local Control_Monad_ST_Internal_modifyImpl = Control_Monad_ST_Internal_foreign.modifyImpl -local Control_Monad_ST_Internal_new = Control_Monad_ST_Internal_foreign.new -local Control_Monad_ST_Internal_read = Control_Monad_ST_Internal_foreign.read -local Control_Monad_ST_Internal_run = Control_Monad_ST_Internal_foreign.run local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log -M.Golden_MixedEffectSTDo_Test_tally = function(start) - return Control_Monad_ST_Internal_run(function() - local ref = Control_Monad_ST_Internal_new(start)() - local _ = Control_Monad_ST_Internal_modifyImpl(function(s_S_8) +local Golden_MixedEffectSTDo_Test_tally = function(start) + return Control_Monad_ST_Internal_foreign.run(function() + local ref = Control_Monad_ST_Internal_foreign.new(start)() + local _ = Control_Monad_ST_Internal_foreign.modifyImpl(function(s_S_8) local sPrime_S_9 = s_S_8 * 2 return { state = sPrime_S_9, value = sPrime_S_9 } end)(ref)() - local n = Control_Monad_ST_Internal_read(ref)() + local n = Control_Monad_ST_Internal_foreign.read(ref)() return n + 3 end) end return (function() local _ = Effect_Console_log("mixing Effect and ST")() - local x_S_0 = Control_Monad_ST_Internal_run(function() - local ref_S_458 = Control_Monad_ST_Internal_new(2)() - local _ = Control_Monad_ST_Internal_modifyImpl(function(s_S_460) - local sPrime_S_461 = s_S_460 * 2 - return { state = sPrime_S_461, value = sPrime_S_461 } - end)(ref_S_458)() - local n_S_459 = Control_Monad_ST_Internal_read(ref_S_458)() - return n_S_459 + 3 - end) + local x_S_0 = Golden_MixedEffectSTDo_Test_tally(2) local _ = Effect_Console_log(Data_Show_foreign.showIntImpl(x_S_0))() return Effect_Console_log("done")() end)() diff --git a/test/ps/output/Golden.NumberIsNaN.Test/golden.ir b/test/ps/output/Golden.NumberIsNaN.Test/golden.ir index e2547495..9aa4b6f3 100644 --- a/test/ps/output/Golden.NumberIsNaN.Test/golden.ir +++ b/test/ps/output/Golden.NumberIsNaN.Test/golden.ir @@ -1,17 +1,18 @@ UberModule { uberModuleBindings = [ Standalone + ( QName + { qnameModuleName = ModuleName "Data.Semiring", qnameName = Name "foreign" + }, ForeignImport Nothing + ( ModuleName "Data.Semiring" ) ".spago/p/prelude/5718c84fdde6247749cb053e816df696c30fe691/src/Data/Semiring.purs" + [ ( Nothing, Name "numAdd" ), ( Nothing, Name "numMul" ) ] + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Ring", qnameName = Name "foreign" }, ForeignImport Nothing ( ModuleName "Data.Ring" ) ".spago/p/prelude/5718c84fdde6247749cb053e816df696c30fe691/src/Data/Ring.purs" [ ( Nothing, Name "numSub" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Ring", qnameName = Name "numSub" }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "foreign" ) ) ) - ( PropName "numSub" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Number", qnameName = Name "foreign" }, ForeignImport Nothing @@ -42,10 +43,56 @@ UberModule [ ( Nothing, Name "log" ) ] ), Standalone ( QName - { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "log" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) - ( PropName "log" ) + { qnameModuleName = ModuleName "Data.Ring", qnameName = Name "sub" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dict" ) :| [] ) + ( ObjectProp Nothing ( Ref Nothing ( Local ( Name "dict" ) ) ) ( PropName "sub" ) ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Ring", qnameName = Name "ringNumber" + }, LiteralObject Nothing + [ + ( PropName "sub", ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "foreign" ) ) ) + ( PropName "numSub" ) + ), + ( PropName "Semiring0", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( LiteralObject Nothing + [ + ( PropName "add", ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Semiring" ) ( Name "foreign" ) ) ) + ( PropName "numAdd" ) + ), + ( PropName "zero", LiteralFloat Nothing 0.0 ), + ( PropName "mul", ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Semiring" ) ( Name "foreign" ) ) ) + ( PropName "numMul" ) + ), + ( PropName "one", LiteralFloat Nothing 1.0 ) + ] + ) + ) + ] + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.NumberIsNaN.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "a$2" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "foreign" ) ) ) + ( PropName "log" ) + ) + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "a$2" ) ) ) + ( LiteralString Nothing "true" ) + ( IfThenElse Nothing + ( Eq Nothing ( LiteralBool Nothing False ) ( Ref Nothing ( Local ( Name "a$2" ) ) ) ) + ( LiteralString Nothing "false" ) + ( Exception Nothing "No patterns matched" ) + ) :| [] + ) + ) ) ], uberModuleForeigns = [], uberModuleExports = [ @@ -54,120 +101,93 @@ UberModule ( Let Nothing ( Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$318", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "nan" ) ) :| [] ) - ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.NumberIsNaN.Test" ) ( Name "logShow" ) ) ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$318" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$318" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] - ) + ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Number" ) ( Name "nan" ) ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) :| [ Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$320", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.NumberIsNaN.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( AppN Nothing ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "numSub" ) ) ) - ( LiteralFloat Nothing 0.0 :| [] ) + ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "sub" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Ring" ) ( Name "ringNumber" ) ) :| [] + ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Number" ) ( Name "nan" ) ) :| [] - ) :| [] - ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$320" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$320" ) ) ) + ( ObjectProp Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Ring" ) ( Name "ringNumber" ) ) + ) + ( PropName "Semiring0" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] + ) + ) + ( PropName "zero" ) :| [] ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Number" ) ( Name "nan" ) ) :| [] ) :| [] - ) + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$322", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.NumberIsNaN.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( AppN Nothing ( AppN Nothing ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "numSub" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Ring" ) ( Name "sub" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Number" ) ( Name "infinity" ) ) :| [] + ( Imported ( ModuleName "Data.Ring" ) ( Name "ringNumber" ) ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "infinity" ) ) :| [] - ) :| [] - ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$322" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$322" ) ) ) ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Number" ) ( Name "infinity" ) ) :| [] ) :| [] - ) + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ), Standalone ( Nothing, Name "_", AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$323", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) - ( LiteralFloat Nothing 42.0 :| [] ) - ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.NumberIsNaN.Test" ) ( Name "logShow" ) ) ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$323" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$323" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] - ) + ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( LiteralFloat Nothing 42.0 :| [] ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) @@ -175,28 +195,15 @@ UberModule ] ) ( AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "a$324", AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Number" ) ( Name "infinity" ) ) :| [] - ) - ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.NumberIsNaN.Test" ) ( Name "logShow" ) ) ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "a$324" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "a$324" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) - ) :| [] - ) + ( Ref Nothing ( Imported ( ModuleName "Data.Number" ) ( Name "isNaN" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Number" ) ( Name "infinity" ) ) :| [] + ) :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) diff --git a/test/ps/output/Golden.NumberIsNaN.Test/golden.lua b/test/ps/output/Golden.NumberIsNaN.Test/golden.lua index baccd194..44d91724 100644 --- a/test/ps/output/Golden.NumberIsNaN.Test/golden.lua +++ b/test/ps/output/Golden.NumberIsNaN.Test/golden.lua @@ -1,7 +1,10 @@ +local Data_Semiring_foreign = { + numAdd = function(x) return function(y) return x + y end end, + numMul = function(x) return function(y) return x * y end end +} local Data_Ring_foreign = { numSub = function(x) return function(y) return x - y end end } -local Data_Ring_numSub = Data_Ring_foreign.numSub local Data_Number_foreign = { nan = 0 / 0, isNaN = function(x) return x ~= x end, @@ -13,66 +16,33 @@ local Data_Number_nan = Data_Number_foreign.nan local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Effect_Console_log = Effect_Console_foreign.log +local Data_Ring_sub = function(dict) return dict.sub end +local Data_Ring_ringNumber = { + sub = Data_Ring_foreign.numSub, + Semiring0 = function() + return { + add = Data_Semiring_foreign.numAdd, + zero = 0.0, + mul = Data_Semiring_foreign.numMul, + one = 1.0 + } + end +} +local Golden_NumberIsNaN_Test_logShow = function(a_S_2) + return Effect_Console_foreign.log((function() + if a_S_2 then + return "true" + elseif false == a_S_2 then + return "false" + else + return error("No patterns matched") + end + end)()) +end return (function() - local _ = (function() - local a_S_318 = Data_Number_isNaN(Data_Number_nan) - return Effect_Console_log((function() - if a_S_318 then - return "true" - elseif false == a_S_318 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_320 = Data_Number_isNaN(Data_Ring_numSub(0.0)(Data_Number_nan)) - return Effect_Console_log((function() - if a_S_320 then - return "true" - elseif false == a_S_320 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_322 = Data_Number_isNaN(Data_Ring_numSub(Data_Number_infinity)(Data_Number_infinity)) - return Effect_Console_log((function() - if a_S_322 then - return "true" - elseif false == a_S_322 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - local _ = (function() - local a_S_323 = Data_Number_isNaN(42.0) - return Effect_Console_log((function() - if a_S_323 then - return "true" - elseif false == a_S_323 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() - return (function() - local a_S_324 = Data_Number_isNaN(Data_Number_infinity) - return Effect_Console_log((function() - if a_S_324 then - return "true" - elseif false == a_S_324 then - return "false" - else - return error("No patterns matched") - end - end)()) - end)()() + local _ = Golden_NumberIsNaN_Test_logShow(Data_Number_isNaN(Data_Number_nan))() + local _ = Golden_NumberIsNaN_Test_logShow(Data_Number_isNaN(Data_Ring_sub(Data_Ring_ringNumber)((Data_Ring_ringNumber.Semiring0()).zero)(Data_Number_nan)))() + local _ = Golden_NumberIsNaN_Test_logShow(Data_Number_isNaN(Data_Ring_sub(Data_Ring_ringNumber)(Data_Number_infinity)(Data_Number_infinity)))() + local _ = Golden_NumberIsNaN_Test_logShow(Data_Number_isNaN(42.0))() + return Golden_NumberIsNaN_Test_logShow(Data_Number_isNaN(Data_Number_infinity))() end)() diff --git a/test/ps/output/Golden.STDoBlock.Test/golden.ir b/test/ps/output/Golden.STDoBlock.Test/golden.ir index bce8b1e9..310be142 100644 --- a/test/ps/output/Golden.STDoBlock.Test/golden.ir +++ b/test/ps/output/Golden.STDoBlock.Test/golden.ir @@ -26,24 +26,6 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) ( PropName "modifyImpl" ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "new" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "new" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "read" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "read" ) - ), Standalone - ( QName - { qnameModuleName = ModuleName "Control.Monad.ST.Internal", qnameName = Name "run" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) ) - ( PropName "run" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "foreign" }, ForeignImport Nothing @@ -55,12 +37,17 @@ UberModule }, AbsN Nothing ( ParamNamed Nothing ( Name "n" ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "run" ) ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "run" ) + ) ( AbsN Nothing ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse481", AbsN Nothing + ( Nothing, Name "$cse495", AbsN Nothing ( ParamNamed Nothing ( Name "s$455" ) :| [] ) ( Let Nothing ( Standalone @@ -82,8 +69,11 @@ UberModule ( Standalone ( Nothing, Name "ref", AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "new" ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "foreign" ) ) + ) + ( PropName "new" ) ) ( LiteralInt Nothing 0 :| [] ) ) @@ -99,7 +89,7 @@ UberModule ( Name "modifyImpl" ) ) ) - ( Ref Nothing ( Local ( Name "$cse481" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse495" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) @@ -116,7 +106,7 @@ UberModule ( Name "modifyImpl" ) ) ) - ( Ref Nothing ( Local ( Name "$cse481" ) ) :| [] ) + ( Ref Nothing ( Local ( Name "$cse495" ) ) :| [] ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) @@ -126,8 +116,14 @@ UberModule ), Standalone ( Nothing, Name "total", AppN Nothing ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "read" ) ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Control.Monad.ST.Internal" ) + ( Name "foreign" ) + ) + ) + ( PropName "read" ) ) ( Ref Nothing ( Local ( Name "ref" ) ) :| [] ) ) @@ -162,97 +158,8 @@ UberModule ( PropName "showIntImpl" ) ) ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "run" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse482", AbsN Nothing - ( ParamNamed Nothing ( Name "s$472" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "s'$473", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "s$472" ) ) ) - ( LiteralInt Nothing 5 ) - ) :| [] - ) - ( LiteralObject Nothing - [ - ( PropName "state", Ref Nothing ( Local ( Name "s'$473" ) ) ), - ( PropName "value", Ref Nothing ( Local ( Name "s'$473" ) ) ) - ] - ) - ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "ref$465", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "new" ) ) - ) - ( LiteralInt Nothing 0 :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.ST.Internal" ) - ( Name "modifyImpl" ) - ) - ) - ( Ref Nothing ( Local ( Name "$cse482" ) ) :| [] ) - ) - ( Ref Nothing ( Local ( Name "ref$465" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Control.Monad.ST.Internal" ) - ( Name "modifyImpl" ) - ) - ) - ( Ref Nothing ( Local ( Name "$cse482" ) ) :| [] ) - ) - ( Ref Nothing ( Local ( Name "ref$465" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ), Standalone - ( Nothing, Name "total$466", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Control.Monad.ST.Internal" ) ( Name "read" ) ) - ) - ( Ref Nothing ( Local ( Name "ref$465" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ] - ) - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "total$466" ) ) ) - ( LiteralInt Nothing 1 ) - ) - ) - ) :| [] - ) :| [] + ( Ref Nothing ( Imported ( ModuleName "Golden.STDoBlock.Test" ) ( Name "sumTwice" ) ) ) + ( LiteralInt Nothing 5 :| [] ) :| [] ) :| [] ) ) diff --git a/test/ps/output/Golden.STDoBlock.Test/golden.lua b/test/ps/output/Golden.STDoBlock.Test/golden.lua index 0b599fdb..f1cc36e2 100644 --- a/test/ps/output/Golden.STDoBlock.Test/golden.lua +++ b/test/ps/output/Golden.STDoBlock.Test/golden.lua @@ -1,4 +1,3 @@ -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Control_Monad_ST_Internal_foreign = { pure_ = function(a) return function() return a end end, @@ -19,33 +18,20 @@ local Control_Monad_ST_Internal_foreign = { end } local Control_Monad_ST_Internal_modifyImpl = Control_Monad_ST_Internal_foreign.modifyImpl -local Control_Monad_ST_Internal_new = Control_Monad_ST_Internal_foreign.new -local Control_Monad_ST_Internal_read = Control_Monad_ST_Internal_foreign.read -local Control_Monad_ST_Internal_run = Control_Monad_ST_Internal_foreign.run local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -M.Golden_STDoBlock_Test_sumTwice = function(n) - return Control_Monad_ST_Internal_run(function() - local _S_cse481 = function(s_S_455) +local Golden_STDoBlock_Test_sumTwice = function(n) + return Control_Monad_ST_Internal_foreign.run(function() + local _S_cse495 = function(s_S_455) local sPrime_S_456 = s_S_455 + n return { state = sPrime_S_456, value = sPrime_S_456 } end - local ref = Control_Monad_ST_Internal_new(0)() - local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse481)(ref)() - local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse481)(ref)() - local total = Control_Monad_ST_Internal_read(ref)() + local ref = Control_Monad_ST_Internal_foreign.new(0)() + local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse495)(ref)() + local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse495)(ref)() + local total = Control_Monad_ST_Internal_foreign.read(ref)() return total + 1 end) end -return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(Control_Monad_ST_Internal_run(function( ) - local _S_cse482 = function(s_S_472) - local sPrime_S_473 = s_S_472 + 5 - return { state = sPrime_S_473, value = sPrime_S_473 } - end - local ref_S_465 = Control_Monad_ST_Internal_new(0)() - local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse482)(ref_S_465)() - local _ = Control_Monad_ST_Internal_modifyImpl(_S_cse482)(ref_S_465)() - local total_S_466 = Control_Monad_ST_Internal_read(ref_S_465)() - return total_S_466 + 1 -end)))() +return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(Golden_STDoBlock_Test_sumTwice(5)))() diff --git a/test/ps/output/Golden.SpecConstr.Test/golden.ir b/test/ps/output/Golden.SpecConstr.Test/golden.ir index a3dcc7ea..00e9537a 100644 --- a/test/ps/output/Golden.SpecConstr.Test/golden.ir +++ b/test/ps/output/Golden.SpecConstr.Test/golden.ir @@ -132,30 +132,30 @@ UberModule ( ParamNamed Nothing ( Name "m" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse465", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse502", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse464", ReflectCtor Nothing + ( Nothing, Name "$cse501", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "m" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse464" ) ) ) + ( Ref Nothing ( Local ( Name "$cse501" ) ) ) ) ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse464" ) ) ) + ( Ref Nothing ( Local ( Name "$cse501" ) ) ) ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse465" ) ) ) + ( Ref Nothing ( Local ( Name "$cse502" ) ) ) ( LiteralInt Nothing 0 ) ) ( LiteralInt Nothing 42 ) @@ -167,7 +167,7 @@ UberModule ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse465" ) ) ) + ( Ref Nothing ( Local ( Name "$cse502" ) ) ) ( LiteralInt Nothing 1 ) :| [] ) ) @@ -216,31 +216,31 @@ UberModule ( ParamNamed Nothing ( Name "t" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse467", DataArgumentByIndex Nothing ProductType 1 + ( Nothing, Name "$cse504", DataArgumentByIndex Nothing ProductType 1 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse466", DataArgumentByIndex Nothing ProductType 0 + ( Nothing, Name "$cse503", DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse466" ) ) ) + ( Ref Nothing ( Local ( Name "$cse503" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "$cse467" ) ) ) + ( Ref Nothing ( Local ( Name "$cse504" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "ping$sc1Tuple" ) ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse466" ) ) ) + ( Ref Nothing ( Local ( Name "$cse503" ) ) ) ( LiteralInt Nothing 1 ) :| [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse467" ) ) ) + ( Ref Nothing ( Local ( Name "$cse504" ) ) ) ( LiteralInt Nothing 2 ) ] ) @@ -283,31 +283,31 @@ UberModule ( ParamNamed Nothing ( Name "t" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse469", DataArgumentByIndex Nothing ProductType 1 + ( Nothing, Name "$cse506", DataArgumentByIndex Nothing ProductType 1 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse468", DataArgumentByIndex Nothing ProductType 0 + ( Nothing, Name "$cse505", DataArgumentByIndex Nothing ProductType 0 ( Ref Nothing ( Local ( Name "t" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "$cse468" ) ) ) + ( Ref Nothing ( Local ( Name "$cse505" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "$cse469" ) ) ) + ( Ref Nothing ( Local ( Name "$cse506" ) ) ) ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.SpecConstr.Test" ) ( Name "pong$sc1Tuple" ) ) ) ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "$cse468" ) ) ) + ( Ref Nothing ( Local ( Name "$cse505" ) ) ) ( LiteralInt Nothing 1 ) :| [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse469" ) ) ) + ( Ref Nothing ( Local ( Name "$cse506" ) ) ) ( LiteralInt Nothing 1 ) ] ) @@ -421,23 +421,23 @@ UberModule [ Let Nothing ( RecursiveGroup ( - ( Nothing, Name "go$448$sc1Tuple", AbsN Nothing + ( Nothing, Name "go$sc1Tuple$494", AbsN Nothing ( ParamNamed Nothing - ( Name "go$448$sc1Tuple$f1" ) :| - [ ParamNamed Nothing ( Name "go$448$sc1Tuple$f2" ) ] + ( Name "go$sc1Tuple$f1$495" ) :| + [ ParamNamed Nothing ( Name "go$sc1Tuple$f2$496" ) ] ) ( IfThenElse Nothing ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple$f2" ) ) ) + ( Ref Nothing ( Local ( Name "go$sc1Tuple$f2$496" ) ) ) ( LiteralInt Nothing 5 ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple" ) ) ) + ( Ref Nothing ( Local ( Name "go$sc1Tuple$494" ) ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple$f1" ) ) ) - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple$f2" ) ) ) :| + ( Ref Nothing ( Local ( Name "go$sc1Tuple$f1$495" ) ) ) + ( Ref Nothing ( Local ( Name "go$sc1Tuple$f2$496" ) ) ) :| [ PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple$f2" ) ) ) + ( Ref Nothing ( Local ( Name "go$sc1Tuple$f2$496" ) ) ) ( LiteralInt Nothing 1 ) ] ) @@ -447,8 +447,8 @@ UberModule ( TyName "Tuple" ) ( CtorName "Tuple" ) [ Ref Nothing - ( Local ( Name "go$448$sc1Tuple$f1" ) ), Ref Nothing - ( Local ( Name "go$448$sc1Tuple$f2" ) ) + ( Local ( Name "go$sc1Tuple$f1$495" ) ), Ref Nothing + ( Local ( Name "go$sc1Tuple$f2$496" ) ) ] ) ) @@ -456,7 +456,7 @@ UberModule ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$448$sc1Tuple" ) ) ) + ( Ref Nothing ( Local ( Name "go$sc1Tuple$494" ) ) ) ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 0 ] ) ) ] diff --git a/test/ps/output/Golden.SpecConstr.Test/golden.lua b/test/ps/output/Golden.SpecConstr.Test/golden.lua index 43cd83d8..b478ff28 100644 --- a/test/ps/output/Golden.SpecConstr.Test/golden.lua +++ b/test/ps/output/Golden.SpecConstr.Test/golden.lua @@ -34,15 +34,15 @@ local Golden_SpecConstr_Test_stepDown_S_sc1Just = function( stepDown_S_sc1Just_S end end local Golden_SpecConstr_Test_stepDown = function(m) - local _S_cse465 = m[2] - local _S_cse464 = m[1] - if "Data.Maybe∷Maybe.Nothing" == _S_cse464 then + local _S_cse502 = m[2] + local _S_cse501 = m[1] + if "Data.Maybe∷Maybe.Nothing" == _S_cse501 then return 0 - elseif "Data.Maybe∷Maybe.Just" == _S_cse464 then - if _S_cse465 == 0 then + elseif "Data.Maybe∷Maybe.Just" == _S_cse501 then + if _S_cse502 == 0 then return 42 else - return Golden_SpecConstr_Test_stepDown_S_sc1Just(_S_cse465 - 1) + return Golden_SpecConstr_Test_stepDown_S_sc1Just(_S_cse502 - 1) end else return error("No patterns matched") @@ -58,12 +58,12 @@ local Golden_SpecConstr_Test_pong_S_sc1Tuple = function( pong_S_sc1Tuple_S_f1 end end M.Golden_SpecConstr_Test_pong = function(t) - local _S_cse467 = t[2] - local _S_cse466 = t[1] - if _S_cse466 == 0 then - return _S_cse467 + local _S_cse504 = t[2] + local _S_cse503 = t[1] + if _S_cse503 == 0 then + return _S_cse504 else - return Golden_SpecConstr_Test_ping_S_sc1Tuple(_S_cse466 - 1, _S_cse467 + 2) + return Golden_SpecConstr_Test_ping_S_sc1Tuple(_S_cse503 - 1, _S_cse504 + 2) end end Golden_SpecConstr_Test_ping_S_sc1Tuple = function( ping_S_sc1Tuple_S_f1 @@ -75,12 +75,12 @@ Golden_SpecConstr_Test_ping_S_sc1Tuple = function( ping_S_sc1Tuple_S_f1 end end M.Golden_SpecConstr_Test_ping = function(t) - local _S_cse469 = t[2] - local _S_cse468 = t[1] - if _S_cse468 == 0 then - return _S_cse469 + local _S_cse506 = t[2] + local _S_cse505 = t[1] + if _S_cse505 == 0 then + return _S_cse506 else - return Golden_SpecConstr_Test_pong_S_sc1Tuple(_S_cse468 - 1, _S_cse469 + 1) + return Golden_SpecConstr_Test_pong_S_sc1Tuple(_S_cse505 - 1, _S_cse506 + 1) end end local Golden_SpecConstr_Test_blind_S_w @@ -102,18 +102,18 @@ return (function() return "(Tuple " .. Data_Show_showIntImpl(v_S_86[1]) .. " " .. Data_Show_showIntImpl(v_S_86[2]) .. ")" end }, (function() - local go_S_448_S_sc1Tuple - go_S_448_S_sc1Tuple = function( go_S_448_S_sc1Tuple_S_f1 - , go_S_448_S_sc1Tuple_S_f2 ) + local go_S_sc1Tuple_S_494 + go_S_sc1Tuple_S_494 = function( go_S_sc1Tuple_S_f1_S_495 + , go_S_sc1Tuple_S_f2_S_496 ) while true do - if go_S_448_S_sc1Tuple_S_f2 < 5 then - go_S_448_S_sc1Tuple_S_f1, go_S_448_S_sc1Tuple_S_f2 = go_S_448_S_sc1Tuple_S_f1 + go_S_448_S_sc1Tuple_S_f2, go_S_448_S_sc1Tuple_S_f2 + 1 + if go_S_sc1Tuple_S_f2_S_496 < 5 then + go_S_sc1Tuple_S_f1_S_495, go_S_sc1Tuple_S_f2_S_496 = go_S_sc1Tuple_S_f1_S_495 + go_S_sc1Tuple_S_f2_S_496, go_S_sc1Tuple_S_f2_S_496 + 1 else - return { go_S_448_S_sc1Tuple_S_f1, go_S_448_S_sc1Tuple_S_f2 } + return { go_S_sc1Tuple_S_f1_S_495, go_S_sc1Tuple_S_f2_S_496 } end end end - return go_S_448_S_sc1Tuple(0, 0) + return go_S_sc1Tuple_S_494(0, 0) 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({ diff --git a/test/ps/output/Golden.StringCodePoints.Test/golden.ir b/test/ps/output/Golden.StringCodePoints.Test/golden.ir index ddd75e9c..81d417bc 100644 --- a/test/ps/output/Golden.StringCodePoints.Test/golden.ir +++ b/test/ps/output/Golden.StringCodePoints.Test/golden.ir @@ -85,12 +85,6 @@ UberModule ( ModuleName "Data.Enum" ) ".spago/p/enums/e85567b064ace664fca544c390c8db528514109a/src/Data/Enum.purs" [ ( Nothing, Name "toCharCode" ), ( Nothing, Name "fromCharCode" ) ] ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.Enum", qnameName = Name "fromCharCode" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "foreign" ) ) ) - ( PropName "fromCharCode" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.Enum", qnameName = Name "toCharCode" }, ObjectProp Nothing @@ -121,12 +115,6 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "foreign" ) ) ) ( PropName "length" ) ), Standalone - ( QName - { qnameModuleName = ModuleName "Data.String.CodeUnits", qnameName = Name "singleton" - }, ObjectProp Nothing - ( Ref Nothing ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "foreign" ) ) ) - ( PropName "singleton" ) - ), Standalone ( QName { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "foreign" }, ForeignImport Nothing @@ -377,6 +365,53 @@ UberModule [ Ref Nothing ( Local ( Name "value0" ) ) ] ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.Maybe", qnameName = Name "showMaybe" }, AbsN Nothing + ( ParamNamed Nothing ( Name "dictShow" ) :| [] ) + ( LiteralObject Nothing + [ + ( PropName "show", AbsN Nothing + ( ParamNamed Nothing ( Name "v" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse1843", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v" ) ) ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( Ref Nothing ( Local ( Name "$cse1843" ) ) ) + ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "(Just " ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Local ( Name "dictShow" ) ) ) + ( PropName "show" ) + ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v" ) ) ) :| [] + ) + ) + ( LiteralString Nothing ")" ) + ) + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( Ref Nothing ( Local ( Name "$cse1843" ) ) ) + ) + ( LiteralString Nothing "Nothing" ) + ( Exception Nothing "No patterns matched" ) + ) + ) + ) + ) + ] + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Data.Enum", qnameName = Name "bottom1" }, Ref Nothing ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) @@ -567,383 +602,178 @@ UberModule ) ), Standalone ( QName - { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "singletonFallback" + { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "fromCharCode" }, AbsN Nothing - ( ParamNamed Nothing ( Name "v" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse1777", ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.HeytingAlgebra" ) ( Name "heytingAlgebraBoolean" ) ) - ) - ( PropName "conj" ) - ) :| [] + ( ParamNamed Nothing ( Name "x$1726" ) :| [] ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "foreign" ) ) ) + ( PropName "singleton" ) ) - ( 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.CodeUnits" ) ( Name "singleton" ) ) - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$1765", IfThenElse Nothing + ( Let Nothing + ( Standalone + ( Nothing, Name "v$60", IfThenElse Nothing + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.HeytingAlgebra" ) + ( Name "heytingAlgebraBoolean" ) + ) + ) + ( PropName "conj" ) + ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse1777" ) ) ) - ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Ord" ) ( Name "greaterThanOrEq$w" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| + [ Ref Nothing + ( Local ( Name "x$1726" ) ), AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "greaterThanOrEq$w" ) ) + ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "v" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "bottom1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( AppN Nothing + ( Imported ( ModuleName "Data.Enum" ) ( Name "bottom1" ) ) :| [] + ) + ] + ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThanOrEq$w" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| + [ Ref Nothing + ( Local ( Name "x$1726" ) ), AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThanOrEq$w" ) ) + ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "v" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "top1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "fromCharCode" ) ) + ( Imported ( ModuleName "Data.Enum" ) ( Name "top1" ) ) :| [] ) - ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) ] + ) :| [] + ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Enum" ) ( Name "foreign" ) ) ) + ( PropName "fromCharCode" ) ) - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) - ) :| [] + ( Ref Nothing ( Local ( Name "x$1726" ) ) :| [] ) + ] + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$60" ) ) ) ) + ) + ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v$60" ) ) ) ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$60" ) ) ) ) ) ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1765" ) ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1765" ) ) ) - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1765" ) ) ) ) - ) - ( IfThenElse Nothing - ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThan$w" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| + [ Ref Nothing + ( Local ( Name "x$1726" ) ), AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThan$w" ) ) + ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) ) ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "v" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) :| [] - ) - ] + ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) :| [] ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) - ) - ( Ref Nothing ( Imported ( ModuleName "Data.Bounded" ) ( Name "topChar" ) ) ) + ] ) - ( Exception Nothing "No patterns matched" ) ) - ) :| [] + ( Ref Nothing ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Bounded" ) ( Name "topChar" ) ) ) + ) + ( Exception Nothing "No patterns matched" ) ) + ) :| [] + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Data.String.CodePoints", qnameName = Name "singletonFallback" + }, 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 ] ) - ( PrimBinOp Nothing PrimConcat - ( Let Nothing - ( Standalone - ( Nothing, Name "x$1766", PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.EuclideanRing" ) ( Name "foreign" ) ) - ) - ( PropName "intDiv" ) - ) - ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "v" ) ) ) - ( LiteralInt Nothing 65536 ) :| [] - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "fromCharCode" ) ) + ) + ( Ref Nothing ( Local ( Name "v" ) ) :| [] ) + ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "fromCharCode" ) ) + ) + ( PrimBinOp Nothing PrimAdd + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.EuclideanRing" ) ( Name "foreign" ) ) ) - ( LiteralInt Nothing 1024 :| [] ) + ( PropName "intDiv" ) ) - ( LiteralInt Nothing 55296 ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "singleton" ) ) - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$1767", IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse1777" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "greaterThanOrEq$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "x$1766" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "bottom1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThanOrEq$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "x$1766" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "top1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "fromCharCode" ) ) - ) - ( Ref Nothing ( Local ( Name "x$1766" ) ) :| [] ) - ] - ) - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) - ) :| [] + ( PrimBinOp Nothing PrimSub + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( LiteralInt Nothing 65536 ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1767" ) ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1767" ) ) ) - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1767" ) ) ) ) - ) - ( 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 "x$1766" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Bounded" ) - ( Name "bottomChar" ) - ) :| [] - ) - ] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "topChar" ) ) - ) - ) - ( Exception Nothing "No patterns matched" ) - ) - ) :| [] ) + ( LiteralInt Nothing 1024 :| [] ) ) + ( LiteralInt Nothing 55296 ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "x$1768", PrimBinOp Nothing PrimAdd - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.EuclideanRing" ) ( Name "foreign" ) ) - ) - ( PropName "intMod" ) - ) - ( PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "v" ) ) ) - ( LiteralInt Nothing 65536 ) :| [] - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "fromCharCode" ) ) + ) + ( PrimBinOp Nothing PrimAdd + ( AppN Nothing + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.EuclideanRing" ) ( Name "foreign" ) ) ) - ( LiteralInt Nothing 1024 :| [] ) + ( PropName "intMod" ) ) - ( LiteralInt Nothing 56320 ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "singleton" ) ) - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v$1769", IfThenElse Nothing - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "$cse1777" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "greaterThanOrEq$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "x$1768" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "bottom1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "lessThanOrEq$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Ord" ) ( Name "ordInt" ) ) :| - [ Ref Nothing - ( Local ( Name "x$1768" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "top1" ) ) :| [] - ) - ] - ) :| [] - ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "fromCharCode" ) ) - ) - ( Ref Nothing ( Local ( Name "x$1768" ) ) :| [] ) - ] - ) - ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) - ) :| [] + ( PrimBinOp Nothing PrimSub + ( Ref Nothing ( Local ( Name "v" ) ) ) + ( LiteralInt Nothing 65536 ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1769" ) ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1769" ) ) ) - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$1769" ) ) ) ) - ) - ( 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 "x$1768" ) ), AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Enum" ) ( Name "toCharCode" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Bounded" ) - ( Name "bottomChar" ) - ) :| [] - ) - ] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "bottomChar" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Bounded" ) ( Name "topChar" ) ) - ) - ) - ( Exception Nothing "No patterns matched" ) - ) - ) :| [] ) + ( LiteralInt Nothing 1024 :| [] ) ) + ( LiteralInt Nothing 56320 ) :| [] ) ) ) @@ -1210,20 +1040,20 @@ UberModule ( ParamNamed Nothing ( Name "v2$1524" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse1778", ReflectCtor Nothing + ( Nothing, Name "$cse1844", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v2$1524" ) ) ) ) :| [] ) ( PrimBinOp Nothing PrimOr ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse1778" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1844" ) ) ) ) ( PrimBinOp Nothing PrimAnd ( PrimNot Nothing ( Eq Nothing ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse1778" ) ) ) + ( Ref Nothing ( Local ( Name "$cse1844" ) ) ) ) ) ( Exception Nothing "No patterns matched" ) @@ -1640,6 +1470,20 @@ UberModule ) ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Effect.Console", qnameName = Name "logShow" }, AbsN Nothing + ( ParamNamed Nothing ( Name "logShow$p1" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "logShow$p2" ) :| [] ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) + ( Ref Nothing + ( Local ( Name "logShow$p1" ) ) :| + [ Ref Nothing ( Local ( Name "logShow$p2" ) ) ] + ) + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "fromEnum" }, ObjectProp Nothing @@ -1658,10 +1502,19 @@ UberModule ) ] ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "logShow2" + }, AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "showMaybe" ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| [] ) :| [] + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "cp" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$1669" ) :| [] ) + ( ParamNamed Nothing ( Name "x$1689" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Partial.Unsafe" ) ( Name "_unsafePartial" ) ) ) @@ -1689,14 +1542,14 @@ UberModule ) ( PropName "toEnum" ) ) - ( Ref Nothing ( Local ( Name "x$1669" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "x$1689" ) ) :| [] ) :| [] ) ) ), Standalone ( QName { qnameModuleName = ModuleName "Golden.StringCodePoints.Test", qnameName = Name "codes" }, AbsN Nothing - ( ParamNamed Nothing ( Name "x$1666" ) :| [] ) + ( ParamNamed Nothing ( Name "x$1686" ) :| [] ) ( AppN Nothing ( AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) @@ -1708,7 +1561,7 @@ UberModule ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "toCodePointArray" ) ) ) - ( Ref Nothing ( Local ( Name "x$1666" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "x$1686" ) ) :| [] ) :| [] ) ) ) @@ -1722,51 +1575,80 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse1779", LiteralObject Nothing - [ - ( PropName "show", AbsN Nothing - ( ParamNamed Nothing ( Name "v$1722" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse1780", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$1722" ) ) ) - ) :| [] + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "showArray" ) + ) :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "fromEnum" ) + ) :| [] + ) ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse1780" ) ) ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) + ) ) - ( 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$1722" ) ) ) :| [] - ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] + ) + ] + ) + ) + ( 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 + ( ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Array" ) ( Name "foreign" ) ) ) + ( PropName "length" ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) ) - ( LiteralString Nothing ")" ) ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse1780" ) ) ) - ) - ( LiteralString Nothing "Nothing" ) - ( Exception Nothing "No patterns matched" ) + ] + ) + ) + ( 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 "Data.String.CodeUnits" ) ( Name "length" ) ) ) - ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) + ] ) ) - ] - ) :| [] - ) - ( 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" ) ) ) @@ -1794,583 +1676,467 @@ UberModule ( Name "toCodePointArray" ) ) ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "take$w" ) ) + ) + ( LiteralInt Nothing 2 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) :| [] + ) :| [] ) ] ) ) ( 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 - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Array" ) ( Name "foreign" ) ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "showArray" ) + ) :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "fromEnum" ) + ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) ) - ( PropName "length" ) ) ( AppN Nothing ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) - ) + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "drop$w" ) ) ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] - ) - ] - ) + ( LiteralInt Nothing 2 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) :| [] + ) :| [] + ) + ] ) - ( 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 "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "logShow2" ) ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v1$1756", AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodeUnits" ) ( Name "length" ) ) + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "codePointAt$w" ) + ) ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) - ] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ), Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) + ( LiteralInt Nothing 0 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) + ) :| [] ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "showArray" ) - ) :| - [ AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) - ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1756" ) ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "fromEnum" ) - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "take$w" ) ) - ) - ( LiteralInt Nothing 2 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) :| [] - ) :| [] - ) - ] - ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1$1756" ) ) ) :| [] + ) + ] + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "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 "Golden.StringCodePoints.Test" ) - ( Name "showArray" ) - ) :| - [ AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "logShow2" ) ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v1$1758", AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "codePointAt$w" ) ) + ) + ( LiteralInt Nothing 3 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1758" ) ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "fromEnum" ) - ) :| [] + ) + ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1$1758" ) ) ) :| [] + ) + ] + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "logShow2" ) ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v1$1760", AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "codePointAt$w" ) ) ) - ( AppN Nothing + ( LiteralInt Nothing 5 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1760" ) ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing ( Ref Nothing ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "fromEnum" ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "drop$w" ) ) - ) - ( LiteralInt Nothing 2 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) :| [] - ) :| [] - ) - ] - ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1$1760" ) ) ) :| [] + ) + ] + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "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 "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "logShow2" ) ) + ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v1$1765", AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) + ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) + ) :| [] ) - ( Ref Nothing - ( Local ( Name "$cse1779" ) ) :| - [ Let Nothing - ( Standalone - ( Nothing, Name "v1$1720", AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "codePointAt$w" ) - ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1765" ) ) ) ) + ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "fromEnum" ) ) - ( LiteralInt Nothing 0 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1720" ) ) ) ) ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "fromEnum" ) - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1720" ) ) ) :| [] - ) - ] - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ( ObjectProp Nothing + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v1$1765" ) ) ) + ) + ( PropName "head" ) :| [] ) - ) - ] - ) + ] + ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "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 - ( Local ( Name "$cse1779" ) ) :| - [ Let Nothing - ( Standalone - ( Nothing, Name "v1$1728", AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "codePointAt$w" ) - ) - ) - ( LiteralInt Nothing 3 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1728" ) ) ) ) + ) + ( 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$1680" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse1845", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v$1680" ) ) ) + ) :| [] ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "fromEnum" ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( Ref Nothing ( Local ( Name "$cse1845" ) ) ) + ) + ( PrimBinOp Nothing PrimConcat + ( LiteralString Nothing "(Just " ) + ( PrimBinOp Nothing PrimConcat + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.Show" ) + ( Name "showArrayImpl" ) + ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Data.Show" ) + ( Name "showIntImpl" ) + ) :| [] + ) + ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v$1680" ) ) ) :| [] + ) ) + ( LiteralString Nothing ")" ) ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1728" ) ) ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( Ref Nothing ( Local ( Name "$cse1845" ) ) ) ) - ] + ( LiteralString Nothing "Nothing" ) + ( Exception Nothing "No patterns matched" ) + ) ) + ) + ) + ] :| + [ Let Nothing + ( Standalone + ( Nothing, Name "v1$1774", AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) + ) :| [] + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1774" ) ) ) ) ) - ] - ) - ) - ( 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 "$cse1779" ) ) :| - [ Let Nothing - ( Standalone - ( Nothing, Name "v1$1736", AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "codePointAt$w" ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) - ) - ( LiteralInt Nothing 5 :| [ LiteralString Nothing "aéЯ𝐀z" ] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1736" ) ) ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing ( Ref Nothing ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "fromEnum" ) - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1736" ) ) ) :| [] + ) :| [] ) - ] - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "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 - ( Local ( Name "$cse1779" ) ) :| - [ Let Nothing - ( Standalone - ( Nothing, Name "v1$1747", AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1747" ) ) ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing + ( AppN Nothing ( Ref Nothing ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "fromEnum" ) + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) ) ) ( ObjectProp Nothing ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1747" ) ) ) + ( Ref Nothing ( Local ( Name "v1$1774" ) ) ) ) - ( PropName "head" ) :| [] - ) - ] - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) - ) - ) - ] - ) - ) - ( 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$1660" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse1781", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$1660" ) ) ) + ( PropName "tail" ) :| [] ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse1781" ) ) ) - ) - ( PrimBinOp Nothing PrimConcat - ( LiteralString Nothing "(Just " ) - ( PrimBinOp Nothing PrimConcat - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show" ) - ( Name "showArrayImpl" ) - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show" ) - ( Name "showIntImpl" ) - ) :| [] - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1660" ) ) ) :| [] - ) - ) - ( LiteralString Nothing ")" ) - ) - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse1781" ) ) ) - ) - ( LiteralString Nothing "Nothing" ) - ( Exception Nothing "No patterns matched" ) - ) - ) - ) - ) - ] :| - [ Let Nothing - ( Standalone - ( Nothing, Name "v1$1762", AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "uncons" ) ) - ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v1$1762" ) ) ) ) - ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "fromEnum" ) - ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) - ) - ) - ( ObjectProp Nothing - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v1$1762" ) ) ) - ) - ( PropName "tail" ) :| [] - ) :| [] - ) - ] - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) - ) + ] ) - ] - ) + ( Ref Nothing ( Imported ( ModuleName "Data.Maybe" ) ( Name "Nothing" ) ) ) + ) + ] ) - ( 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$1236" ) :| [] ) + ) + ( 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$1236" ) :| [] ) + ( IfThenElse Nothing + ( Ref Nothing ( Local ( Name "v$1236" ) ) ) + ( LiteralString Nothing "true" ) ( IfThenElse Nothing - ( Ref Nothing ( Local ( Name "v$1236" ) ) ) - ( LiteralString Nothing "true" ) - ( IfThenElse Nothing - ( Eq Nothing ( LiteralBool Nothing False ) - ( Ref Nothing ( Local ( Name "v$1236" ) ) ) - ) - ( LiteralString Nothing "false" ) - ( Exception Nothing "No patterns matched" ) + ( Eq Nothing ( LiteralBool Nothing False ) + ( Ref Nothing ( Local ( Name "v$1236" ) ) ) ) + ( LiteralString Nothing "false" ) + ( Exception Nothing "No patterns matched" ) ) ) - ] :| - [ Eq Nothing + ) + ] :| + [ Eq Nothing + ( AppN Nothing ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "foreign" ) - ) - ) - ( PropName "_fromCodePointArray" ) - ) + ( ObjectProp Nothing ( Ref Nothing ( Imported ( ModuleName "Data.String.CodePoints" ) - ( Name "singletonFallback" ) - ) :| [] + ( Name "foreign" ) + ) ) + ( PropName "_fromCodePointArray" ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "singletonFallback" ) + ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) ) - ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] ) + ( LiteralString Nothing "aéЯ𝐀z" :| [] ) :| [] ) - ( LiteralString Nothing "aéЯ𝐀z" ) - ] - ) + ) + ( LiteralString Nothing "aéЯ𝐀z" ) + ] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) - ] - ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing ( AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "showArray" ) - ) :| - [ AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.StringCodePoints.Test" ) - ( Name "fromEnum" ) - ) :| [] + ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.StringCodePoints.Test" ) ( Name "showArray" ) ) :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.StringCodePoints.Test" ) + ( Name "fromEnum" ) + ) :| [] + ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "toCodePointArray" ) ) ) ( AppN Nothing ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "toCodePointArray" ) - ) + ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "singleton" ) ) ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.String.CodePoints" ) ( Name "singleton" ) ) - ) ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Partial.Unsafe" ) ( Name "_unsafePartial" ) ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Partial.Unsafe" ) ( Name "_unsafePartial" ) ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v$1775" ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$1775" ) ) ) - ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$1775" ) ) ) + ( ParamNamed Nothing ( Name "v$1801" ) :| [] ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v$1801" ) ) ) ) - ( Exception Nothing "No patterns matched" ) ) - ) :| [] - ) - ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.String.CodePoints" ) - ( Name "boundedEnumCodePoint" ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v$1801" ) ) ) ) + ( Exception Nothing "No patterns matched" ) + ) + ) :| [] + ) + ) + ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Data.String.CodePoints" ) + ( Name "boundedEnumCodePoint" ) ) - ( PropName "toEnum" ) ) - ( LiteralInt Nothing 119808 :| [] ) :| [] - ) :| [] + ( PropName "toEnum" ) + ) + ( LiteralInt Nothing 119808 :| [] ) :| [] ) :| [] ) :| [] - ) - ] - ) + ) :| [] + ) + ] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ), diff --git a/test/ps/output/Golden.StringCodePoints.Test/golden.lua b/test/ps/output/Golden.StringCodePoints.Test/golden.lua index d78d7f13..d7b4ad66 100644 --- a/test/ps/output/Golden.StringCodePoints.Test/golden.lua +++ b/test/ps/output/Golden.StringCodePoints.Test/golden.lua @@ -130,7 +130,6 @@ local Data_Enum_foreign = { return string.char(240 + math.floor(n / 262144), 128 + math.floor(n / 4096) % 64, 128 + math.floor(n / 64) % 64, 128 + n % 64) end } -local Data_Enum_fromCharCode = Data_Enum_foreign.fromCharCode local Data_Enum_toCharCode = Data_Enum_foreign.toCharCode local Data_String_Unsafe_foreign = { charAt = function(i) @@ -152,7 +151,6 @@ local Data_String_CodeUnits_foreign = { drop = function(n) return function(s) return s:sub(math.max(n, 0) + 1) end end } local Data_String_CodeUnits_length = Data_String_CodeUnits_foreign.length -local Data_String_CodeUnits_singleton = Data_String_CodeUnits_foreign.singleton local Data_String_CodePoints_foreign = (function() -- In pslua a PureScript String is a Lua byte string holding UTF-8, -- so code-point operations decode/encode UTF-8 directly. The PureScript @@ -314,6 +312,20 @@ local Data_Maybe_Nothing = { "Data.Maybe∷Maybe.Nothing" } local Data_Maybe_Just = function(value0) return { "Data.Maybe∷Maybe.Just", value0 } end +local Data_Maybe_showMaybe = function(dictShow) + return { + show = function(v) + local _S_cse1843 = v[1] + if "Data.Maybe∷Maybe.Just" == _S_cse1843 then + return "(Just " .. dictShow.show(v[2]) .. ")" + elseif "Data.Maybe∷Maybe.Nothing" == _S_cse1843 then + return "Nothing" + else + return error("No patterns matched") + end + end + } +end local Data_Enum_bottom1 = Data_Bounded_bottomChar local Data_Enum_top1 = Data_Bounded_topChar local Data_String_CodePoints_conj = Data_HeytingAlgebra_heytingAlgebraBoolean.conj @@ -342,81 +354,36 @@ local Data_String_CodePoints_unsafeCodePointAt0 = Data_String_CodePoints_foreign return cu0_S_25 end end) -local Data_String_CodePoints_singletonFallback = function(v) - local _S_cse1777 = Data_HeytingAlgebra_heytingAlgebraBoolean.conj - if Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, v, 65535) then - return Data_String_CodeUnits_singleton((function() - local v_S_1765 = (function() - if _S_cse1777(Data_Ord_greaterThanOrEq_S_w(Data_Ord_ordInt, v, Data_Enum_toCharCode(Data_Enum_bottom1)))(Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, v, Data_Enum_toCharCode(Data_Enum_top1))) then - return { "Data.Maybe∷Maybe.Just", (Data_Enum_fromCharCode(v)) } - else - return Data_Maybe_Nothing - end - end)() - if "Data.Maybe∷Maybe.Just" == v_S_1765[1] then - return v_S_1765[2] - elseif "Data.Maybe∷Maybe.Nothing" == v_S_1765[1] then - if Data_Ord_lessThan_S_w(Data_Ord_ordInt, v, Data_Enum_toCharCode(Data_Bounded_bottomChar)) then - return Data_Bounded_bottomChar - else - return Data_Bounded_topChar - end +local Data_String_CodePoints_fromCharCode = function(x_S_1726) + return Data_String_CodeUnits_foreign.singleton((function() + local v_S_60 = (function() + if Data_HeytingAlgebra_heytingAlgebraBoolean.conj(Data_Ord_greaterThanOrEq_S_w(Data_Ord_ordInt, x_S_1726, Data_Enum_toCharCode(Data_Enum_bottom1)))(Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, x_S_1726, Data_Enum_toCharCode(Data_Enum_top1))) then + return { + "Data.Maybe∷Maybe.Just", + (Data_Enum_foreign.fromCharCode(x_S_1726)) + } else - return error("No patterns matched") + return Data_Maybe_Nothing end - end)()) - else - return (function() - local x_S_1766 = Data_EuclideanRing_foreign.intDiv(v - 65536)(1024) + 55296 - return Data_String_CodeUnits_singleton((function() - local v_S_1767 = (function() - if _S_cse1777(Data_Ord_greaterThanOrEq_S_w(Data_Ord_ordInt, x_S_1766, Data_Enum_toCharCode(Data_Enum_bottom1)))(Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, x_S_1766, Data_Enum_toCharCode(Data_Enum_top1))) then - return { - "Data.Maybe∷Maybe.Just", - (Data_Enum_fromCharCode(x_S_1766)) - } - else - return Data_Maybe_Nothing - end - end)() - if "Data.Maybe∷Maybe.Just" == v_S_1767[1] then - return v_S_1767[2] - elseif "Data.Maybe∷Maybe.Nothing" == v_S_1767[1] then - if Data_Ord_lessThan_S_w(Data_Ord_ordInt, x_S_1766, Data_Enum_toCharCode(Data_Bounded_bottomChar)) then - return Data_Bounded_bottomChar - else - return Data_Bounded_topChar - end - else - return error("No patterns matched") - end - end)()) - end)() .. (function() - local x_S_1768 = Data_EuclideanRing_foreign.intMod(v - 65536)(1024) + 56320 - return Data_String_CodeUnits_singleton((function() - local v_S_1769 = (function() - if _S_cse1777(Data_Ord_greaterThanOrEq_S_w(Data_Ord_ordInt, x_S_1768, Data_Enum_toCharCode(Data_Enum_bottom1)))(Data_Ord_lessThanOrEq_S_w(Data_Ord_ordInt, x_S_1768, Data_Enum_toCharCode(Data_Enum_top1))) then - return { - "Data.Maybe∷Maybe.Just", - (Data_Enum_fromCharCode(x_S_1768)) - } - else - return Data_Maybe_Nothing - end - end)() - if "Data.Maybe∷Maybe.Just" == v_S_1769[1] then - return v_S_1769[2] - elseif "Data.Maybe∷Maybe.Nothing" == v_S_1769[1] then - if Data_Ord_lessThan_S_w(Data_Ord_ordInt, x_S_1768, Data_Enum_toCharCode(Data_Bounded_bottomChar)) then - return Data_Bounded_bottomChar - else - return Data_Bounded_topChar - end - else - return error("No patterns matched") - end - end)()) end)() + if "Data.Maybe∷Maybe.Just" == v_S_60[1] then + return v_S_60[2] + elseif "Data.Maybe∷Maybe.Nothing" == v_S_60[1] then + if Data_Ord_lessThan_S_w(Data_Ord_ordInt, x_S_1726, Data_Enum_toCharCode(Data_Bounded_bottomChar)) then + return Data_Bounded_bottomChar + else + return Data_Bounded_topChar + end + else + return error("No patterns matched") + end + 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 + return Data_String_CodePoints_fromCharCode(Data_EuclideanRing_foreign.intDiv(v - 65536)(1024) + 55296) .. Data_String_CodePoints_fromCharCode(Data_EuclideanRing_foreign.intMod(v - 65536)(1024) + 56320) end end local Data_String_CodePoints_singleton = Data_String_CodePoints_foreign._singleton(Data_String_CodePoints_singletonFallback) @@ -480,8 +447,8 @@ Data_String_CodePoints_drop_S_w = function(n, s) end local Data_String_CodePoints_toCodePointArray = Data_String_CodePoints_foreign._toCodePointArray(function( s_S_7 ) return Data_Unfoldable_foreign.unfoldrArrayImpl(function(v2_S_1524) - local _S_cse1778 = v2_S_1524[1] - return "Data.Maybe∷Maybe.Nothing" == _S_cse1778 or "Data.Maybe∷Maybe.Just" ~= _S_cse1778 and error("No patterns matched") + local _S_cse1844 = v2_S_1524[1] + return "Data.Maybe∷Maybe.Nothing" == _S_cse1844 or "Data.Maybe∷Maybe.Just" ~= _S_cse1844 and error("No patterns matched") end)(Partial_Unsafe__unsafePartial(function() return function(v_S_1574) if "Data.Maybe∷Maybe.Just" == v_S_1574[1] then @@ -573,11 +540,17 @@ end) local Effect_Console_logShow_S_w = function(dictShow, a) return Effect_Console_foreign.log(dictShow.show(a)) end +local Effect_Console_logShow = function(logShow_S_p1) + return function(logShow_S_p2) + return Effect_Console_logShow_S_w(logShow_S_p1, logShow_S_p2) + end +end local Golden_StringCodePoints_Test_fromEnum = Data_String_CodePoints_boundedEnumCodePoint.fromEnum local Golden_StringCodePoints_Test_showArray = { show = Data_Show_showArrayImpl(Data_Show_showIntImpl) } -M.Golden_StringCodePoints_Test_cp = function(x_S_1669) +local Golden_StringCodePoints_Test_logShow2 = Effect_Console_logShow(Data_Maybe_showMaybe(Data_Show_showInt)) +M.Golden_StringCodePoints_Test_cp = function(x_S_1689) return Partial_Unsafe__unsafePartial(function() return function(v_S_1532) if "Data.Maybe∷Maybe.Just" == v_S_1532[1] then @@ -586,90 +559,78 @@ M.Golden_StringCodePoints_Test_cp = function(x_S_1669) return error("No patterns matched") end end - end)(Data_String_CodePoints_boundedEnumCodePoint.toEnum(x_S_1669)) + end)(Data_String_CodePoints_boundedEnumCodePoint.toEnum(x_S_1689)) end -M.Golden_StringCodePoints_Test_codes = function(x_S_1666) - return Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(x_S_1666)) +M.Golden_StringCodePoints_Test_codes = function(x_S_1686) + return Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(x_S_1686)) end return (function() - local _S_cse1779 = { - show = function(v_S_1722) - local _S_cse1780 = v_S_1722[1] - if "Data.Maybe∷Maybe.Just" == _S_cse1780 then - return "(Just " .. Data_Show_showIntImpl(v_S_1722[2]) .. ")" - elseif "Data.Maybe∷Maybe.Nothing" == _S_cse1780 then - return "Nothing" - else - return error("No patterns matched") - end - end - } local _ = Effect_Console_logShow_S_w(Golden_StringCodePoints_Test_showArray, Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray("aéЯ𝐀z")))() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Data_Array_foreign.length(Data_String_CodePoints_toCodePointArray("aéЯ𝐀z")))() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, Data_String_CodeUnits_length("aéЯ𝐀z"))() local _ = Effect_Console_logShow_S_w(Golden_StringCodePoints_Test_showArray, Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(Data_String_CodePoints_take_S_w(2, "aéЯ𝐀z"))))() local _ = Effect_Console_logShow_S_w(Golden_StringCodePoints_Test_showArray, Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(Data_String_CodePoints_drop_S_w(2, "aéЯ𝐀z"))))() - local _ = Effect_Console_logShow_S_w(_S_cse1779, (function() - local v1_S_1720 = Data_String_CodePoints_codePointAt_S_w(0, "aéЯ𝐀z") - if "Data.Maybe∷Maybe.Just" == v1_S_1720[1] then + local _ = Golden_StringCodePoints_Test_logShow2((function() + local v1_S_1756 = Data_String_CodePoints_codePointAt_S_w(0, "aéЯ𝐀z") + if "Data.Maybe∷Maybe.Just" == v1_S_1756[1] then return { "Data.Maybe∷Maybe.Just", - (Golden_StringCodePoints_Test_fromEnum(v1_S_1720[2])) + (Golden_StringCodePoints_Test_fromEnum(v1_S_1756[2])) } else return Data_Maybe_Nothing end end)())() - local _ = Effect_Console_logShow_S_w(_S_cse1779, (function() - local v1_S_1728 = Data_String_CodePoints_codePointAt_S_w(3, "aéЯ𝐀z") - if "Data.Maybe∷Maybe.Just" == v1_S_1728[1] then + local _ = Golden_StringCodePoints_Test_logShow2((function() + local v1_S_1758 = Data_String_CodePoints_codePointAt_S_w(3, "aéЯ𝐀z") + if "Data.Maybe∷Maybe.Just" == v1_S_1758[1] then return { "Data.Maybe∷Maybe.Just", - (Golden_StringCodePoints_Test_fromEnum(v1_S_1728[2])) + (Golden_StringCodePoints_Test_fromEnum(v1_S_1758[2])) } else return Data_Maybe_Nothing end end)())() - local _ = Effect_Console_logShow_S_w(_S_cse1779, (function() - local v1_S_1736 = Data_String_CodePoints_codePointAt_S_w(5, "aéЯ𝐀z") - if "Data.Maybe∷Maybe.Just" == v1_S_1736[1] then + local _ = Golden_StringCodePoints_Test_logShow2((function() + local v1_S_1760 = Data_String_CodePoints_codePointAt_S_w(5, "aéЯ𝐀z") + if "Data.Maybe∷Maybe.Just" == v1_S_1760[1] then return { "Data.Maybe∷Maybe.Just", - (Golden_StringCodePoints_Test_fromEnum(v1_S_1736[2])) + (Golden_StringCodePoints_Test_fromEnum(v1_S_1760[2])) } else return Data_Maybe_Nothing end end)())() - local _ = Effect_Console_logShow_S_w(_S_cse1779, (function() - local v1_S_1747 = Data_String_CodePoints_uncons("aéЯ𝐀z") - if "Data.Maybe∷Maybe.Just" == v1_S_1747[1] then + local _ = Golden_StringCodePoints_Test_logShow2((function() + local v1_S_1765 = Data_String_CodePoints_uncons("aéЯ𝐀z") + if "Data.Maybe∷Maybe.Just" == v1_S_1765[1] then return { "Data.Maybe∷Maybe.Just", - (Golden_StringCodePoints_Test_fromEnum(v1_S_1747[2].head)) + (Golden_StringCodePoints_Test_fromEnum(v1_S_1765[2].head)) } else return Data_Maybe_Nothing end end)())() local _ = Effect_Console_logShow_S_w({ - show = function(v_S_1660) - local _S_cse1781 = v_S_1660[1] - if "Data.Maybe∷Maybe.Just" == _S_cse1781 then - return "(Just " .. Data_Show_showArrayImpl(Data_Show_showIntImpl)(v_S_1660[2]) .. ")" - elseif "Data.Maybe∷Maybe.Nothing" == _S_cse1781 then + show = function(v_S_1680) + local _S_cse1845 = v_S_1680[1] + if "Data.Maybe∷Maybe.Just" == _S_cse1845 then + return "(Just " .. Data_Show_showArrayImpl(Data_Show_showIntImpl)(v_S_1680[2]) .. ")" + elseif "Data.Maybe∷Maybe.Nothing" == _S_cse1845 then return "Nothing" else return error("No patterns matched") end end }, (function() - local v1_S_1762 = Data_String_CodePoints_uncons("aéЯ𝐀z") - if "Data.Maybe∷Maybe.Just" == v1_S_1762[1] then + local v1_S_1774 = Data_String_CodePoints_uncons("aéЯ𝐀z") + if "Data.Maybe∷Maybe.Just" == v1_S_1774[1] then return { "Data.Maybe∷Maybe.Just", - (Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(v1_S_1762[2].tail))) + (Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(v1_S_1774[2].tail))) } else return Data_Maybe_Nothing @@ -687,9 +648,9 @@ return (function() end }, Data_String_CodePoints_foreign._fromCodePointArray(Data_String_CodePoints_singletonFallback)(Data_String_CodePoints_toCodePointArray("aéЯ𝐀z")) == "aéЯ𝐀z")() return Effect_Console_logShow_S_w(Golden_StringCodePoints_Test_showArray, Data_Functor_arrayMap(Golden_StringCodePoints_Test_fromEnum)(Data_String_CodePoints_toCodePointArray(Data_String_CodePoints_singleton(Partial_Unsafe__unsafePartial(function( ) - return function(v_S_1775) - if "Data.Maybe∷Maybe.Just" == v_S_1775[1] then - return v_S_1775[2] + return function(v_S_1801) + if "Data.Maybe∷Maybe.Just" == v_S_1801[1] then + return v_S_1801[2] else return error("No patterns matched") end diff --git a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir index ed71f258..86f8b196 100644 --- a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir +++ b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.ir @@ -275,21 +275,21 @@ UberModule ( ParamNamed Nothing ( Name "o$482" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse522", ObjectProp Nothing + ( Nothing, Name "$cse532", ObjectProp Nothing ( Ref Nothing ( Local ( Name "o$482" ) ) ) ( PropName "a" ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse521", ObjectProp Nothing + ( Nothing, Name "$cse531", ObjectProp Nothing ( Ref Nothing ( Local ( Name "o$482" ) ) ) ( PropName "b" ) ) :| [] ) ( IfThenElse Nothing ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "$cse521" ) ) ) + ( Ref Nothing ( Local ( Name "$cse531" ) ) ) ( Ref Nothing ( Local ( Name "n" ) ) ) ) ( AppN Nothing @@ -301,11 +301,11 @@ UberModule [ LiteralObject Nothing [ ( PropName "a", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse522" ) ) ) - ( Ref Nothing ( Local ( Name "$cse521" ) ) ) + ( Ref Nothing ( Local ( Name "$cse532" ) ) ) + ( Ref Nothing ( Local ( Name "$cse531" ) ) ) ), ( PropName "b", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse521" ) ) ) + ( Ref Nothing ( Local ( Name "$cse531" ) ) ) ( LiteralInt Nothing 1 ) ) ] @@ -318,7 +318,7 @@ UberModule ( ModuleName "Control.Monad.Rec.Class" ) ( TyName "Step" ) ( CtorName "Done" ) - [ Ref Nothing ( Local ( Name "$cse522" ) ) ] :| [] + [ Ref Nothing ( Local ( Name "$cse532" ) ) ] :| [] ) ) ) @@ -349,346 +349,241 @@ UberModule ( Nothing, Name "r$0", AppN Nothing ( AppN Nothing ( AppN Nothing - ( Let Nothing - ( Standalone - ( Nothing, Name "dictMonadRec$511", LiteralObject Nothing - [ - ( PropName "tailRecM", AbsN Nothing - ( ParamNamed Nothing ( Name "f$11" ) :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.TailRecM2Shadow.Test" ) ( Name "sumFrom" ) ) + ) + ( LiteralObject Nothing + [ + ( PropName "tailRecM", AbsN Nothing + ( ParamNamed Nothing ( Name "f$11" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "a$12" ) :| [] ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "a$12" ) :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "r$16", AppN Nothing + ( ParamUnused Nothing :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "r$16", AppN Nothing + ( AppN Nothing ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Effect" ) ( Name "bindE" ) ) + ) ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect" ) ( Name "bindE" ) ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "f$11" ) ) ) - ( Ref Nothing ( Local ( Name "a$12" ) ) :| [] ) :| [] + ( Ref Nothing ( Local ( Name "f$11" ) ) ) + ( Ref Nothing ( Local ( Name "a$12" ) ) :| [] ) :| [] + ) + ) + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Effect.Ref" ) + ( Name "foreign" ) ) ) + ( PropName "_new" ) :| [] + ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing - ( Imported - ( ModuleName "Effect.Ref" ) - ( Name "foreign" ) - ) + ( Imported ( ModuleName "Effect" ) ( Name "foreign" ) ) ) - ( PropName "_new" ) :| [] + ( PropName "untilE" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) - ) :| [] - ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Effect" ) - ( Name "foreign" ) - ) - ) - ( PropName "untilE" ) - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "v0$17", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Effect.Ref" ) - ( Name "read" ) - ) - ) - ( Ref Nothing ( Local ( Name "r$16" ) ) :| [] ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "v0$17", AppN Nothing + ( AppN Nothing ( Ref Nothing ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) - ) :| [] - ) - ) :| [] - ) - ( AppN Nothing - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Loop" ) - ( ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v0$17" ) ) ) + ( ModuleName "Effect.Ref" ) + ( Name "read" ) ) ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "e$19", AppN Nothing - ( AppN Nothing + ( Ref Nothing ( Local ( Name "r$16" ) ) :| [] ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) :| [] + ) + ( AppN Nothing + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Loop" ) + ( ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v0$17" ) ) ) + ) + ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "e$19", AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "f$11" ) ) ) + ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing - ( Local ( Name "f$11" ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing - ( Local ( Name "v0$17" ) ) - ) :| [] - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) + ( Local ( Name "v0$17" ) ) ) :| [] ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing + ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Effect.Ref" ) - ( Name "foreign" ) - ) - ) - ( PropName "write" ) - ) + ( ObjectProp Nothing ( Ref Nothing - ( Local ( Name "e$19" ) ) :| [] + ( Imported + ( ModuleName "Effect.Ref" ) + ( Name "foreign" ) + ) ) + ( PropName "write" ) ) ( Ref Nothing - ( Local ( Name "r$16" ) ) :| [] + ( Local ( Name "e$19" ) ) :| [] ) ) ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) - ) :| [] + ( Local ( Name "r$16" ) ) :| [] ) ) - ] - ) ( LiteralBool Nothing False ) - ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) + ] + ) ( LiteralBool Nothing False ) ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Done" ) - ( ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v0$17" ) ) ) - ) + ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Done" ) + ( ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v0$17" ) ) ) ) - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Effect" ) - ( Name "pureE" ) - ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Effect" ) + ( Name "pureE" ) ) - ( LiteralBool Nothing True :| [] ) ) - ( Exception Nothing "No patterns matched" ) + ( LiteralBool Nothing True :| [] ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) - ) :| [] + ( Exception Nothing "No patterns matched" ) ) ) - ) :| [] - ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) ) :| [] ) ) - ] - ) + ( Ref Nothing + ( Imported + ( ModuleName "Prim" ) + ( Name "$magicDoRun" ) + ) :| [] + ) + ) + ] + ) + ( AppN Nothing ( AppN Nothing ( AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported + ( ModuleName "Effect" ) + ( Name "functorEffect" ) + ) + ) + ( PropName "map" ) + ) ( AppN Nothing ( ObjectProp Nothing ( Ref Nothing ( Imported - ( ModuleName "Effect" ) - ( Name "functorEffect" ) + ( ModuleName "Partial.Unsafe" ) + ( Name "foreign" ) ) ) - ( PropName "map" ) + ( PropName "_unsafePartial" ) ) - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Partial.Unsafe" ) - ( Name "foreign" ) - ) - ) - ( PropName "_unsafePartial" ) - ) + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v$20" ) :| [] ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Done" ) - ( ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v$20" ) ) ) - ) - ) - ( DataArgumentByIndex Nothing SumType 0 + ( ParamNamed Nothing ( Name "v$20" ) :| [] ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Control.Monad.Rec.Class∷Step.Done" ) + ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$20" ) ) ) ) - ( Exception Nothing "No patterns matched" ) ) - ) :| [] + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v$20" ) ) ) + ) + ( Exception Nothing "No patterns matched" ) + ) ) :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Ref" ) ( Name "read" ) ) - ) - ( Ref Nothing ( Local ( Name "r$16" ) ) :| [] ) :| [] + ) :| [] ) ) - ( Ref Nothing - ( Imported - ( ModuleName "Prim" ) - ( Name "$magicDoRun" ) - ) :| [] + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Effect.Ref" ) ( Name "read" ) ) + ) + ( Ref Nothing ( Local ( Name "r$16" ) ) :| [] ) :| [] ) ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] + ) ) ) ) - ), - ( PropName "Monad0", AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Ref Nothing - ( Imported ( ModuleName "Effect" ) ( Name "monadEffect" ) ) - ) - ) - ] - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "pure$512", ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonadRec$511" ) ) ) - ( PropName "Monad0" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) - ) - ( PropName "Applicative0" ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "undefined" ) ) :| [] - ) ) - ( PropName "pure" ) - ) :| [] - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "b$513" ) :| [] ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "n$514" ) :| [] ) - ( AppN Nothing - ( AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing ( Local ( Name "dictMonadRec$511" ) ) ) - ( PropName "tailRecM" ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "o$515" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse524", ObjectProp Nothing - ( Ref Nothing ( Local ( Name "o$515" ) ) ) - ( PropName "a" ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse523", ObjectProp Nothing - ( Ref Nothing ( Local ( Name "o$515" ) ) ) - ( PropName "b" ) - ) :| [] - ) - ( IfThenElse Nothing - ( PrimBinOp Nothing PrimLt - ( Ref Nothing ( Local ( Name "$cse523" ) ) ) - ( Ref Nothing ( Local ( Name "n$514" ) ) ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "pure$512" ) ) ) - ( Ctor Nothing SumType - ( ModuleName "Control.Monad.Rec.Class" ) - ( TyName "Step" ) - ( CtorName "Loop" ) - [ LiteralObject Nothing - [ - ( PropName "a", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse524" ) ) ) - ( Ref Nothing ( Local ( Name "$cse523" ) ) ) - ), - ( PropName "b", PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse523" ) ) ) - ( LiteralInt Nothing 1 ) - ) - ] - ] :| [] - ) - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "pure$512" ) ) ) - ( Ctor Nothing SumType - ( ModuleName "Control.Monad.Rec.Class" ) - ( TyName "Step" ) - ( CtorName "Done" ) - [ Ref Nothing ( Local ( Name "$cse524" ) ) ] :| [] - ) - ) - ) - ) - ) :| [] - ) - ) - ( LiteralObject Nothing - [ - ( PropName "a", Ref Nothing ( Local ( Name "b$513" ) ) ), - ( PropName "b", LiteralInt Nothing 0 ) - ] :| [] - ) + ), + ( PropName "Monad0", AbsN Nothing + ( ParamUnused Nothing :| [] ) + ( Ref Nothing + ( Imported ( ModuleName "Effect" ) ( Name "monadEffect" ) ) ) ) - ) + ] :| [] ) ) ( LiteralInt Nothing 0 :| [] ) diff --git a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.lua b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.lua index 50efdc96..6bd16f4a 100644 --- a/test/ps/output/Golden.TailRecM2Shadow.Test/golden.lua +++ b/test/ps/output/Golden.TailRecM2Shadow.Test/golden.lua @@ -16,7 +16,6 @@ local function PSLUA_runtime_lazy(name) end end end -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end } local Effect_foreign = { pureE = function(a) return function() return a end end, @@ -81,82 +80,60 @@ Effect_Lazy_applyEffect = PSLUA_runtime_lazy("applyEffect")(function() } end) local Effect_functorEffect = Effect_Lazy_functorEffect(0) -M.Golden_TailRecM2Shadow_Test_sumFrom = function(dictMonadRec) +local Golden_TailRecM2Shadow_Test_sumFrom = function(dictMonadRec) local pure = ((dictMonadRec.Monad0()).Applicative0()).pure return function(b) return function(n) return dictMonadRec.tailRecM(function(o_S_482) - local _S_cse522 = o_S_482.a - local _S_cse521 = o_S_482.b - if _S_cse521 < n then + local _S_cse532 = o_S_482.a + local _S_cse531 = o_S_482.b + if _S_cse531 < n then return pure({ "Control.Monad.Rec.Class∷Step.Loop", - { a = _S_cse522 + _S_cse521, b = _S_cse521 + 1 } + { a = _S_cse532 + _S_cse531, b = _S_cse531 + 1 } }) else - return pure({ "Control.Monad.Rec.Class∷Step.Done", _S_cse522 }) + return pure({ "Control.Monad.Rec.Class∷Step.Done", _S_cse532 }) end end)({ a = b, b = 0 }) end end end return (function() - local r_S_0 = (function() - local dictMonadRec_S_511 = { - tailRecM = function(f_S_11) - return function(a_S_12) - return function() - local r_S_16 = Effect_bindE(f_S_11(a_S_12))(Effect_Ref_foreign._new)() - local _ = Effect_foreign.untilE(function() - local v0_S_17 = Effect_Ref_read(r_S_16)() - return (function() - if "Control.Monad.Rec.Class∷Step.Loop" == v0_S_17[1] then - return function() - local e_S_19 = f_S_11(v0_S_17[2])() - local _ = Effect_Ref_foreign.write(e_S_19)(r_S_16)() - return false - end - elseif "Control.Monad.Rec.Class∷Step.Done" == v0_S_17[1] then - return Effect_pureE(true) - else - return error("No patterns matched") - end - end)()() - end)() - return Effect_functorEffect.map(Partial_Unsafe_foreign._unsafePartial(function( ) - return function(v_S_20) - if "Control.Monad.Rec.Class∷Step.Done" == v_S_20[1] then - return v_S_20[2] - else - return error("No patterns matched") + local r_S_0 = Golden_TailRecM2Shadow_Test_sumFrom({ + tailRecM = function(f_S_11) + return function(a_S_12) + return function() + local r_S_16 = Effect_bindE(f_S_11(a_S_12))(Effect_Ref_foreign._new)() + local _ = Effect_foreign.untilE(function() + local v0_S_17 = Effect_Ref_read(r_S_16)() + return (function() + if "Control.Monad.Rec.Class∷Step.Loop" == v0_S_17[1] then + return function() + local e_S_19 = f_S_11(v0_S_17[2])() + local _ = Effect_Ref_foreign.write(e_S_19)(r_S_16)() + return false end + elseif "Control.Monad.Rec.Class∷Step.Done" == v0_S_17[1] then + return Effect_pureE(true) + else + return error("No patterns matched") + end + end)()() + end)() + return Effect_functorEffect.map(Partial_Unsafe_foreign._unsafePartial(function( ) + return function(v_S_20) + if "Control.Monad.Rec.Class∷Step.Done" == v_S_20[1] then + return v_S_20[2] + else + return error("No patterns matched") end - end))(Effect_Ref_read(r_S_16))() - end + end + end))(Effect_Ref_read(r_S_16))() end - end, - Monad0 = function() return Effect_monadEffect end - } - local pure_S_512 = ((dictMonadRec_S_511.Monad0()).Applicative0()).pure - return function(b_S_513) - return function(n_S_514) - return dictMonadRec_S_511.tailRecM(function(o_S_515) - local _S_cse524 = o_S_515.a - local _S_cse523 = o_S_515.b - if _S_cse523 < n_S_514 then - return pure_S_512({ - "Control.Monad.Rec.Class∷Step.Loop", - { a = _S_cse524 + _S_cse523, b = _S_cse523 + 1 } - }) - else - return pure_S_512({ - "Control.Monad.Rec.Class∷Step.Done", - _S_cse524 - }) - end - end)({ a = b_S_513, b = 0 }) end - end - end)()(0)(5)() + end, + Monad0 = function() return Effect_monadEffect end + })(0)(5)() return Effect_Console_foreign.log(Data_Show_foreign.showIntImpl(r_S_0))() end)() diff --git a/test/ps/output/Golden.Uncurry.Test/golden.ir b/test/ps/output/Golden.Uncurry.Test/golden.ir index 624381ca..c57ce290 100644 --- a/test/ps/output/Golden.Uncurry.Test/golden.ir +++ b/test/ps/output/Golden.Uncurry.Test/golden.ir @@ -303,10 +303,10 @@ UberModule ( PropName "arrayMap" ) ) ( AbsN Nothing - ( ParamNamed Nothing ( Name "add3$p3$259" ) :| [] ) + ( ParamNamed Nothing ( Name "add3$p3$319" ) :| [] ) ( PrimBinOp Nothing PrimAdd ( LiteralInt Nothing 3 ) - ( Ref Nothing ( Local ( Name "add3$p3$259" ) ) ) + ( Ref Nothing ( Local ( Name "add3$p3$319" ) ) ) ) :| [] ) ) @@ -356,24 +356,24 @@ UberModule [ Let Nothing ( RecursiveGroup ( - ( Nothing, Name "go$w$263", AbsN Nothing + ( Nothing, Name "go$w$326", AbsN Nothing ( ParamNamed Nothing - ( Name "acc$264" ) :| - [ ParamNamed Nothing ( Name "n$265" ) ] + ( Name "acc$327" ) :| + [ ParamNamed Nothing ( Name "n$328" ) ] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "n$265" ) ) ) + ( Ref Nothing ( Local ( Name "n$328" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "acc$264" ) ) ) + ( Ref Nothing ( Local ( Name "acc$327" ) ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$263" ) ) ) + ( Ref Nothing ( Local ( Name "go$w$326" ) ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "acc$264" ) ) ) - ( Ref Nothing ( Local ( Name "n$265" ) ) ) :| + ( Ref Nothing ( Local ( Name "acc$327" ) ) ) + ( Ref Nothing ( Local ( Name "n$328" ) ) ) :| [ PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "n$265" ) ) ) + ( Ref Nothing ( Local ( Name "n$328" ) ) ) ( LiteralInt Nothing 1 ) ] ) @@ -383,7 +383,7 @@ UberModule ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$263" ) ) ) + ( Ref Nothing ( Local ( Name "go$w$326" ) ) ) ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 10 ] ) ) ] @@ -399,24 +399,24 @@ UberModule [ Let Nothing ( RecursiveGroup ( - ( Nothing, Name "go$w$274", AbsN Nothing + ( Nothing, Name "go$w$331", AbsN Nothing ( ParamNamed Nothing - ( Name "acc$275" ) :| - [ ParamNamed Nothing ( Name "n$276" ) ] + ( Name "acc$332" ) :| + [ ParamNamed Nothing ( Name "n$333" ) ] ) ( IfThenElse Nothing ( Eq Nothing - ( Ref Nothing ( Local ( Name "n$276" ) ) ) + ( Ref Nothing ( Local ( Name "n$333" ) ) ) ( LiteralInt Nothing 0 ) ) - ( Ref Nothing ( Local ( Name "acc$275" ) ) ) + ( Ref Nothing ( Local ( Name "acc$332" ) ) ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$274" ) ) ) + ( Ref Nothing ( Local ( Name "go$w$331" ) ) ) ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "acc$275" ) ) ) - ( Ref Nothing ( Local ( Name "n$276" ) ) ) :| + ( Ref Nothing ( Local ( Name "acc$332" ) ) ) + ( Ref Nothing ( Local ( Name "n$333" ) ) ) :| [ PrimBinOp Nothing PrimSub - ( Ref Nothing ( Local ( Name "n$276" ) ) ) + ( Ref Nothing ( Local ( Name "n$333" ) ) ) ( LiteralInt Nothing 1 ) ] ) @@ -426,7 +426,7 @@ UberModule ) :| [] ) ( AppN Nothing - ( Ref Nothing ( Local ( Name "go$w$274" ) ) ) + ( Ref Nothing ( Local ( Name "go$w$331" ) ) ) ( LiteralInt Nothing 0 :| [ LiteralInt Nothing 100 ] ) ) ] diff --git a/test/ps/output/Golden.Uncurry.Test/golden.lua b/test/ps/output/Golden.Uncurry.Test/golden.lua index 381dab62..2f3ea0a1 100644 --- a/test/ps/output/Golden.Uncurry.Test/golden.lua +++ b/test/ps/output/Golden.Uncurry.Test/golden.lua @@ -75,36 +75,36 @@ return (function() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 42)() local _ = Effect_Console_logShow_S_w({ show = Data_Show_foreign.showArrayImpl(Data_Show_showIntImpl) - }, Data_Functor_foreign.arrayMap(function(add3_S_p3_S_259) - return 3 + add3_S_p3_S_259 + }, Data_Functor_foreign.arrayMap(function(add3_S_p3_S_319) + return 3 + add3_S_p3_S_319 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 go_S_w_S_263 - go_S_w_S_263 = function(acc_S_264, n_S_265) + local go_S_w_S_326 + go_S_w_S_326 = function(acc_S_327, n_S_328) while true do - if n_S_265 == 0 then - return acc_S_264 + if n_S_328 == 0 then + return acc_S_327 else - acc_S_264, n_S_265 = acc_S_264 + n_S_265, n_S_265 - 1 + acc_S_327, n_S_328 = acc_S_327 + n_S_328, n_S_328 - 1 end end end - return go_S_w_S_263(0, 10) + return go_S_w_S_326(0, 10) end)())() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local go_S_w_S_274 - go_S_w_S_274 = function(acc_S_275, n_S_276) + local go_S_w_S_331 + go_S_w_S_331 = function(acc_S_332, n_S_333) while true do - if n_S_276 == 0 then - return acc_S_275 + if n_S_333 == 0 then + return acc_S_332 else - acc_S_275, n_S_276 = acc_S_275 + n_S_276, n_S_276 - 1 + acc_S_332, n_S_333 = acc_S_332 + n_S_333, n_S_333 - 1 end end end - return go_S_w_S_274(0, 100) + return go_S_w_S_331(0, 100) end)())() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 6)() local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 9)() diff --git a/test/ps/output/Golden.UncurryCtor.Test/golden.ir b/test/ps/output/Golden.UncurryCtor.Test/golden.ir index d482def5..69b7e800 100644 --- a/test/ps/output/Golden.UncurryCtor.Test/golden.ir +++ b/test/ps/output/Golden.UncurryCtor.Test/golden.ir @@ -7,12 +7,6 @@ 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 @@ -35,11 +29,17 @@ UberModule { qnameModuleName = ModuleName "Data.Show", qnameName = Name "showInt" }, LiteralObject Nothing [ - ( PropName "show", Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showIntImpl" ) ) + ( PropName "show", ObjectProp Nothing + ( Ref Nothing ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) + ( PropName "showIntImpl" ) ) ] ), 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 @@ -58,6 +58,18 @@ UberModule ) ) ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "logShow" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "logShow$p2$325" ) :| [] ) + ( 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$325" ) ) ] + ) + ) + ), Standalone ( QName { qnameModuleName = ModuleName "Golden.UncurryCtor.Test", qnameName = Name "Origin" }, Ctor Nothing SumType @@ -156,20 +168,20 @@ UberModule ( ParamNamed Nothing ( Name "v" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse394", ReflectCtor Nothing + ( Nothing, Name "$cse432", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷IntList.Nil" ) - ( Ref Nothing ( Local ( Name "$cse394" ) ) ) + ( Ref Nothing ( Local ( Name "$cse432" ) ) ) ) ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷IntList.Cons" ) - ( Ref Nothing ( Local ( Name "$cse394" ) ) ) + ( Ref Nothing ( Local ( Name "$cse432" ) ) ) ) ( PrimBinOp Nothing PrimAdd ( DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v" ) ) ) ) @@ -292,36 +304,36 @@ UberModule ( ParamNamed Nothing ( Name "v" ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse396", DataArgumentByIndex Nothing SumType 0 + ( Nothing, Name "$cse434", DataArgumentByIndex Nothing SumType 0 ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse395", ReflectCtor Nothing + ( Nothing, Name "$cse433", ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v" ) ) ) ) :| [] ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Origin" ) - ( Ref Nothing ( Local ( Name "$cse395" ) ) ) + ( Ref Nothing ( Local ( Name "$cse433" ) ) ) ) ( LiteralInt Nothing 0 ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Dot" ) - ( Ref Nothing ( Local ( Name "$cse395" ) ) ) + ( Ref Nothing ( Local ( Name "$cse433" ) ) ) ) - ( Ref Nothing ( Local ( Name "$cse396" ) ) ) + ( Ref Nothing ( Local ( Name "$cse434" ) ) ) ( IfThenElse Nothing ( Eq Nothing ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Tri" ) - ( Ref Nothing ( Local ( Name "$cse395" ) ) ) + ( Ref Nothing ( Local ( Name "$cse433" ) ) ) ) ( PrimBinOp Nothing PrimAdd ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse396" ) ) ) + ( Ref Nothing ( Local ( Name "$cse434" ) ) ) ( DataArgumentByIndex Nothing SumType 1 ( Ref Nothing ( Local ( Name "v" ) ) ) ) @@ -398,359 +410,227 @@ UberModule ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "$cse398", DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Origin" ) ) - ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse397", ReflectCtor Nothing + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Origin" ) ) + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) ) - ) :| [] - ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "area" ) ) + ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Tri$w" ) ) ) + ( LiteralInt Nothing 3 :| [ LiteralInt Nothing 4, LiteralInt Nothing 5 ] ) :| [] + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LiteralInt Nothing 12 ] + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "area" ) ) ) - ) - ( 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 - ( Standalone - ( Nothing, Name "v$345", Ctor Nothing SumType - ( ModuleName "Golden.UncurryCtor.Test" ) - ( TyName "Shape" ) - ( CtorName "Dot" ) - [ LiteralInt Nothing 9 ] - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Origin" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$345" ) ) ) ) - ) - ( LiteralInt Nothing 0 ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Dot" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$345" ) ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$345" ) ) ) - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Tri" ) - ( ReflectCtor Nothing ( Ref Nothing ( Local ( Name "v$345" ) ) ) ) - ) - ( PrimBinOp Nothing PrimAdd - ( PrimBinOp Nothing PrimAdd - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v$345" ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 1 - ( Ref Nothing ( Local ( Name "v$345" ) ) ) - ) - ) - ( DataArgumentByIndex Nothing SumType 2 - ( Ref Nothing ( Local ( Name "v$345" ) ) ) - ) - ) - ( Exception Nothing "No patterns matched" ) - ) - ) - ) - ] + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Dot" ) ) ) + ( LiteralInt Nothing 9 :| [] ) :| [] + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "area" ) ) ) - ( 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" ) ) :| - [ IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Origin" ) - ( Ref Nothing ( Local ( Name "$cse397" ) ) ) - ) - ( LiteralInt Nothing 0 ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Dot" ) - ( Ref Nothing ( Local ( Name "$cse397" ) ) ) - ) - ( Ref Nothing ( Local ( Name "$cse398" ) ) ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Golden.UncurryCtor.Test∷Shape.Tri" ) - ( Ref Nothing ( Local ( Name "$cse397" ) ) ) - ) - ( PrimBinOp Nothing PrimAdd - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$cse398" ) ) ) - ( DataArgumentByIndex Nothing SumType 1 - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Origin" ) - ) - ) - ) - ) - ( DataArgumentByIndex Nothing SumType 2 - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "Origin" ) - ) - ) - ) - ) - ( Exception Nothing "No patterns matched" ) - ) - ) - ] - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Origin" ) ) :| [] + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "pairSum" ) ) ) - ( 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.UncurryCtor.Test" ) ( Name "Pair$w" ) ) ) + ( LiteralInt Nothing 20 :| [ LiteralInt Nothing 22 ] ) :| [] + ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "unbox" ) ) ) - ( 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 41 ] - ) + ( LiteralInt Nothing 41 :| [] ) :| [] + ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ] + ) + ( AppN Nothing + ( Let Nothing + ( Standalone + ( Nothing, Name "mk$0", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "Tri" ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ( LiteralInt Nothing 1 :| [] ) ) - ] + ( LiteralInt Nothing 2 :| [] ) + ) :| [] ) - ( AppN Nothing + ( AbsN Nothing + ( ParamUnused Nothing :| [] ) ( Let Nothing ( Standalone - ( Nothing, Name "mk$0$r", AbsN Nothing - ( ParamNamed Nothing ( Name "Tri$p3$367" ) :| [] ) - ( Values Nothing - ( LiteralInt Nothing 1 :| - [ LiteralInt Nothing 2, Ref Nothing ( Local ( Name "Tri$p3$367" ) ) ] + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "area" ) ) + ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "mk$0" ) ) ) + ( LiteralInt Nothing 3 :| [] ) :| [] + ) :| [] ) ) - ) :| [] - ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] + ) + ) :| + [ Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LetValues Nothing - ( ParamNamed Nothing - ( Name "$v382" ) :| - [ ParamNamed Nothing - ( Name "$v383" ), ParamNamed Nothing - ( Name "$v384" ) - ] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "mk$0$r" ) ) ) - ( LiteralInt Nothing 3 :| [] ) - ) - ( PrimBinOp Nothing PrimAdd - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v382" ) ) ) - ( Ref Nothing ( Local ( Name "$v383" ) ) ) - ) - ( Ref Nothing ( Local ( Name "$v384" ) ) ) - ) - ] + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "area" ) ) ) + ( AppN Nothing + ( Ref Nothing ( Local ( Name "mk$0" ) ) ) + ( LiteralInt Nothing 30 :| [] ) :| [] + ) :| [] ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] + ) + ), Standalone + ( Nothing, Name "_", AppN Nothing + ( AppN Nothing ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] + ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) ) - ) :| - [ Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "logShow$w" ) ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "showInt" ) ) :| - [ LetValues Nothing - ( ParamNamed Nothing - ( Name "$v385" ) :| - [ ParamNamed Nothing - ( Name "$v386" ), ParamNamed Nothing - ( Name "$v387" ) - ] - ) - ( AppN Nothing - ( Ref Nothing ( Local ( Name "mk$0$r" ) ) ) - ( LiteralInt Nothing 30 :| [] ) + ( LiteralObject Nothing + [ + ( PropName "show", AppN Nothing + ( ObjectProp Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) ) - ( PrimBinOp Nothing PrimAdd - ( PrimBinOp Nothing PrimAdd - ( Ref Nothing ( Local ( Name "$v385" ) ) ) - ( Ref Nothing ( Local ( Name "$v386" ) ) ) - ) - ( Ref Nothing ( Local ( Name "$v387" ) ) ) + ( PropName "showArrayImpl" ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Show" ) ( Name "show" ) ) ) - ] - ) - ) - ( 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" ) ) :| [] + ) :| [] + ) ) - ( LiteralObject Nothing - [ - ( PropName "show", AppN Nothing - ( ObjectProp Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Show" ) ( Name "foreign" ) ) - ) - ( PropName "showArrayImpl" ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Data.Show" ) - ( Name "showIntImpl" ) + ] :| + [ AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "v2$307" ) :| [] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "$cse435", ReflectCtor Nothing + ( Ref Nothing ( Local ( Name "v2$307" ) ) ) ) :| [] ) - ) - ] :| - [ AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "v2$307" ) :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "$cse399", ReflectCtor Nothing - ( Ref Nothing ( Local ( Name "v2$307" ) ) ) - ) :| [] - ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) - ( Ref Nothing ( Local ( Name "$cse399" ) ) ) - ) - ( LiteralInt Nothing 0 ) - ( IfThenElse Nothing - ( Eq Nothing - ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) - ( Ref Nothing ( Local ( Name "$cse399" ) ) ) - ) - ( DataArgumentByIndex Nothing SumType 0 - ( Ref Nothing ( Local ( Name "v2$307" ) ) ) - ) - ( Exception Nothing "No patterns matched" ) - ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Nothing" ) + ( Ref Nothing ( Local ( Name "$cse435" ) ) ) + ) + ( LiteralInt Nothing 0 ) + ( IfThenElse Nothing + ( Eq Nothing + ( LiteralString Nothing "Data.Maybe∷Maybe.Just" ) + ( Ref Nothing ( Local ( Name "$cse435" ) ) ) ) - ) :| [] - ) - ) - ( AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported - ( ModuleName "Data.Functor" ) - ( Name "arrayMap" ) + ( DataArgumentByIndex Nothing SumType 0 + ( Ref Nothing ( Local ( Name "v2$307" ) ) ) ) - ) - ( AbsN Nothing - ( ParamNamed Nothing ( Name "value0$308" ) :| [] ) - ( Ctor Nothing SumType - ( ModuleName "Data.Maybe" ) - ( TyName "Maybe" ) - ( CtorName "Just" ) - [ Ref Nothing ( Local ( Name "value0$308" ) ) ] - ) :| [] + ( Exception Nothing "No patterns matched" ) ) ) - ( LiteralArray Nothing - [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 - ] :| [] + ) :| [] + ) + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Data.Functor" ) ( Name "arrayMap" ) ) + ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "value0$308" ) :| [] ) + ( Ctor Nothing SumType + ( ModuleName "Data.Maybe" ) + ( TyName "Maybe" ) + ( CtorName "Just" ) + [ Ref Nothing ( Local ( Name "value0$308" ) ) ] ) :| [] ) - ] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ] - ) - ( 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.UncurryCtor.Test" ) - ( Name "total" ) ) - ) - ( Ref Nothing - ( Imported - ( ModuleName "Golden.UncurryCtor.Test" ) - ( Name "range" ) + ( LiteralArray Nothing + [ LiteralInt Nothing 1, LiteralInt Nothing 2, LiteralInt Nothing 3 + ] :| [] ) :| [] ) ] @@ -760,12 +640,31 @@ UberModule ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) + ] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "logShow" ) ) + ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryCtor.Test" ) ( Name "total" ) ) + ) + ( Ref Nothing + ( Imported + ( ModuleName "Golden.UncurryCtor.Test" ) + ( Name "range" ) + ) :| [] + ) :| [] + ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ) diff --git a/test/ps/output/Golden.UncurryCtor.Test/golden.lua b/test/ps/output/Golden.UncurryCtor.Test/golden.lua index bcbaf93c..9a908e86 100644 --- a/test/ps/output/Golden.UncurryCtor.Test/golden.lua +++ b/test/ps/output/Golden.UncurryCtor.Test/golden.lua @@ -1,4 +1,3 @@ -local M = {} local Data_Show_foreign = { showIntImpl = function(n) return tostring(n) end, showArrayImpl = function(f) @@ -10,7 +9,6 @@ local Data_Show_foreign = { end end } -local Data_Show_showIntImpl = Data_Show_foreign.showIntImpl local Data_Functor_foreign = { arrayMap = function(f) return function(arr) @@ -25,107 +23,82 @@ local Data_Functor_arrayMap = Data_Functor_foreign.arrayMap local Effect_Console_foreign = { log = function(s) return function() print(s) end end } -local Data_Show_showInt = { show = Data_Show_showIntImpl } +local Data_Show_showInt = { show = Data_Show_foreign.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)) end +local Golden_UncurryCtor_Test_logShow = function(logShow_S_p2_S_325) + return Effect_Console_logShow_S_w(Data_Show_showInt, logShow_S_p2_S_325) +end local Golden_UncurryCtor_Test_Origin = { "Golden.UncurryCtor.Test∷Shape.Origin" } -M.Golden_UncurryCtor_Test_Dot = function(value0) +local Golden_UncurryCtor_Test_Dot = function(value0) return { "Golden.UncurryCtor.Test∷Shape.Dot", value0 } end local Golden_UncurryCtor_Test_Tri_S_w = function(value0, value1, value2) return { "Golden.UncurryCtor.Test∷Shape.Tri", value0, value1, value2 } end -M.Golden_UncurryCtor_Test_Tri = function(Tri_S_p1) +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) end end end -M.Golden_UncurryCtor_Test_Pair_S_w = function(value0, value1) +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 -M.Golden_UncurryCtor_Test_unbox = function(v) return v end +local Golden_UncurryCtor_Test_unbox = function(v) return v end local Golden_UncurryCtor_Test_total Golden_UncurryCtor_Test_total = function(v) - local _S_cse394 = v[1] - if "Golden.UncurryCtor.Test∷IntList.Nil" == _S_cse394 then + local _S_cse432 = v[1] + if "Golden.UncurryCtor.Test∷IntList.Nil" == _S_cse432 then return 0 - elseif "Golden.UncurryCtor.Test∷IntList.Cons" == _S_cse394 then + elseif "Golden.UncurryCtor.Test∷IntList.Cons" == _S_cse432 then return v[2] + Golden_UncurryCtor_Test_total(v[3]) else return error("No patterns matched") 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)))))))))) -M.Golden_UncurryCtor_Test_pairSum = function(v) return v[1] + v[2] end -M.Golden_UncurryCtor_Test_area = function(v) - local _S_cse396 = v[2] - local _S_cse395 = v[1] - if "Golden.UncurryCtor.Test∷Shape.Origin" == _S_cse395 then +local Golden_UncurryCtor_Test_pairSum = function(v) return v[1] + v[2] end +local Golden_UncurryCtor_Test_area = function(v) + local _S_cse434 = v[2] + local _S_cse433 = v[1] + if "Golden.UncurryCtor.Test∷Shape.Origin" == _S_cse433 then return 0 - elseif "Golden.UncurryCtor.Test∷Shape.Dot" == _S_cse395 then - return _S_cse396 - elseif "Golden.UncurryCtor.Test∷Shape.Tri" == _S_cse395 then - return _S_cse396 + v[3] + v[4] + elseif "Golden.UncurryCtor.Test∷Shape.Dot" == _S_cse433 then + return _S_cse434 + elseif "Golden.UncurryCtor.Test∷Shape.Tri" == _S_cse433 then + return _S_cse434 + v[3] + v[4] else return error("No patterns matched") end end return (function() - local _S_cse398 = Golden_UncurryCtor_Test_Origin[2] - local _S_cse397 = Golden_UncurryCtor_Test_Origin[1] - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 12)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local v_S_345 = { "Golden.UncurryCtor.Test∷Shape.Dot", 9 } - if "Golden.UncurryCtor.Test∷Shape.Origin" == v_S_345[1] then - return 0 - elseif "Golden.UncurryCtor.Test∷Shape.Dot" == v_S_345[1] then - return v_S_345[2] - elseif "Golden.UncurryCtor.Test∷Shape.Tri" == v_S_345[1] then - return v_S_345[2] + v_S_345[3] + v_S_345[4] - else - return error("No patterns matched") - end - end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - if "Golden.UncurryCtor.Test∷Shape.Origin" == _S_cse397 then - return 0 - elseif "Golden.UncurryCtor.Test∷Shape.Dot" == _S_cse397 then - return _S_cse398 - elseif "Golden.UncurryCtor.Test∷Shape.Tri" == _S_cse397 then - return _S_cse398 + Golden_UncurryCtor_Test_Origin[3] + Golden_UncurryCtor_Test_Origin[4] - else - return error("No patterns matched") - end - end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 42)() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, 41)() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_area(Golden_UncurryCtor_Test_Tri_S_w(3, 4, 5)))() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_area(Golden_UncurryCtor_Test_Dot(9)))() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_area(Golden_UncurryCtor_Test_Origin))() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_pairSum(Golden_UncurryCtor_Test_Pair_S_w(20, 22)))() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_unbox(41))() return (function() - local mk_S_0_S_r = function(Tri_S_p3_S_367) return 1, 2, Tri_S_p3_S_367 end + local mk_S_0 = Golden_UncurryCtor_Test_Tri(1)(2) return function() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local _S_v382, _S_v383, _S_v384 = mk_S_0_S_r(3) - return _S_v382 + _S_v383 + _S_v384 - end)())() - local _ = Effect_Console_logShow_S_w(Data_Show_showInt, (function() - local _S_v385, _S_v386, _S_v387 = mk_S_0_S_r(30) - return _S_v385 + _S_v386 + _S_v387 - end)())() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_area(mk_S_0(3)))() + local _ = Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_area(mk_S_0(30)))() local _ = Effect_Console_logShow_S_w({ - show = Data_Show_foreign.showArrayImpl(Data_Show_showIntImpl) + show = Data_Show_foreign.showArrayImpl(Data_Show_show(Data_Show_showInt)) }, Data_Functor_arrayMap(function(v2_S_307) - local _S_cse399 = v2_S_307[1] - if "Data.Maybe∷Maybe.Nothing" == _S_cse399 then + local _S_cse435 = v2_S_307[1] + if "Data.Maybe∷Maybe.Nothing" == _S_cse435 then return 0 - elseif "Data.Maybe∷Maybe.Just" == _S_cse399 then + elseif "Data.Maybe∷Maybe.Just" == _S_cse435 then return v2_S_307[2] else return error("No patterns matched") @@ -133,7 +106,7 @@ return (function() end)(Data_Functor_arrayMap(function(value0_S_308) return { "Data.Maybe∷Maybe.Just", value0_S_308 } end)({ [1] = 1, [2] = 2, [3] = 3 })))() - return Effect_Console_logShow_S_w(Data_Show_showInt, Golden_UncurryCtor_Test_total(Golden_UncurryCtor_Test_range))() + return Golden_UncurryCtor_Test_logShow(Golden_UncurryCtor_Test_total(Golden_UncurryCtor_Test_range))() end end)()() end)() diff --git a/test/ps/output/Golden.UncurryEffect.Test/golden.ir b/test/ps/output/Golden.UncurryEffect.Test/golden.ir index 551556dd..65685c75 100644 --- a/test/ps/output/Golden.UncurryEffect.Test/golden.ir +++ b/test/ps/output/Golden.UncurryEffect.Test/golden.ir @@ -26,56 +26,84 @@ UberModule ( PropName "log" ) ), Standalone ( QName - { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "tick" + { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "tick$w" }, AbsN Nothing - ( ParamNamed Nothing ( Name "n" ) :| [] ) - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( LiteralString Nothing "tick" :| [] ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| [] - ) - ( AppN Nothing + ( ParamNamed Nothing ( Name "n" ) :| [ ParamUnused Nothing ] ) + ( 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" ) ) ) - ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) :| [] - ) + ( LiteralString Nothing "tick" :| [] ) ) ( 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" ) ) ) + ( Ref Nothing ( Local ( Name "n" ) ) :| [] ) :| [] + ) ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ), Standalone ( QName - { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "runBoth" + { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "tick" }, AbsN Nothing - ( ParamNamed Nothing ( Name "act" ) :| [] ) + ( ParamNamed Nothing ( Name "tick$p1" ) :| [] ) ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Local ( Name "act" ) ) ) - ( LiteralInt Nothing 1 :| [] ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) :| [] + ( ParamNamed Nothing ( Name "tick$p2" ) :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "tick$w" ) ) ) - ( AppN Nothing + ( Ref Nothing + ( Local ( Name "tick$p1" ) ) :| + [ Ref Nothing ( Local ( Name "tick$p2" ) ) ] + ) + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "runBoth$w" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "act" ) :| [ ParamUnused Nothing ] ) + ( Let Nothing + ( Standalone + ( Nothing, Name "_", AppN Nothing ( AppN Nothing ( Ref Nothing ( Local ( Name "act" ) ) ) - ( LiteralInt Nothing 2 :| [] ) + ( LiteralInt Nothing 1 :| [] ) ) ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) :| [] + ) + ( AppN Nothing + ( AppN Nothing + ( Ref Nothing ( Local ( Name "act" ) ) ) + ( LiteralInt Nothing 2 :| [] ) + ) + ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) + ) + ) + ), Standalone + ( QName + { qnameModuleName = ModuleName "Golden.UncurryEffect.Test", qnameName = Name "runBoth" + }, AbsN Nothing + ( ParamNamed Nothing ( Name "runBoth$p1" ) :| [] ) + ( AbsN Nothing + ( ParamNamed Nothing ( Name "runBoth$p2" ) :| [] ) + ( AppN Nothing + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "runBoth$w" ) ) + ) + ( Ref Nothing + ( Local ( Name "runBoth$p1" ) ) :| + [ Ref Nothing ( Local ( Name "runBoth$p2" ) ) ] ) ) ) @@ -190,35 +218,12 @@ UberModule ( Let Nothing ( Standalone ( Nothing, Name "_", AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) ) - ( LiteralString Nothing "tick" :| [] ) - ) - ( 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 7 :| [] ) :| [] - ) - ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) - ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "tick$w" ) ) + ) + ( LiteralInt Nothing 7 :| + [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) :| [ Standalone ( Nothing, Name "_", AppN Nothing @@ -230,120 +235,24 @@ UberModule ) ), Standalone ( Nothing, Name "_", AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) - ) - ( LiteralString Nothing "tick" :| [] ) - ) - ( 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 1 :| [] ) :| [] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) :| [] - ) - ( AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Effect.Console" ) ( Name "log" ) ) - ) - ( LiteralString Nothing "tick" :| [] ) - ) - ( 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 2 :| [] ) :| [] - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ) - ) - ( Ref Nothing - ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] - ) - ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "runBoth$w" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "tick" ) ) :| + [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ] ) ( AppN Nothing - ( AbsN Nothing - ( ParamUnused Nothing :| [] ) - ( Let Nothing - ( Standalone - ( Nothing, Name "_", AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "countdown$w" ) ) - ) - ( LiteralInt Nothing 1 :| - [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] - ) - ) :| [] - ) - ( AppN Nothing - ( Ref Nothing - ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "countdown$w" ) ) - ) - ( LiteralInt Nothing 2 :| - [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] - ) - ) - ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "runBoth$w" ) ) + ) + ( Ref Nothing + ( Imported ( ModuleName "Golden.UncurryEffect.Test" ) ( Name "countdown" ) ) :| + [ Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) ] ) - ( Ref Nothing ( Imported ( ModuleName "Prim" ) ( Name "$magicDoRun" ) ) :| [] ) ) ) ) diff --git a/test/ps/output/Golden.UncurryEffect.Test/golden.lua b/test/ps/output/Golden.UncurryEffect.Test/golden.lua index 46270d0e..2be8d12c 100644 --- a/test/ps/output/Golden.UncurryEffect.Test/golden.lua +++ b/test/ps/output/Golden.UncurryEffect.Test/golden.lua @@ -5,14 +5,23 @@ local Effect_Console_foreign = { log = function(s) return function() print(s) end end } local Effect_Console_log = Effect_Console_foreign.log -M.Golden_UncurryEffect_Test_tick = function(n) - return function() - local _ = Effect_Console_log("tick")() - return Effect_Console_log(Data_Show_showIntImpl(n))() +local Golden_UncurryEffect_Test_tick_S_w = function(n) + local _ = Effect_Console_log("tick")() + return Effect_Console_log(Data_Show_showIntImpl(n))() +end +local Golden_UncurryEffect_Test_tick = function(tick_S_p1) + return function(tick_S_p2) + return Golden_UncurryEffect_Test_tick_S_w(tick_S_p1, tick_S_p2) end end -M.Golden_UncurryEffect_Test_runBoth = function(act) - return function() local _ = act(1)() return act(2)() end +local Golden_UncurryEffect_Test_runBoth_S_w = function(act) + local _ = act(1)() + return act(2)() +end +M.Golden_UncurryEffect_Test_runBoth = function(runBoth_S_p1) + return function(runBoth_S_p2) + return Golden_UncurryEffect_Test_runBoth_S_w(runBoth_S_p1, runBoth_S_p2) + end end local Golden_UncurryEffect_Test_countdown local Golden_UncurryEffect_Test_countdown_S_w = function(n) @@ -34,23 +43,8 @@ Golden_UncurryEffect_Test_countdown = function(countdown_S_p1) end end return (function() - local _ = (function() - local _ = Effect_Console_log("tick")() - return Effect_Console_log(Data_Show_showIntImpl(7))() - end)() + local _ = Golden_UncurryEffect_Test_tick_S_w(7) local _ = Golden_UncurryEffect_Test_countdown_S_w(3) - local _ = (function() - local _ = (function() - local _ = Effect_Console_log("tick")() - return Effect_Console_log(Data_Show_showIntImpl(1))() - end)() - return (function() - local _ = Effect_Console_log("tick")() - return Effect_Console_log(Data_Show_showIntImpl(2))() - end)() - end)() - return (function() - local _ = Golden_UncurryEffect_Test_countdown_S_w(1) - return Golden_UncurryEffect_Test_countdown_S_w(2) - end)() + local _ = Golden_UncurryEffect_Test_runBoth_S_w(Golden_UncurryEffect_Test_tick) + return Golden_UncurryEffect_Test_runBoth_S_w(Golden_UncurryEffect_Test_countdown) end)()