concrete PhraseMay of Phrase = CatMay ** open Prelude, ResMay in { lin PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ; UttS s = s ; UttQS qs = qs ; UttIAdv iadv = iadv ; UttNP np = {s = np.s ! Bare} ; UttIP ip = {s = ip.sp ! NF Sg Bare} ; UttImpSg pol imp = {s = pol.s ++ imp.s ! Sg ! pol.p } ; UttImpPol pol imp = {s = pol.s ++ imp.s ! Sg ! pol.p} ; UttImpPl pol imp = {s = pol.s ++ imp.s ! Pl ! pol.p} ; UttVP vp = {s = linVP vp} ; UttAP ap = {s = ap.s} ; UttAdv adv = adv ; UttCN n = {s = linCN n} ; UttCard c = c ; UttInterj i = i ; NoPConj = {s = []} ; PConjConj conj = {s = conj.s1 ++ conj.s2} ; NoVoc = {s = []} ; VocNP np = { s = "," ++ np.s ! Bare} ; }