hamlet/TYVAR-sig.ss
(module TYVAR-sig (planet chongkai/sml)
  (#%module-begin
   (Program:
    (SIGDECTopDec:
     (SigDec:
      (SigBind:
       (SigId: TYVAR-sig)
       (SIGSigExp:
        (SEQSpec:
         (SEQSpec:
          (INCLUDESpec:
           (WHERETYPESigExp:
            (SIGSigExp: (TYPESpec: (TypDec: (TyVarseq:) (TyCon: OverloadingClass-type))))
            (TyVarseq:)
            (LongTyCon: OverloadingClass-type)
            (CONTy: (Tyseq:) (LongTyCon: OverloadingClass.OverloadingClass-type))))
          (EMPTYSpec:))
         (SEQSpec:
          (EQTYPESpec: (TypDec: (TyVarseq:) (TyCon: TyVar-type)))
          (SEQSpec:
           (VALSpec: (ValDesc: (VId: invent) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: bool-type)) (CONTy: (Tyseq:) (LongTyCon: TyVar-type)))))
           (SEQSpec:
            (VALSpec:
             (ValDesc:
              (VId: fromInt)
              (ARROWTy:
               (CONTy: (Tyseq:) (LongTyCon: bool-type))
               (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: int-type)) (CONTy: (Tyseq:) (LongTyCon: TyVar-type))))))
            (SEQSpec:
             (VALSpec: (ValDesc: (VId: fromString) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: string-type)) (CONTy: (Tyseq:) (LongTyCon: TyVar-type)))))
             (SEQSpec:
              (VALSpec:
               (ValDesc:
                (VId: fromOverloadingClass)
                (ARROWTy:
                 (RECORDTy:
                  (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: string-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: OverloadingClass-type)))))
                 (CONTy: (Tyseq:) (LongTyCon: TyVar-type)))))
              (SEQSpec:
               (VALSpec: (ValDesc: (VId: toString) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: TyVar-type)) (CONTy: (Tyseq:) (LongTyCon: string-type)))))
               (SEQSpec:
                (VALSpec: (ValDesc: (VId: admitsEquality) (ARROWTy: (CONTy: (Tyseq:) (LongTyCon: TyVar-type)) (CONTy: (Tyseq:) (LongTyCon: bool-type)))))
                (SEQSpec:
                 (VALSpec:
                  (ValDesc:
                   (VId: overloadingClass)
                   (ARROWTy:
                    (CONTy: (Tyseq:) (LongTyCon: TyVar-type))
                    (CONTy: (Tyseq: (CONTy: (Tyseq:) (LongTyCon: OverloadingClass-type))) (LongTyCon: option-type)))))
                 (VALSpec:
                  (ValDesc:
                   (VId: compare)
                   (ARROWTy:
                    (RECORDTy: (TyRow: (Lab: |1|) (CONTy: (Tyseq:) (LongTyCon: TyVar-type)) (TyRow: (Lab: |2|) (CONTy: (Tyseq:) (LongTyCon: TyVar-type)))))
                    (CONTy: (Tyseq:) (LongTyCon: order-type)))))))))))))))))))))