(module DERIVED_FORMS_CORE-sig (planet chongkai/sml) (#%module-begin (Program: (SIGDECTopDec: (SigDec: (SigBind: (SigId: DERIVED_FORMS_CORE-sig) (SIGSigExp: (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Info-type)))) (TyVarseq:) (LongTyCon: Info-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Info-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Lab-type)))) (TyVarseq:) (LongTyCon: Lab-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Lab-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: VId-type)))) (TyVarseq:) (LongTyCon: VId-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.VId-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Op-type)))) (TyVarseq:) (LongTyCon: Op-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Op-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: AtExp-type)))) (TyVarseq:) (LongTyCon: AtExp-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.AtExp-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: AppExp-type)))) (TyVarseq:) (LongTyCon: AppExp-type) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: GrammarCore.AtExp-type))) (LongTyCon: list-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: InfExp-type)))) (TyVarseq:) (LongTyCon: InfExp-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Exp-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Exp-type)))) (TyVarseq:) (LongTyCon: Exp-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Exp-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Match-type)))) (TyVarseq:) (LongTyCon: Match-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Match-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Mrule-type)))) (TyVarseq:) (LongTyCon: Mrule-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Mrule-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Dec-type)))) (TyVarseq:) (LongTyCon: Dec-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Dec-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: ValBind-type)))) (TyVarseq:) (LongTyCon: ValBind-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.ValBind-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: FvalBind-type)))) (TyVarseq:) (LongTyCon: FvalBind-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.ValBind-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Fmatch-type)))) (TyVarseq:) (LongTyCon: Fmatch-type) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Match-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: VId-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: int-type)))))))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Fmrule-type)))) (TyVarseq:) (LongTyCon: Fmrule-type) (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Mrule-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: VId-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: int-type)))))))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: TypBind-type)))) (TyVarseq:) (LongTyCon: TypBind-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.TypBind-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: DatBind-type)))) (TyVarseq:) (LongTyCon: DatBind-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.DatBind-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: AtPat-type)))) (TyVarseq:) (LongTyCon: AtPat-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.AtPat-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: PatRow-type)))) (TyVarseq:) (LongTyCon: PatRow-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.PatRow-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Pat-type)))) (TyVarseq:) (LongTyCon: Pat-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Pat-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: Ty-type)))) (TyVarseq:) (LongTyCon: Ty-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.Ty-type)))) (EMPTYSpec:)) (SEQSpec: (SEQSpec: (INCLUDESpec: (WHERETYPESigExp: (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: TyVarseq-type)))) (TyVarseq:) (LongTyCon: TyVarseq-type) (CONTy: (Tyseq:) (LongTyCon: GrammarCore.TyVarseq-type)))) (EMPTYSpec:)) (SEQSpec: (VALSpec: (ValDesc: (VId: UNITAtExp) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: Info-type)) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: TUPLEAtExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Exp-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: HASHAtExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Lab-type))))) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: CASEExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: Match-type)))))) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: IFExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |4|) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))))) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: ANDALSOExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)))))) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: ORELSEExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)))))) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: SEQAtExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Exp-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: LETAtExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Dec-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Exp-type))) (LongTyCon: list-type)))))) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: WHILEExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: Exp-type)))))) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: LISTAtExp) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Exp-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: AtExp-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: UNITAtPat) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: Info-type)) (CONTy: (Tyseq:) (LongTyCon: AtPat-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: TUPLEAtPat) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Pat-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: AtPat-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: LISTAtPat) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Pat-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: AtPat-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: IDPatRow) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: VId-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Ty-type))) (LongTyCon: option-type)) (TyRow: (Lab: |4|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Pat-type))) (LongTyCon: option-type)) (TyRow: (Lab: |5|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: PatRow-type))) (LongTyCon: option-type)))))))) (CONTy: (Tyseq:) (LongTyCon: PatRow-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: TUPLETy) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Ty-type))) (LongTyCon: list-type))))) (CONTy: (Tyseq:) (LongTyCon: Ty-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: FvalBind) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Fmatch-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: FvalBind-type))) (LongTyCon: option-type)))))) (CONTy: (Tyseq:) (LongTyCon: FvalBind-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: Fmatch) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Fmrule-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Fmatch-type))) (LongTyCon: option-type)))))) (CONTy: (Tyseq:) (LongTyCon: Fmatch-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: Fmrule) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: Op-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: VId-type)) (TyRow: (Lab: |4|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: AtPat-type))) (LongTyCon: list-type)) (TyRow: (Lab: |5|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: Ty-type))) (LongTyCon: option-type)) (TyRow: (Lab: |6|) (CONTy: (Tyseq:) (LongTyCon: Exp-type))))))))) (CONTy: (Tyseq:) (LongTyCon: Fmrule-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: FUNDec) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: TyVarseq-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq:) (LongTyCon: FvalBind-type)))))) (CONTy: (Tyseq:) (LongTyCon: Dec-type))))) (SEQSpec: (VALSpec: (ValDesc: (VId: DATATYPEDec) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: DatBind-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TypBind-type))) (LongTyCon: option-type)))))) (CONTy: (Tyseq:) (LongTyCon: Dec-type))))) (VALSpec: (ValDesc: (VId: ABSTYPEDec) (ARROWTy: (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: Info-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: DatBind-type)) (TyRow: (Lab: |3|) (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: TypBind-type))) (LongTyCon: option-type)) (TyRow: (Lab: |4|) (CONTy: (Tyseq:) (LongTyCon: Dec-type))))))) (CONTy: (Tyseq:) (LongTyCon: Dec-type)))))))))))))))))))))))))))))))))))))))))))))))))))))))