PCB|      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z {  experimentalconal@conal.net Safe-Inferred experimentalconal@conal.netNone Strict sum functor Strict product functor Add a bottom to a type Sum on unary type constructors "#Product on unary type constructors $'Unit type constructor (one inhabitant) %Empty/'zero type constructor (no inhabitants) 'The unit value *Like | +Like } 1$Case analysis on strict sum functor ' !"#$%&'()*+,~-./01.  !"#$%&'()*+,-./01. %&$' ! ,"#)(*+ 1-./0! "#$%&'()*+,~-./01 experimentalconal@tabula.comNone2Parallel scans. 3) accumulates moving left-to-right, while  4# accumulates moving right-to-left. 23456789:;< 23456789:;< 234659:78;<23456789:;< experimentalconal@tabula.comNoneUnary transformation =Uniform pairs =>?@ABCDEFGHIJKLM=>?@ABCDEFGHIJKLM=>?@ACBDEFGHIJKLM=>?@ABCDEFGHIJKLM experimentalconal@conal.netNoneNNNN experimentalconal@conal.netNoneOOA derivative, i.e., a one-hole context for a container f (probably a functor). OOOO experimentalconal@conal.netNoneP'Filling and creating one-hole contexts S;Location, i.e., one-hole context and a value for the hole. TAlternative interface for Q. PQ Fill a hole RAll extractions STPQRSTSPQRTPQRST experimentalconal@conal.netNoneV#Derivative, i.e., one-hole context W Fill a hole XAll extractions ;Location, i.e., one-hole context and a value for the hole. YAlternative interface for W. UVWXYUVWXYUVWXY UVWXY  experimentalconal@conal.netNoneZ(Zipper for a functor tree. Also called "location" [Context for functor fixpoints Context for a regular type \&Move upward. Error if empty context. ] Variant of \.  if empty context. Z[\]^Z[\]^[Z\]^Z[\]^  experimentalconal@conal.netNone_(Zipper for a regular type. Also called "location" `Context for a regular type a&Move upward. Error if empty context. b Variant of a.  if empty context. _`abc_`abc`_abc_`abc  experimentalconal@conal.netNone d(Domain types with associated memo tries e(Representation of trie with domain type a f4Create the trie for the entire domain of a function g?Convert k trie to k function, i.e., access k field of the trie hMemo trie from k to v (List the trie elements. Order of keys (:: k) is always the same. iTrie-based function memoizer 0Lift a memoizer to work with one more argument. jAMemoize a binary function, on its first argument and then on its 7 second. Take care to exploit any partial evaluation. kBMemoize a ternary function on successive arguments. Take care to ! exploit any partial evaluation. 6defghijkdefghijkdefghijk1defghijk  experimentalconal@conal.net Safe-Inferredl Strict sum o Strict pair qCurry on strict pairs rUncurry on strict pairs s%Case analysis for strict sums. Like . lmnopqrslmnopqrsopqrlnmslnmopqrs  experimentalconal@conal.netNone t(Domain types with associated memo tries u(Representation of trie with domain type a v4Create the trie for the entire domain of a function w?Convert k trie to k function, i.e., access k field of the trie Strict memo trie from k to v 4Create the trie for the entire domain of a function ?Convert k trie to k function, i.e., access k field of the trie yTrie-based function memoizer 0Lift a memoizer to work with one more argument. zAMemoize a binary function, on its first argument and then on its 7 second. Take care to exploit any partial evaluation. {BMemoize a ternary function on successive arguments. Take care to ! exploit any partial evaluation. +tuvwxyz{tuvwxyz{tuvwxyz{&tuvwxyz{ !"#$%&'()**++,-./00123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a]\^_a b c d e f b c d e f g h i j k l m n o p q r r s t u g v w x k l m nyzy{|}~|`          i j   h h  functor-combo-0.2.1FunctorCombo.FunctorFunctorCombo.RegularFunctorCombo.ParScanFunctorCombo.PairFunctorCombo.LubFFunctorCombo.DerivativeFunctorCombo.HoleyFunctorCombo.DHoleyFunctorCombo.ZipperFixFunctorCombo.ZipperRegFunctorCombo.StrictMemoFunctorCombo.StrictFunctorCombo.NonstrictMemoTypeCompose-0.9.9Control.ComposeinId2inIdunIdinO2inOunO<~~>O:.IdbaseControl.ApplicativegetConstConstRegularPFwrapunwrapEncodeFEncencodedecode:+:!InR'InL':*:!LiftunLift:+:InRInL:*:UnitVoidvoidFunitasPairasProdfstFsndFeitherFpairFunPairFinProdinProd2eitherF'Scan prefixScan suffixScanSufScanOPreScanO preScanTweak sufScanTweak prefixScanEnc suffixScanEnc prefixSums suffixSumsPair:#fstPsndPswapPtoPfromPinPfirstPsecondPzipAunzipAinZipAcurryPuncurryPpreScanPsufScanPHasLubFDerHoleyfillCextractLocfillZipperContextupup'downHasTrieTrietrieuntrie:->:memomemo2memo3:+!Right'Left':*!curry'uncurry'either'STriesTriesUntrie Data.TuplefstsndjoinP$fTraversable:*: $fFoldable:*: $fMonad:*:$fApplicative:*:$fTraversable:+: $fFoldable:+: $fFunctorVoidzipunzipassocLassocRadjustLadjustR$fScan:. $fScan:*: $fScan:+:$fScanId $fScanConstUnop $fScanPair $fEncodeFPair$fTraversablePair $fMonadPair$fApplicativePair$fFoldablePairlubF $fHasLubF:*: $fHasLubFIdlassocsquishPtweak1 chainRuletweak2 extractGF $fHoley:. $fHoley:*: $fHoley:+: $fHoleyId $fHoleyConst Data.MaybeNothingFixunFix enumeratemupTreeTrieListTrieidTrieweaveboolfibft1f1trie1atrie1btrie1ctrie1dtrie1etrie1ftrie1gtrie1htrie1ift2altsf2 $fRegularTree $fRegular[] $fHasTriePair $fHasTrie(->)$fHasTrieInteger $fHasTrieInt$fHasTrieTreeTrie $fHasTrieTree$fHasTrieListTrie $fHasTrie[] $fHasTrie:. $fHasTrie:+: $fHasTrie:*: $fHasTrieId$fHasTrieConst$fHasTrie(,,,) $fHasTrie(,,) $fHasTrieBool $fHasTrie(,)$fHasTrieEither $fHasTrie() Data.Eithereither:-> ListSTriebottomsumToFfToSum $fHasTrie:+:! $fHasTrie:*:! $fHasTrieLift $fHasTrie:*! $fHasTrie:+!