Vbh      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg hijklmnopqrinopqrinopqrstuvwxyz{|}~((Debugging) options to give to compiler .o file to link with File to #include in main program "main is defined externally (in C) Checking level (0 none) Generate debug info Extra GCC option Output a .h file too Show parse tree Show generated code #Generate trace at run-time (debug) Keep intermediate C file stuvwxyz{|}~ suttuvxwwxyz{z{|}}~      A     LET TmpVar Local TmpVar  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEC      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGA          ,?>=<;:9876543210/.-,+*)('&%$#"!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEHIJKLM HIJNOPQRSTUVWXYZ[\K]^_`abcdefgLMHIJKLM jhijklmnopqrstuvwxyz{|}~thijklmnopqrstuvwxyz{|}~jhY~}|{zyxwvutsrqponmlkjiijklmnopqrstuvwxyz{|}~ B     ,      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~B                     ( !"#$%&'()*+,-./012345( !"#$%&'()*+,-./012345(10/.-,+*)('&%$#"!  !"#$%&'()*+,-./012345 678967896789 :;<=>?@ABC :;<=>?@ABC : CBA@?>=<;;<=>?@ABCportable experimentaleb@dcs.st-and.ac.ukDE:Compile a source file in supercombinator language to a .o Input file name Output file name &Interface (.ei) file name, if desired Input file name Output file name &Interface (.ei) file name, if desired Output file name &Interface (.ei) file name, if desired  Declarations F1Link a collection of .o files into an executable  Object files Executable filename G   non-portable experimentaleb@cs.st-andrews.ac.ukfHIJTop level declarations Export a C type Link to a C library Include a C header Normal function K&Build expressions, with a name supply -Build a case alternative, with a name supply LMNO0Build a function definition, with a name supply P&Build expressions, with a name supply A sub-term, with a name supply !"#$%&')*+,./0123Q44Case alternative for constructor with the given tag the tag RHS of alternative 50Case alternative for a tuple with the given tag RHS of alternative 6 Case alternative for a constant  the constant 7(Default case if no other branches apply RST89)While loops (primitive, for efficiency). %Boolean test (most likely effectful) Body : While loop, with an accumulator %Boolean test (most likely effectful) Accumulator (of type a) Body (of type a -> a) ;<=Evaluate an expression lazily >Evaluate an expression but don'&t update the closure with the result. 1 | Use this if the expression has a side effect. ?@ABCGEvaluate an expression under manually allocated memory. Creates a pool F of memory. All allocation is from this pool, and there is no garbage 1 collection. The pool is freed after evaluation. Size of block to allocate Expression to evaluate D'Build a constructor with the given tag Tag EBuild a tuple F4Build a case expression with a list of alternatives G#Let bindings with an explicit name U&Let bindings with higher order syntax HAUpdate a local variable (could be an explicit name or bound with  a lambda, so we let it be an . IConstant string JConstant integer KConstant float LConstant character MConstant bool OConstructor for the unit type 2Sequence terms --- evaluate the first then second PQRSTUVWXY:Project an argument from an expression which evaluates to  constructor form. Expression in constructor form Argument number ZReference to a function name [Reference to a function name \ Application  function  argument ]^VW_#Compile a program to an executable `1Compile a program to an executable, with options aCompile a program to a .o b(Compile a program to a .o, with options cELink a collection of object files. By convention, the entry point is  the function called main. dALink a collection of object files, with options. By convention, ( the entry point is the function called main. efXYZ[\gISome default definitions: putStr, putStrLn, readStr, append, intToString d  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgd^\FDE456789:;=>?@ABGH<IJKLMNYZ[OCPWVUTSRQX '&%$#"!()3210/.,+*-]_ac`bdef gQ !"#$%&')*+,./0123456789:;<=>?@ABCDEFGHIJKLMOPQRSTUVWXYZ[\]^_`abcdefg] !"#$%&'()*(+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno"pqrstuvwxyz{|}~%&'      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl m n o p q r s t u v w x y z { | } ~                                                                                                                                                                     ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ 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 [ \ ] ^ _ ` 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 { | } ~                                                                                                                                                               A ( + # & $ , - . 0 B   E C 6 7 8 1 3 4 5      I M N O  !"#$%#&'()*+,-./0123456789:epic-0.9 Epic.Epic Epic.Compiler Paths_epic Epic.Language Epic.SimplifyEpic.Evaluator Epic.Bytecode Epic.CodegenC Epic.Lexer Epic.ParserEpic.ScopecheckEpic.StackcodeEpic.CodegenStack Epic.OTTLangOpExprNameTypeCompileOptionsLinkObjMainInc ExternalMainCheckingDebugGCCOpt MakeHeader ShowParseTree ShowBytecodeTraceKeepCcompile compileOpts compileDeclslinkProgramEpicDeclCTypeLinkIncludeEpicFnlet_ AlternativeEpicExprtermTermplus_minus_times_divide_plusF_minusF_timesF_divideF_eq_lt_lte_gt_gte_eqF_ltF_lteF_gtF_gteF_shiftl_shiftr_contuple constcase defaultcaseif_while_ whileAcc_error_op_lazy_effect_foreign_ foreignL_ foreignConst_foreignConstL_malloc_con_tuple_case_letN_update_strintfloatcharboolunit_+>tyInttyChartyBooltyFloattyStringtyPtrtyUnittyAnytyC!.fnref@@ mkProgramname compileWith compileObjcompileObjWithlinkWithrunevaluate basic_defscatchIOversionbindirlibdirdatadir libexecdir getBinDir getLibDir getDataDir getLibexecDirgetDataFileNameResultFailureSuccessCGFlagStrictInlineHOAShoasmkHOASSubstVsubstEvalDecl EDirectiveEDeclenameedefDeclExternfargsfnamefrettypefdeffexport fcompflagsFuncBindfun_argslocalsdefnflagsShRShLOpFGEOpFGTOpFLEOpFLTOpFEQFDivideFTimesFMinusFPlusOpGEOpGTOpLEOpLTOpEQModuloDivideTimesMinusPlus Allocator GrowablePool FixedPoolHRHSHBindHExpCaseAlt DefaultCaseConstAlt alt_constHAlt alt_numargs alt_bindsAltalt_tagalt_argsalt_exprLazyForeignCall ForeignCallWithMem ImpossibleErrorHLamLamUpdateHLetLetMLetWhileAccWhileIfCaseProjConstConParEffectLazyAppRVHFunTagContextMNUNMkUnusedMkUnitMkBoolMkString MkBigFloatMkFloatMkCharMkBigIntMkIntTyEvalTyLinTyFunTyCTypeTyDataTyAnyTyUnitTyPtrTyString TyBigFloatTyBigIntTyFloatTyBoolTyCharTyIntappForm checkLeveltempfile environmentshowuser quotenameshowCaritySCtxt simplifyAllsimplsimplify simplFLetQuotequoteevalfConAlt fConstAltprojectTailCallMiddleTail CompileStateCS arg_types num_localsnext_tmp string_poolmax_tmp next_labelFunCodeCodeBytecodeByteOpCOMMENTTRACEERRORDRETURNRETURNEVALINTEVALJUMPJFALSE BREAKFALSEMEMORYWHILEACCWHILELABELCONSTSTMPSLOCALSOPIFINTCASECASEPROJVARPROJSTRINGBIGFLOATFLOATBIGINTINTUNUSEDUNITCONNOASSIGN TMPASSIGNASSIGN DROPROOTS ADDTMPROOT ADDVARROOTGROWROOTVARFOREIGNADDARGSTHUNKTAILCALLCALLStrVarTmpVarLocalscompilepeephole peephole'evalledcodegenCcodegenH writeIFace compileBodyexportCexportH showextargs fileHeader mainDrivershowargshowargsshowlistheaderswrappers wrapperArgsworkerstmpconstvloc quickcallthunk declareconstsdeclare foreignArgscToEpiccastFromepicToC foreignArgdoOpctyctysctyargTokenTokenEOF TokenInclude TokenGrowable TokenFixed TokenMemory TokenExternTokenDotTokenLamTokenBar TokenComma TokenSemi TokenProjTokenImpossible TokenError TokenEffect TokenStrictTokenPar TokenLazyTokenIn TokenUnused TokenWhile TokenElse TokenThenTokenIfTokenOf TokenCaseTokenLet TokenCType TokenExport TokenDefaultTokenCon TokenUnit TokenColon TokenArrowTokenShRTokenShLTokenFLTTokenFGTTokenFLETokenFGETokenFEQTokenLTTokenGTTokenLETokenGETokenEQ TokenEquals TokenFDivide TokenFTimes TokenFMinus TokenFPlusTokenMod TokenDivide TokenTimes TokenMinus TokenPlusTokenCSBTokenOSBTokenCCBTokenOCBTokenCBTokenOB TokenInline TokenLink TokenCInclude TokenForeign TokenFunType TokenTyEval TokenTyLinear TokenTyCType TokenDataType TokenAnyType TokenUnitType TokenPtrTypeTokenStringTypeTokenBigFloatTypeTokenFloatType TokenBoolType TokenCharTypeTokenBigIntType TokenIntType TokenBool TokenChar TokenBigFloat TokenBigInt TokenFloatTokenInt TokenString TokenNameP LineNumber getLineNo getFileName getContentthenPreturnPfailPcatchP happyError reportErrorlexerreadNummknamegetstrgetcharlexErrorlexerEatCommentlexerEatToNewlinelexNum lexStringlexChar isAllowedlexVar lexSpecialgetstr' HappyAddrHappyA#HappyStk Happy_IntList HappyConsHappyAny HappyAbsSynhappyIn6 happyOut6happyIn7 happyOut7happyIn8 happyOut8happyIn9 happyOut9 happyIn10 happyOut10 happyIn11 happyOut11 happyIn12 happyOut12 happyIn13 happyOut13 happyIn14 happyOut14 happyIn15 happyOut15 happyIn16 happyOut16 happyIn17 happyOut17 happyIn18 happyOut18 happyIn19 happyOut19 happyIn20 happyOut20 happyIn21 happyOut21 happyIn22 happyOut22 happyIn23 happyOut23 happyInTok happyOutTokhappyActOffsetshappyGotoOffsetshappyDefActions happyCheck happyTable happyThen happyReturn happyReturn1 happyError'mkBindmkExternparse parseExpr parseDecl parseFile notHappyAtAll happyTcHack happyDoSeq happyDontSeqhappyReduceArr happy_n_termshappy_n_nonterms happyReduce_3happyReduction_3 happyReduce_4happyReduction_4 happyReduce_5happyReduction_5 happyReduce_6happyReduction_6 happyReduce_7happyReduction_7 happyReduce_8happyReduction_8 happyReduce_9happyReduction_9happyReduce_10happyReduction_10happyReduce_11happyReduction_11happyReduce_12happyReduction_12happyReduce_13happyReduction_13happyReduce_14happyReduction_14happyReduce_15happyReduction_15happyReduce_16happyReduction_16happyReduce_17happyReduction_17happyReduce_18happyReduction_18happyReduce_19happyReduction_19happyReduce_20happyReduction_20happyReduce_21happyReduction_21happyReduce_22happyReduction_22happyReduce_23happyReduction_23happyReduce_24happyReduction_24happyReduce_25happyReduction_25happyReduce_26happyReduction_26happyReduce_27happyReduction_27happyReduce_28happyReduction_28happyReduce_29happyReduction_29happyReduce_30happyReduction_30happyReduce_31happyReduction_31happyReduce_32happyReduction_32happyReduce_33happyReduction_33happyReduce_34happyReduction_34happyReduce_35happyReduction_35happyReduce_36happyReduction_36happyReduce_37happyReduction_37happyReduce_38happyReduction_38happyReduce_39happyReduction_39happyReduce_40happyReduction_40happyReduce_41happyReduction_41happyReduce_42happyReduction_42happyReduce_43happyReduction_43happyReduce_44happyReduction_44happyReduce_45happyReduction_45happyReduce_46happyReduction_46happyReduce_47happyReduction_47happyReduce_48happyReduction_48happyReduce_49happyReduction_49happyReduce_50happyReduction_50happyReduce_51happyReduction_51happyReduce_52happyReduction_52happyReduce_53happyReduction_53happyReduce_54happyReduction_54happyReduce_55happyReduction_55happyReduce_56happyReduction_56happyReduce_57happyReduction_57happyReduce_58happyReduction_58happyReduce_59happyReduction_59happyReduce_60happyReduction_60happyReduce_61happyReduction_61happyReduce_62happyReduction_62happyReduce_63happyReduction_63happyReduce_64happyReduction_64happyReduce_65happyReduction_65happyReduce_66happyReduction_66happyReduce_67happyReduction_67happyReduce_68happyReduction_68happyReduce_69happyReduction_69happyReduce_70happyReduction_70happyReduce_71happyReduction_71happyReduce_72happyReduction_72happyReduce_73happyReduction_73happyReduce_74happyReduction_74happyReduce_75happyReduction_75happyReduce_76happyReduction_76happyReduce_77happyReduction_77happyReduce_78happyReduction_78happyReduce_79happyReduction_79happyReduce_80happyReduction_80happyReduce_81happyReduction_81happyReduce_82happyReduction_82happyReduce_83happyReduction_83happyReduce_84happyReduction_84happyReduce_85happyReduction_85happyReduce_86happyReduction_86happyReduce_87happyReduction_87happyReduce_88happyReduction_88happyReduce_89happyReduction_89happyReduce_90happyReduction_90happyReduce_91happyReduction_91happyReduce_92happyReduction_92happyReduce_93happyReduction_93happyReduce_94happyReduction_94happyReduce_95happyReduction_95happyReduce_96happyReduction_96happyReduce_97happyReduction_97happyReduce_98happyReduction_98happyReduce_99happyReduction_99happyReduce_100happyReduction_100happyReduce_101happyReduction_101happyReduce_102happyReduction_102happyReduce_103happyReduction_103happyReduce_104happyReduction_104happyReduce_105happyReduction_105happyReduce_106happyReduction_106 happyNewToken happyError_ happyThen1mkparsemkexprmkdeclhappySeq happyParse happyAccept happyDoActionindexShortOffAddr happyShifthappySpecReduce_0happySpecReduce_1happySpecReduce_2happySpecReduce_3 happyReducehappyMonadReducehappyMonad2Reduce happyDrop happyDropStk happyGoto happyFailRtoVrtovdoRtoVcheckAll scopecheckv_iseNotImplementedDISCARDSLIDEPUSHTmpLocworkerOTTermOTTYOTSwitchOTTlOTHdOTRecOTAppOTLamOTVOTRefaddGCC outputHeadergetExtramkMain epic_decls eval_declsLetExprmkAltCases<|>altfuncmkFuncexp1exp2exp3letV_mkDecl mkEvalDeclputStr_ putStrLn_readStr_append_ intToString_