úÎTOë4      !"#$%&'()*+, - . / 0 1 2 3  Safe-Inferred-Evaluate to weak head normal form and catch ? exceptions which can be raised by errors in pure computation.  See also the Test.ChasingBottoms.IsBottom# module in ChasingBottoms package. 7Make sure that the error message is a concrete String. None Abstract data structure used by  and . 4Nothing: the timeout happened already  Just xs: there is time left  xs* contains the list of threads for which a TimeoutException / will be thrown when the time is over.  5 is needed to compute the Double parameter of the exception. 6timeout exception The Double parameter documented at .  Creates a . The Double) parameter is the time limit in seconds.  All operations behind  will be stopped * at the current time plus the time limit. %Stop an operation at a time given by . The Double) parameter is a percent between 0 and 1.  0:  was called right after the  was created.  1: + was called after the time of the timeout.  near to 1: 2 was called right before the time of the timeout. @ Other values: proportional to the time spend by the operation. 467>knows the time of the timeout and the creation time of itself Dtimeout handling action for which will the percent will be supplied the operation to timeout 8946789NoneA ! contains a time and size limit. Size limit is an : which meaning is given by   and  . Time limit is a ;' which is the allowed time in seconds. Create a new budget. CCheck budget and take another action if there is no more resource. !Decrement free size in a budget. < &decrement size budget with this value what to do in case of timeout (;': percent when the thread was started) +what to do in case there is no more space what to do in a normal case 0funtion to modify free size and produce a value   <  Safe-Inferred=Run an IO8 computation in parallel. The result will appear in the MVar. Run two IO4 computations in parallel and wait for the results.  Run three IO4 computations in parallel and wait for the results.  Run four IO4 computations in parallel and wait for the results. 7Run computations in parallel and wait for the results. =   = NoneRepresentation of > values. used during show @also caused by space shortage but this omission a relevant part 3this is caused space shortage, shown as three dots  timeout, the Double is between 0 and 1. 9 0: evaluation of subexpression started at the beginning K towards 1: evaluation of subexpression started near the end of time limit @ 1: evaluation of subexpression started after time limit (rare) /error message which may contain further errors exception error message %Name and precedence of constructors. empty list constructor nonempty list constructor tuple with n elements character literal !)used also for literals except characters "#Arity of the toplevel constructor. ?%Extract the name and precedence of a > value. @8Limit the length of a string by replacing the middle of  the string by an ellipsis. K The function returns the limit reduced by the final length of the string. # Convert a > value to  given the   representations of the value' s children.  !"?@#ABC !"#! #" ! "?@#ABCNone$D instance for  / instance IsString Doc where fromString = text >Show a character literal. Unicode characters are not escaped. %JShow a character in a string literal. Unicode characters are not escaped. &Convert  to . $%&$%&$%&$%&NoneE True for ,  and  constructors.  Used in '. '$Try to hide some part of the value. =This is used in the evaluation of exercises, when the result N is wrong. We would like to show the erroneous part but not the whole result. (Collect and number  values and replace them  by an indexed bottom sign. + Repeated errors will get the same number. E'()'()'()E'()None*$Evaluation with time an size limit. +&Gives more control over the resources *+*+*+*+ None,Answer with possibility  /: no  F d0: maybe with d possibility (0-1, 1 denotes yes)  -: yes 0Show an , as an equality operator. 1 Compare two >! value with time and size limit. GHI,-./01#time limit for comparison decision +time limit for highlighting the difference *size limit for the output (in characters)  first value  second value JKLMN,-./01,/.-01 GHI,/.-01JKLMN None2Prettyprint a > value. .There is a 1 second time limit and the output 0 contains at most approximately 500 characters. )The exceptions are shown as bottom signs  followed by explanations. 3 Compare two > values. The can be yes, no or maybe. " The differences are highlighted. .There is a 1 second time limit and the output 0 contains at most approximately 500 characters. )The exceptions are shown as bottom signs  followed by explanations. 23O232323OP   !"#$%&'()*+,-./012345678 9 : ; < = > ? @ABCDEEFGHIJHIKLMNOPQ8RSMTUVMW; X Y Y Z [ \ ] ^ _`data-pprint-0.2.1.5Data.Data.GenRep.DocControl.Exception.PureSystem.SimpleTimeoutSystem.SimpleTimeout.LimitsSystem.IO.ParallelData.Data.GenRepData.Data.GenRep.FunctionsData.Data.EvalData.Data.Compare Data.PPrintpretty-1.1.1.0Text.PrettyPrint.HughesPJDoccatchPureErrorscatchPureErrorsSafe TimeoutHandle timeoutHandletimeoutBudget SizeLimit TimeLimit newBudget checkBudget decSizeBudget showTimeout twoParallel threeParallel fourParallel manyParallel GenericDataListHoleDetailHoleTimeout NestedErrorError ConstructorConstructorNameNilConsTupleInfixlInfixrInfixCharPrefixarity constructorshowLitCharInCharshowLitCharInStringtoDocmistify numberErrors getErrorIndexevalevalWithBudgetAnswerYesMaybeNo showAnswer compareDatapprint=== TimeutHandle time-1.4.0.1Data.Time.Clock.UTCUTCTimeTimeOutException$fExceptionTimeOutException$fShowTimeOutExceptionghc-prim GHC.TypesIntDoubleasyncbase Data.DataData precedence limitString$fNFDataGenericData$fNFDataConstructorName Data.StringIsStringisJoker Data.MaybePathDData collapsePathassembleevalPathdecideEquality$fNFDataAnswer showBotts