123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- ;;;
- ;;; My work on common prefixes, using the record type provided
- ;;; by libsuffix
- ;;;
- ;;; Copyright 2016 Jason K. MacDuffie
- ;;; License: GPLv3+
- ;;;
- (import (scheme base)
- (scheme load))
- (load "./libsuffix.scm")
- (define prefixes
- '("a" "ab" "ad" "co" "com" "con" "contra" "de" "di" "dis"
- "e" "em" "en" "ex" "im" "in" "o" "ob" "per" "pre" "pro"
- "re" "se" "su" "sub" "tra" "trans"))
- (define prefixes-2
- '("ante" "auto" "counter" "enter" "extra" "inter" "intro" "out"
- "retro" "super" "sur"))
- (define suffixes-data
- ;; List of known suffixes. Need at least 4 prefixes
- '((act
- ("co" "en" "ex" "pre" "re")
- ("act"))
- (cant
- ("de" "dis" "in" "re")
- ("cant" "cantation"))
- (cede
- ("a" "con" "ex" "pre" "pro" "re" "se" "su")
- ("cede" "cess" "ceed" "cession"))
- (cept
- ("a" "con" "contra" "de" "dis" "ex" "in" "per" "pre"
- "re")
- ("cept" "ception"))
- (cide
- ("con" "de" "in" "pre")
- ("cide" "cision"))
- (clude
- ("con" "ex" "in" "o" "pre" "se")
- ("clude"))
- (code
- ("de" "en" "pre" "re" "sub")
- ("code"))
- (crete
- ("a" "con" "dis" "ex" "se")
- ("crete"))
- (cur
- ("con" "ex" "in" "o" "re")
- ("cur" "cursion"))
- (duce
- ("ab" "ad" "con" "de" "e" "in" "pro" "re" "se" "sub"
- "tra" "trans")
- ("duce"))
- (face
- ("de" "e" "en" "pre" "re")
- ("face"))
- (fect
- ("a" "con" "de" "e" "in" "per" "re" "trans")
- ("fect"))
- (ference
- ("con" "de" "di" "in" "pre" "re" "trans")
- ("ference"))
- (fine
- ("a" "con" "de" "re")
- ("fine"))
- (flate
- ("con" "de" "in" "re" "su")
- ("flate" "flation"))
- (form
- ("con" "de" "in" "per" "pre" "re" "trans")
- ("form"))
- (fuse
- ("con" "de" "di" "e" "in" "per" "pro" "re" "su"
- "trans")
- ("fuse"))
- (gestion
- ("con" "di" "e" "in" "su")
- ("gestion"))
- (gress
- ("a" "con" "di" "e" "in" "pro" "re" "trans")
- ("gress"))
- (ject
- ("ab" "ad" "de" "dis" "e" "in" "ob" "pro" "re" "sub"
- "tra")
- ("ject" "jective"))
- (join
- ("ad" "co" "con" "dis" "en" "re" "sub")
- ("join"))
- (junction
- ("ad" "con" "dis" "in" "sub")
- ("junction"))
- (lapse
- ("co" "e" "pro" "re")
- ("lapse"))
- (late
- ("ab" "co" "de" "di" "e" "ob" "pre" "pro" "re" "sub"
- "trans")
- ("late"))
- (literate
- ("a" "ob" "pre" "sub" "trans")
- ("literate"))
- (lude
- ("a" "co" "de" "e" "pre")
- ("lude"))
- (mend
- ("a" "co" "e" "re")
- ("mend"))
- (place
- ("dis" "em" "pre" "re")
- ("place"))
- (plete
- ("com" "de" "ex" "im" "re" "su")
- ("plete" "plement"))
- (plication
- ("a" "com" "ex" "im" "re" "su")
- ("plication"))
- (port
- ("a" "com" "de" "dis" "ex" "im" "re" "trans")
- ("port"))
- (pose
- ("a" "com" "de" "dis" "ex" "im" "o" "pro" "re" "su"
- "trans")
- ("pose"))
- (quest
- ("a" "con" "in" "re")
- ("quest"))
- (quire
- ("a" "en" "in" "re")
- ("quire"))
- (scribe
- ("a" "ad" "co" "con" "de" "in" "pre" "pro" "re" "sub"
- "trans")
- ("scribe" "script"))
- (sent
- ("a" "ab" "con" "dis" "pre" "re")
- ("sent"))
- (sert
- ("a" "de" "ex" "in")
- ("sert"))
- (set
- ("a" "co" "in" "re" "sub")
- ("set"))
- (serve
- ("con" "de" "dis" "ob" "pre" "re" "sub")
- ("serve"))
- (side
- ("a" "in" "re" "sub")
- ("side"))
- (sign
- ("a" "co" "con" "de" "en" "re")
- ("sign"))
- (solution
- ("ab" "dis" "ex" "re")
- ("solution"))
- (sort
- ("a" "con" "pre" "re")
- ("sort"))
- (spect
- ("a" "in" "pro" "re" "su")
- ("spect"))
- (spire
- ("a" "con" "in" "per" "re" "su" "trans")
- ("spire"))
- (stant
- ("con" "dis" "in" "sub")
- ("stant" "stance"))
- (struct
- ("con" "de" "in" "ob" "re")
- ("struct"))
- (tain
- ("a" "ab" "con" "de" "ob" "per" "re" "su")
- ("tain" "stain"))
- (tent
- ("a" "ab" "con" "de" "dis" "ex" "in" "pre" "re")
- ("tent" "tension" "tention"))
- (tract
- ("a" "ab" "con" "de" "dis" "ex" "pro" "re" "sub")
- ("tract"))
- (train
- ("de" "dis" "en" "pre" "re")
- ("train"))
- (test
- ("a" "con" "de" "ob" "pre" "pro" "re" "sub")
- ("test"))
- (vention
- ("con" "contra" "in" "pre" "sub")
- ("vention"))
- (verse
- ("a" "ad" "co" "con" "contra" "di" "e" "in" "ob"
- "per" "re" "sub" "trans" "tra")
- ("verse" "vert"))
- (vious
- ("de" "en" "ob" "per" "pre")
- ("vious"))))
- (set! suffixes
- (map list->suffix suffixes-data))
|