úÎm¶jG/           ! " # $ % & ' ( ) * + , - .  Safe-Inferedg Time the specified pure expression, returning the required number of CPU-seconds and the result, as a Pair. - CAVEAT: as a side-effect, the expression is deep evaluated. ; Print the time required by the specified pure expression. - CAVEAT: as a side-effect, the expression is deep evaluated. "Arbitrary polymorphic expression. <The original expression, tagged with the CPU-seconds taken.  Safe-Infered`Time the specified IO-action, returning the required number of CPU-seconds and the result, as a Pair. 4Print the time required by the specified IO-action.  Safe-Infered>Constructs an infinite list of independent random-generators. % Shuffles the specified finite list. f The resulting list has the same length and constituents as the original; only the order has changed.  CAVEAT: the implementation zipsI a list of integers, with the specified polymorphic list, then sorts it, L but when identical random integers are generated, the sort-algorithm being stable@ always return the corresponding items in their original order. % The shuffle is therefore imperfect,  but on a 64-bitŠ machine, it would need such a large list of items, for the probability of randomly generating two identical integers, to be significant,  that sort probably wouldn'&t return in a reasonable time anyway. ( Ideally, it would be amended to use an unstable sort-algorithm. \ Generate an infinite list of items, each randomly selected from the specified finite list. \ CAVEAT: because the selections are made non-destructively, duplicates may be returned; cf. . 1Return a random element from the specified list. n Generate an infinite list of items, each randomly selected, from the specified finite list of bounded items. P Because the selections are made non-destructively, duplicates may be returned.  E.g.  (generateSelectionFromBounded /% System.Random.getStdGen) :: IO [Bool] .  Safe-Infered ,A file-path, and the contents read from it. :The ordered sequence of directories, searched for a file. 5 Locates all instances of the specified file, on the  search-path. : CAVEAT: invalid or duplicate paths are silently removed.  CAVEAT: doesn't perform file-globbing.  Accessor.  Accessor.  Traverse the  search-path=, looking for matching instances of the specified file-name, € and either throw an exception, or return a pair composed from the path to the first matching file, together with its contents. H Returns the polymorphic data, read from the first matching file on the  search-path., along with the path from which it was read. [ Returns an error on failure to parse the contents of the first matching file found on the  search-path.       Safe-InferedDThe interface to which data which can self-validate should conform. 9Returns the first error only (so only call on failure of 8), since subsequent tests may be based on invalid data. .Filters failed tests amongst those specified. <Return either null, or the reasons why the data is invalid. 7The data which implements this interface should return 0 if internally consistent. 123456 123456 Safe-InferedBAn interface to which data which have a default-value can adhere. $The default value of the data-type. 77 Safe-InferedSimilar to the class   . The  undefinedd state of the data-type, which may be literal, but could alternatively be a logical starting value.  Safe-Infered3 Apply the same transformation to both halves of a Pair. 7 CAVEAT: the pair is required to have identical types.   Safe-Infered Create the set of all 8/s, migrating left from the specified location.  CAVEAT: 9 fails when : has been reduced to null.  Create the set of all 80s, migrating right from the specified location.  CAVEAT: pattern-match against  :  fails, when ; has been reduced to <. Index. *The polymorphic input list from which the splits- are generated, as the index is stepped left :The list of all required splits of the single input list. Index. *The polymorphic input list from which the splits/ are generated, as the index is stepped right. :The list of all required splits of the single input list.   Safe-Infered;Describes the number of consecutive equal items in a list.  Accessor.  Accessor.  Run-length encodes the specified list.  Performs  run-length3 decoding to retrieve the original unencoded list.      Safe-Infered!5The length of the chunks into which a list is split. " Splits a list into length-size pieces, where  (size >= 0). $ The last chunk will be shorter, if n isn',t an aliquot part of the input list-length.  If  (size == 0)A, the resulting list will be an infinite sequence of null lists. 7 CAVEAT: a similar function is available in the module Data.List.Split, though this one checks for (size < 0). #1Remove the single indexed element from the list. $?A convenient way to compose the function-parameter required by = or >. %~Take the first element from the list, which compares equal according to the specified predicate, with the subsequent element. &A specific instance of %. '` Group equal (though not necessarily adjacent) elements, according to the specified comparator. c The groups are returned in ascending order, whilst their elements remain in their original order. (A specific instance of '. )Converts a list of Pairs, into a narrower list. *\ Merge two sorted lists, according to the specified order, to product a single sorted list.  The merge-process is stableS, in that where items from each list are equal, they remain in the original order. # CAVEAT: duplicates are preserved. +A specific instance of *. ,‚ The list of all permutations, generated by selecting any one datum from each sub-list in turn, from the specified list of lists.  Taken from  Chttp://www.haskell.org/pipermail/haskell-cafe/2006-June/015975.html. -2 Take until the specified predicate is satisfied;  including the item which satisfied it.  NB: takeWhile (not . test) would return one fewer item. .0Show a list, delimited by the specified tokens. !"*The polymorphic input list to be chunked. # The index. The polymorphic input list. 1The same list, with the indexed element removed. $%&'()*+,-2Predicate, used to determine the last item taken. The polymorphic input list. .,(Start-delimiter, separator, end-delimiter) The polymorphic list to show. !"#$%&'()*+,-.!"#$&%(')+*,-.!"#$%&'()*+,-. Safe-Infered?? Safe-Infered@@ Safe-InferedAA Safe-InferedBBC !"#$%&'() * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = >?@ABCDEFGHIJK L?MN?OP?OQ?MR?ST?SUVWXXYtoolshed-0.13.0.0ToolShed.System.TimePureToolShed.System.TimeActionToolShed.System.RandomToolShed.System.FileToolShed.SelfValidateToolShed.DefaultableToolShed.OptionsToolShed.Data.PairToolShed.Data.List.SplitsToolShed.Data.List.RunlengthToolShed.Data.ListText.Regex.Base.RegexLike RegexOptionsToolShed.Arbitrary.SetToolShed.Arbitrary.MapToolShed.Arbitrary.ArrayElemToolShed.Arbitrary.Array getCPUSecondsprintCPUSeconds randomGensshufflegenerateSelectionselectgenerateSelectionFromBounded LocatedData SearchPathlocate getFilePathgetDatagetFilefromFile SelfValidator getErrorsisValid getFirstError extractErrors Defaultable defaultValueOptions blankValuemirrorsplitsLeftFromsplitsRightFromCode getLengthgetDatumencodedecode ChunkLengthchunkexcise equalityByfindConvergenceByfindConvergencegatherBygather linearisemergeBymerge permutations takeUntil showListWithbaseGHC.Basefmapghc-prim GHC.TypesTrue$fSelfValidatorArray$fSelfValidatorMap$fSelfValidatorSet$fSelfValidator[]$fSelfValidator(,)$fSelfValidatorMaybe$fDefaultable(,)SplitGHC.Listinit Data.Tuplefstsndnull Data.ListgroupBynubBy$fArbitrarySet$fArbitraryMap$fArbitraryArray