;ELC ;;; compiled by kwzh@hal.gnu.ai.mit.edu on Tue May 2 20:22:06 1995 ;;; from file /gd/gnu/emacs/19.0/lisp/doctor.el ;;; emacs version 19.28.90.69. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19"))) (error "`/gd/gnu/emacs/19.0/lisp/doctor.el' was compiled for Emacs 19")) (defalias 'doctor-cadr #[(x) "A@" [x] 1]) (defalias 'doctor-caddr #[(x) "AA@" [x] 1]) (defalias 'doctor-cddr #[(x) "AA" [x] 1]) (defalias '// #[(x) "" [x] 1]) #@29 quoted arg form of doctor-$ (defalias '$ '(macro . #[(what) "\nDD" [doctor-$ quote what] 3 (#$ . 648)])) #@55 Return the car of a list, rotating the list each time (defalias 'doctor-$ #[(what) "J@ A\nC\"\fL\n+" [what vv first append ww] 4 (#$ . 762)]) (byte-code "! B   # #‡" [boundp doctor-mode-map nil current-load-list make-sparse-keymap define-key "\n" doctor-read-print " " doctor-ret-or-read] 4) #@219 Major mode for running the Doctor (Eliza) program. Like Text mode with Auto Fill mode except that RET when point is after a newline, or LFD at any time, reads the sentence before point, and prints the Doctor's answer. (defalias 'doctor-mode #[nil " ! !c" [text-mode make-doctor-variables use-local-map doctor-mode-map doctor-mode major-mode "Doctor" mode-name turn-on-auto-fill doctor-type (i am the psychotherapist \. ($ please) ($ describe) your ($ problems) \. each time you are finished talking\, type RET twice \.) "\n"] 2 (#$ . 1093) nil]) (defalias 'make-doctor-variables #[nil "!!\"!! !\n! !\f!!!!!!!!!! !\"!$!&!(!*!,!.!0!2!4!6!8!:!@!A@B!CBD!EDF!GFH!IHJ!KJL!MLN!ONP!QPR!SRT!UTV!WVX!YXZ![Z\\!]\\^!_^`!a`b!cbd!edf!gfh!ihj!kjl!mln!onp!qpr!srt!utv!wvx!yxz!{z|!}|~!~!!!!!!!!!!!!!!!!!!!ȉ" [make-local-variable monosyllables "\n Your attitude at the end of the session was wholly unacceptable.\n Please try to come back next time with a willingness to speak more\n freely. If you continue to refuse to talk openly, there is little\n I can do to help!\n" typos mapcar #[(x) " @ !# ! !# @" [put x doctor-correction doctor-cadr doctor-expansion doctor-caddr] 5] ((theyll they\'ll (they will)) (theyre they\'re (they are)) (hes he\'s (he is)) (he7s he\'s (he is)) (im i\'m (you are)) (i7m i\'m (you are)) (isa is\ a (is a)) (thier their (their)) (dont don\'t (do not)) (don7t don\'t (do not)) (you7re you\'re (i am)) (you7ve you\'ve (i have)) (you7ll you\'ll (i will))) found nil owner history *debug* inter ((well\,) (hmmm \.\.\.\ so\,) (so) (\.\.\.and) (then)) continue ((continue) (proceed) (go on) (keep going)) relation ((your relationship with) (something you remember about) (your feelings toward) (some experiences you have had with) (how you feel about)) fears ((($ whysay) you are ($ afraidof) (// feared) \?) (you seem terrified by (// feared) \.) (when did you first feel ($ afraidof) (// feared) \?)) sure ((sure) (positive) (certain) (absolutely sure)) afraidof ((afraid of) (frightened by) (scared of)) areyou ((are you) (have you been) (have you been)) isrelated ((has something to do with) (is related to) (could be the reason for) (is caused by) (is because of)) arerelated ((have something to do with) (are related to) (could have caused) (could be the reason for) (are caused by) (are because of)) moods ((($ areyou) (// found) often \?) (what causes you to be (// found) \?) (($ whysay) you are (// found) \?)) maybe ((maybe) (perhaps) (possibly)) whatwhen ((what happened when) (what would happen if)) hello ((how do you do \?) (hello \.) (howdy!) (hello \.) (hi \.) (hi there \.)) drnk ((do you drink a lot of (// found) \?) (do you get drunk often \?) (($ describe) your drinking habits \.)) drugs ((do you use (// found) often \?) (($ areyou) addicted to (// found) \?) (do you realize that drugs can be very harmful \?) (($ maybe) you should try to quit using (// found) \.)) whywant ((($ whysay) (// subj) might ($ want) (// obj) \?) (how does it feel to want \?) (why should (// subj) get (// obj) \?) (when did (// subj) first ($ want) (// obj) \?) (($ areyou) obsessed with (// obj) \?) (why should i give (// obj) to (// subj) \?) (have you ever gotten (// obj) \?)) canyou ((of course i can \.) (why should i \?) (what makes you think i would even want to \?) (i am the doctor\, i can do anything i damn please \.) (not really\, it\'s not up to me \.) (depends\, how important is it \?) (i could\, but i don\'t think it would be a wise thing to do \.) (can you \?) (maybe i can\, maybe i can\'t \.\.\.) (i don\'t think i should do that \.)) want ((want) (desire) (wish) (want) (hope)) shortlst ((can you elaborate on that \?) (($ please) continue \.) (go on\, don\'t be afraid \.) (i need a little more detail please \.) (you\'re being a bit brief\, ($ please) go into detail \.) (can you be more explicit \?) (and \?) (($ please) go into more detail \?) (you aren\'t being very talkative today!) (is that all there is to it \?) (why must you respond so briefly \?)) famlst ((tell me ($ something) about (// owner) family \.) (you seem to dwell on (// owner) family \.) (($ areyou) hung up on (// owner) family \?)) huhlst ((($ whysay) (// sent) \?) (is it because of ($ things) that you say (// sent) \?)) longhuhlst ((($ whysay) that \?) (i don\'t understand \.) (($ thlst)) (($ areyou) ($ afraidof) that \?)) feelings-about ((feelings about) (aprehensions toward) (thoughts on) (emotions toward)) random-adjective ((vivid) (emotionally stimulating) (exciting) (boring) (interesting) (recent) (random) (unusual) (shocking) (embarrassing)) whysay ((why do you say) (what makes you believe) (are you sure that) (do you really think) (what makes you think)) isee ((i see \.\.\.) (yes\,) (i understand \.) (oh \.)) please ((please\,) (i would appreciate it if you would) (perhaps you could) (please\,) (would you please) (why don\'t you) (could you)) bye ((my secretary will send you a bill \.) (bye bye \.) (see ya \.) (ok\, talk to you some other time \.) (talk to you later \.) (ok\, have fun \.) (ciao \.)) something ((something) (more) (how you feel)) things ((your plans) (your life) (the people you hang around with) (problems at school) (any hobbies you have) (your sex life) (hangups you have) (your inhibitions) (some problems in your childhood) (some problems at home)) describe ((describe) (tell me about) (talk about) (discuss) (tell me more about) (elaborate on)) ibelieve ((i believe) (i think) (i have a feeling) (it seems to me that) (it looks like)) problems ((problems) (inhibitions) (hangups) (difficulties) (anxieties) (frustrations)) bother ((does it bother you that) (are you annoyed that) (did you ever regret) (are you sorry) (are you satisfied with the fact that)) machlst ((you have your mind on (// found) \, it seems \.) (you think too much about (// found) \.) (you should try taking your mind off of (// found) \.) (are you a computer hacker \?)) qlist ((what do you think \?) (i\'ll ask the questions\, if you don\'t mind!) (i could ask the same thing myself \.) (($ please) allow me to do the questioning \.) (i have asked myself that question many times \.) (($ please) try to answer that question yourself \.)) elist ((($ please) try to calm yourself \.) (you seem very excited \. relax \. ($ please) ($ describe) ($ things) \.) (you\'re being very emotional \. calm down \.)) foullst ((($ please) watch your tongue!) (($ please) avoid such unwholesome thoughts \.) (($ please) get your mind out of the gutter \.) (such lewdness is not appreciated \.)) deathlst ((this is not a healthy way of thinking \.) (($ bother) you\, too\, may die someday \?) (i am worried by your obsession with this topic!) (did you watch a lot of crime and violence on television as a child \?)) sexlst ((($ areyou) ($ afraidof) sex \?) (($ describe) ($ something) about your sexual history \.) (($ please) ($ describe) your sex life \.\.\.) (($ describe) your ($ feelings-about) your sexual partner \.) (($ describe) your most ($ random-adjective) sexual experience \.) (($ areyou) satisfied with (// lover) \.\.\. \?)) neglst ((why not \?) (($ bother) i ask that \?) (why not \?) (why not \?) (how come \?) (($ bother) i ask that \?)) beclst ((is it because (// sent) that you came to me \?) (($ bother) (// sent) \?) (when did you first know that (// sent) \?) (is the fact that (// sent) the real reason \?) (does the fact that (// sent) explain anything else \?) (($ areyou) ($ sure) (// sent) \?)) shortbeclst ((($ bother) i ask you that \?) (that\'s not much of an answer!) (($ inter) why won\'t you talk about it \?) (speak up!) (($ areyou) ($ afraidof) talking about it \?) (don\'t be ($ afraidof) elaborating \.) (($ please) go into more detail \.)) thlst ((($ maybe) ($ things) ($ arerelated) this \.) (is it because of ($ things) that you are going through all this \?) (how do you reconcile ($ things) \?) (($ maybe) this ($ isrelated) ($ things) \?)) remlst ((earlier you said ($ history) \?) (you mentioned that ($ history) \?) (($ whysay) ($ history) \?)) toklst ((is this how you relax \?) (how long have you been smoking grass \?) (($ areyou) ($ afraidof) of being drawn to using harder stuff \?)) states ((do you get (// found) often \?) (do you enjoy being (// found) \?) (what makes you (// found) \?) (how often ($ areyou) (// found) \?) (when were you last (// found) \?)) replist ((i you) (my your) (me you) (you me) (your my) (mine yours) (yours mine) (our your) (ours yours) (we you) (dunno do not know) (no\,) (yes\,) (ya i) (aint am not) (wanna want to) (gimme give me) (gotta have to) (gonna going to) (never not ever) (doesn\'t does not) (don\'t do not) (aren\'t are not) (isn\'t is not) (won\'t will not) (can\'t cannot) (haven\'t have not) (i\'m you are) (ourselves yourselves) (myself yourself) (yourself myself) (you\'re i am) (you\'ve i have) (i\'ve you have) (i\'ll you will) (you\'ll i shall) (i\'d you would) (you\'d i would) (here there) (please) (eh\,) (eh) (oh\,) (oh) (shouldn\'t should not) (wouldn\'t would not) (won\'t will not) (hasn\'t has not)) stallmanlst ((($ describe) your ($ feelings-about) him \.) (($ areyou) a friend of Stallman \?) (($ bother) Stallman is ($ random-adjective) \?) (($ ibelieve) you are ($ afraidof) him \.)) schoollst ((($ describe) your (// found) \.) (($ bother) your grades could ($ improve) \?) (($ areyou) ($ afraidof) (// found) \?) (($ maybe) this ($ isrelated) to your attitude \.) (($ areyou) absent often \?) (($ maybe) you should study ($ something) \.)) improve ((improve) (be better) (be improved) (be higher)) elizalst ((($ areyou) ($ sure) \?) (($ ibelieve) you have ($ problems) with (// found) \.) (($ whysay) (// sent) \?)) sportslst ((tell me ($ something) about (// found) \.) (($ describe) ($ relation) (// found) \.) (do you find (// found) ($ random-adjective) \?)) mathlst ((($ describe) ($ something) about math \.) (($ maybe) your ($ problems) ($ arerelated) (// found) \.) (i do\'nt know much (// found) \, but ($ continue) anyway \.)) zippylst ((($ areyou) Zippy \?) (($ ibelieve) you have some serious ($ problems) \.) (($ bother) you are a pinhead \?)) chatlst ((($ maybe) we could chat \.) (($ please) ($ describe) ($ something) about chat mode \.) (($ bother) our discussion is so ($ random-adjective) \?)) abuselst ((($ please) try to be less abusive \.) (($ describe) why you call me (// found) \.) (i\'ve had enough of you!)) abusewords (boring bozo clown clumsy cretin dumb dummy fool foolish gnerd gnurd idiot jerk lose loser louse lousy luse luser moron nerd nurd oaf oafish reek stink stupid tool toolish twit) howareyoulst ((how are you) (hows it going) (hows it going eh) (how\'s it going) (how\'s it going eh) (how goes it) (whats up) (whats new) (what\'s up) (what\'s new) (howre you) (how\'re you) (how\'s everything) (how is everything) (how do you do) (how\'s it hanging) (que pasa) (how are you doing) (what do you say)) whereoutp (huh remem rthing) subj verb obj feared observation-list repetitive-shortness (0 . 0) **mad** rms-flag eliza-flag zippy-flag lover (your partner) bak lincount 0 *print-upcase* *print-space* howdyflag object] 3]) (defalias 'doctor-meaning #[(x) "N" [x doctor-meaning] 2]) #@56 Store the base meaning of a word on the property list. (defalias 'doctor-put-meaning '(macro . #[(symb val) "\nD\fF" [put quote symb (quote doctor-meaning) val] 4 (#$ . 12873)])) (byte-code "############################################################@#A#B#C#DE#FE#GE#HE#IE#JE#KE#LE#ME#NE#OO#PP#QP#RR#SR#TT#UT#VT#WX#YX#ZX#[X#\\X#]X#^X#_X#`a#ba#ca#aa#da#ea#fa#ga#ha#ga#ia#ja#ka#lm#nm#om#pm#qm#rm#sm#tm#um#vm#wm#xm#yz#{z#zz#|z#}z#~####################################################################################################################################### #\n# #\f# #########" [put howdy doctor-meaning hi greetings hello tops20 mach tops-20 tops pdp11 computer unix machine computers machines pdp11s foo foobar multics macsyma teletype la36 vt52 zork trek startrek advent pdp dec commodore vic bbs modem baud macintosh vax vms ibm pc bitching foul shit bastard damn damned hell suck sucking sux ass whore bitch asshole shrink pot toke grass weed marijuana acapulco columbian tokin joint toking tokin\' toked roach pills drug dope acid lsd speed heroin hash cocaine uppers downers loves love loved hates dislikes hate hated dislike stoned state drunk drunken high horny blasted happy paranoid wish desire wishes want like hope hopes desires wants likes needs need frustrated mood depressed annoyed upset unhappy excited worried lonely angry mad pissed jealous afraid fear terrified scared frightened virginity sexnoun virgins virgin cock cocks dick dicks cunt cunts prostitute condom sex rapes wife family brothers sisters parent parents brother sister father mother husband siblings grandmother grandfather maternal paternal stab death murder murders suicide suicides kill kills die dies died dead deaths pain symptoms ache fever sore aching stomachache headache hurts disease virus vomit vomiting barf toothache hurt rum alcohol gin vodka bourbon beer wine whiskey scotch fuck sexverb fucked screw screwing fucking rape raped kiss kissing kisses screws fucks because conj but however besides anyway that except why how until when whenever while since rms stallman school schools skool grade grades teacher teachers classes professor prof profs professors mit emacs eliza liza elisa weizenbaum doktor athletics sports baseball basketball football frisbee gym gymnastics hockey lacrosse soccer softball swimming swim tennis volleyball math mathematics mathematical theorem axiom lemma algebra algebraic trig trigonometry trigonometric geometry geometric calculus arithmetic zippy pinhead chat] 4) #@59 Switch to *doctor* buffer and start giving psychotherapy. (defalias 'doctor #[nil "! " [switch-to-buffer "*doctor*" doctor-mode] 2 (#$ . 17431) nil]) #@114 Insert a newline if preceding character is not a newline. Otherwise call the Doctor to parse preceding sentence. (defalias 'doctor-ret-or-read #[(arg) "hU !" [10 doctor-read-print newline arg] 2 (#$ . 17593) "*p"]) #@16 top level loop (defalias 'doctor-read-print #[nil " c T !c )" [doctor-readin sent "\n" lincount doctor-doc bak] 2 (#$ . 17823) nil]) #@49 Read a sentence. Return it as a list of words. (defalias 'doctor-readin #[nil "!m C\" )" [nil sentence backward-sentence 1 append doctor-read-token] 3 (#$ . 17974)]) #@27 read one word from buffer (defalias 'doctor-read-token #[nil "`v`{!!" [intern 1 re-search-forward "\\Sw*"] 3 (#$ . 18163)]) (defalias 'doctor-doc #[(sent) "\n!\f!Ɲ!@>'!!@=B!\f>B! !!@=O!!њ $\"!! \"GV!0\"!>>>\"@ GW@!= >\"!@='!='@A!BU\nC!@!BU!D!E F!GH!!" [sent (foo) doctor-type (bar! ($ please) ($ continue)) howareyoulst (i\'m ok \. ($ describe) yourself \.) ((good bye) (see you later) (i quit) (so long) (go away) (get lost)) (bye halt break quit done exit goodbye bye\, stop pause goodbye\, stop pause) doctor-$ bye you doctor-cadr abusewords found abuselst whatmeans doctor-def (parse) subj = ", " verb "\n" object phrase obj "," noun form current keyword is ", " most recent possessive owner sentence used was "..." (// bak) doctor-defq doctor-define 12 doctor-shorten doctor-correct-spelling doctor-replace replist me i am ((am are)) yow doctor-zippy 2 doctor-meaning howdy doctor-howdy doctor-short ((me i)) doctor-fixup do not random 3 0 (are you ($ afraidof) that \?) (don\'t tell me what to do \. i am the psychiatrist here!) doctor-rthing (($ whysay) that i shouldn\'t (doctor-cddr sent) \?) doctor-go doctor-wherego] 36]) #@56 Correct the spelling and expand each word in sentence. (defalias 'doctor-correct-spelling #[(sent) " \"\"" [sent apply append mapcar #[(word) " >\fNNC" [word typos doctor-correction doctor-expansion] 2]] 5 (#$ . 19531)]) #@53 Make a sentence manageably short using a few hacks. (defalias 'doctor-shorten #[(sent) "\n.\n@ >'\fGV'\f !\nA\n +" [nil (because but however besides anyway until while that except why how) temp retval foo sent 3 doctor-fixup t] 4 (#$ . 19776)]) (defalias 'doctor-define #[(sent found) " \n$!/!?// !/ȉ !#/ˇ" [doctor-svo sent found 1 nil doctor-nounp subj doctor-pronounp doctor-meaning object put t] 5]) #@63 Set global var FOUND to first keyword found in sentence SENT. (defalias 'doctor-defq #[(sent) "ƒ @\f> @ A) " [nil found (means applies mean refers refer related similar defined associated linked like same) temp sent] 3 (#$ . 20245)]) (defalias 'doctor-def #[(x) " !ǯ!ȇ" [doctor-type the word x means doctor-meaning to me nil] 8]) #@46 Delete the last element of the history list. (defalias 'doctor-forget #[nil " !A!" [reverse history] 3 (#$ . 20615)]) #@102 Prompt for a line of input from the minibuffer until a noun or verb is seen. Put dialogue in buffer. (defalias 'doctor-query #[(x) "\n!P\f[% !DZ  \f @!=@%@!R̉\n\"@\"%A'\f+" [nil doctor-make-string x " what ? " retval prompt a 10 read-string doctor-readin doctor-nounp doctor-verbp doctor-build " "] 5 (#$ . 20745)]) #@218 Search for the subject of a sentence SENT, looking for the noun closest to and preceding KEY by at least TYPE words. Set global variable subj to the subject noun, and return the portion of the sentence following it. (defalias 'doctor-subjsearch #[(sent key type) "G >GZ\nZV 8! S V1 8 T5)" [sent key type i -1 doctor-nounp subj you nil] 4 (#$ . 21131)]) #@45 Returns t if the symbol argument is a noun. (defalias 'doctor-nounp #[(x) " ! ! Ú ! !?" [doctor-pronounp x doctor-verbp not doctor-prepp doctor-modifierp] 2 (#$ . 21524)]) #@48 Returns t if the symbol argument is a pronoun. (defalias 'doctor-pronounp #[(x) ">" [x (i me mine myself we us ours ourselves ourself you yours yourself yourselves he him himself she hers herself it that those this these things thing they them themselves theirs anybody everybody somebody anyone everyone someone anything something everything)] 2 (#$ . 21720)]) (mapcar #[(x) " #" [put x doctor-sentence-type verb] 4] (quote (abort aborted aborts ask asked asks am applied applies apply are associate associated ate be became become becomes becoming been being believe believed believes bit bite bites bore bored bores boring bought buy buys buying call called calling calls came can caught catch come contract contracted contracts control controlled controls could croak croaks croaked cut cuts dare dared define defines dial dialed dials did die died dies dislike disliked dislikes do does drank drink drinks drinking drive drives driving drove dying eat eating eats expand expanded expands expect expected expects expel expels expelled explain explained explains fart farts feel feels felt fight fights find finds finding forget forgets forgot fought found fuck fucked fucking fucks gave get gets getting give gives go goes going gone got gotten had harm harms has hate hated hates have having hear heard hears hearing help helped helping helps hit hits hope hoped hopes hurt hurts implies imply is join joined joins jump jumped jumps keep keeping keeps kept kill killed killing kills kiss kissed kisses kissing knew know knows laid lay lays let lets lie lied lies like liked likes liking listen listens login look looked looking looks lose losing lost love loved loves loving luse lusing lust lusts made make makes making may mean means meant might move moved moves moving must need needed needs order ordered orders ought paid pay pays pick picked picking picks placed placing prefer prefers put puts ran rape raped rapes read reading reads recall receive received receives refer refered referred refers relate related relates remember remembered remembers romp romped romps run running runs said sang sat saw say says screw screwed screwing screws scrod see sees seem seemed seems seen sell selling sells send sendind sends sent shall shoot shot should sing sings sit sits sitting sold studied study take takes taking talk talked talking talks tell tells telling think thinks thought told took tooled touch touched touches touching transfer transferred transfers transmit transmits transmitted type types types typing walk walked walking walks want wanted wants was watch watched watching went were will wish would work worked works write writes writing wrote use used uses using))) (defalias 'doctor-verbp #[(x) "9\nN=" [x doctor-sentence-type verb] 2]) #@39 Form the plural of the word argument. (defalias 'doctor-plural #[(x) " !OŘ\"\nOŘ\nP!; ;\nOɘ6\nOP!;\nP!)" [doctor-make-string x foo -1 nil "s" -2 intern "es" "y" 0 "ies"] 5 (#$ . 24501)]) (defalias 'doctor-setprep #[(sent key) " \n> !! !!\fCɂC !!B !!>ˉ !\"\f\"CɂC*" [nil key sent foo val doctor-prepp doctor-cadr doctor-getnoun doctor-cddr something doctor-articlep doctor-build " "] 5]) (defalias 'doctor-getnoun #[(x) ":G=+@!%\n(\n!@=:A!\"@!FA!@!dlj@@@BC\"A\"A!\"@" [x something object 1 doctor-nounp doctor-query to doctor-build to\ doctor-getnoun doctor-prepp append ((a . this) (some . this) (one . that)) " "] 7]) (defalias 'doctor-modifierp #[(x) " ! ! !" [doctor-adjectivep x doctor-adverbp doctor-othermodifierp] 2]) (defalias 'doctor-adjectivep #[(x) " ! ! ! ! !" [x doctor-nmbrp doctor-articlep doctor-colorp doctor-sizep doctor-possessivepronounp] 2]) (defalias 'doctor-adverbp #[(xx) " !GY !OƘ)" [doctor-make-string xx xxstr 2 -2 nil "ly"] 4]) (defalias 'doctor-articlep #[(x) ">" [x (the a an)] 2]) (defalias 'doctor-nmbrp #[(x) ">" [x (one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen twenty thirty forty fifty sixty seventy eighty ninety hundred thousand million billion half quarter first second third fourth fifth sixth seventh eighth ninth tenth)] 2]) (defalias 'doctor-colorp #[(x) ">" [x (beige black blue brown crimson gray grey green orange pink purple red tan tawny violet white yellow)] 2]) (defalias 'doctor-sizep #[(x) ">" [x (big large tall fat wide thick small petite short thin skinny)] 2]) (defalias 'doctor-possessivepronounp #[(x) ">" [x (my your his her our their)] 2]) (defalias 'doctor-othermodifierp #[(x) ">" [x (all also always amusing any anyway associated awesome bad beautiful best better but certain clear ever every fantastic fun funny good great gross growdy however if ignorant less linked losing lusing many more much never nice obnoxious often poor pretty real related rich similar some stupid super superb terrible terrific too total tubular ugly very)] 2]) (defalias 'doctor-prepp #[(x) ">" [x (about above after around as at before beneath behind beside between by for from in inside into like near next of on onto over same through thru to toward towards under underneath with without)] 2]) (defalias 'doctor-remember #[(thing) " C C\"" [history thing append] 3]) (defalias 'doctor-type #[(x) " ! !!" [doctor-fix-2 x doctor-txtype doctor-assm] 3]) (defalias 'doctor-fixup #[(sent) " @ @ @DC\"A A\" !" [append sent ((me i) (him he) (her she) (them they) (okay) (well) (sigh) (hmm) (hmmm) (hmmmm) (hmmmmm) (gee) (sure) (great) (oh) (fine) (ok) (no)) doctor-fix-2] 6]) (defalias 'doctor-fix-2 #[(sent) " @= !! Š @=S !>3 AȠ !>C Aʠ !> A̠ @Ś !>j AΠ !>z AР !> Aʠ @! != !@! A  @= !!!! נ @= !!!! Ӡ A)" [sent foo me doctor-verbp doctor-cadr i you (am be been is) are (has) have (was) were (are is be been) am (were) was (has) doctor-cddr a doctor-vowelp string-to-char doctor-make-string an] 6]) (defalias 'doctor-vowelp #[(x) ">" [x (97 101 105 111 117)] 2]) #@85 Replace any element of SENT that is the car of a replacement element pair in RLIST. (defalias 'doctor-replace #[(sent rlist) "\f\"\"" [apply append mapcar #[(x) " DA" [x rlist] 2] sent] 5 (#$ . 27954)]) (defalias 'doctor-wherego #[(sent) "!@!#!UA!!A!@ @!" [sent doctor-$ whereoutp doctor-meaning doctor-wherego random 2 0 reverse found] 3]) #@254 Find subject, verb and object in sentence SENT with focus on word KEY. TYPE is number of words preceding KEY to start looking for subject. MEM is t if results are to be put on Doctor's memory stack. Return in the global variables SUBJ, VERB and OBJECT. (defalias 'doctor-svo #[(sent key type mem) " \n # \f@!!\fA!\fA\f@\fA!\n =8 B=BP\nE!)" [doctor-subjsearch sent key type foo nil mem doctor-verbp verb doctor-getnoun obj object i me subj doctor-remember] 5 (#$ . 28344)]) #@113 Set possessive in SENT for keyword KEY. Hack on previous word, setting global variable OWNER to correct result. (defalias 'doctor-possess #[(sent key) "G >GZZWł 8!,!O˘12ʼn\f*" [sent key 1 i 0 your prev doctor-possessivepronounp doctor-make-string -1 nil "s" owner] 4 (#$ . 28874)]) #@62 Output to buffer a list of symbols or strings as a sentence. (defalias 'doctor-txtype #[(ans) "\"c" [t *print-upcase* nil *print-space* mapcar doctor-type-symbol ans "\n"] 3 (#$ . 29196)]) #@71 Output a symbol to the buffer with some fancy case and spacing hacks. (defalias 'doctor-type-symbol #[(word) " !˜\f\f !c \"(. c3  Ci\fVC \"Ή" [doctor-make-string word "i" "I" *print-upcase* capitalize *print-space* " " string-match "^[.,;:?! ]" 32 auto-fill-function fill-column "[.?!]$" t] 4 (#$ . 29402)]) #@71 Make a symbol out of the concatenation of the two non-list arguments. (defalias 'doctor-build #[(str1 str2) " \f: : ! !P!ć" [str1 str2 intern doctor-make-string nil] 4 (#$ . 29768)]) (defalias 'doctor-make-string #[(obj) ";9!!Ç" [obj symbol-name int-to-string ""] 2]) #@54 Like append, but force atomic arguments to be lists. (defalias 'doctor-concat #[(x y) "  : C \n\n:\nC\n\"" [append x y] 3 (#$ . 30086)]) (defalias 'doctor-assm #[(proto) ":C@:@A!B@!!A!\"" [proto nil doctor-assm doctor-concat eval] 4]) #@29 Call a `doctor-*' function. (defalias 'doctor-go #[(destination) " !P! " [intern "doctor-" doctor-make-string destination] 4 (#$ . 30374)]) (defalias 'doctor-desire1 #[nil "!!" [doctor-go doctor-$ whereoutp] 3]) (defalias 'doctor-huh #[nil "GW !!!!" [sent 9 doctor-type doctor-$ huhlst longhuhlst] 3]) (defalias 'doctor-rthing #[nil "!!" [doctor-type doctor-$ thlst] 3]) (defalias 'doctor-remem #[nil " !!" [history doctor-huh doctor-type doctor-$ remlst] 3]) (defalias 'doctor-howdy #[nil "\f!É!!" [howdyflag doctor-type (($ hello) what brings you to see me \?) t (($ ibelieve) we\'ve introduced ourselves already \.) (($ please) ($ describe) ($ things) \.)] 2]) (defalias 'doctor-when #[nil " >GW\f  >A !!" [found sent 3 doctor-short doctor-fixup doctor-type (($ whatwhen) (// sent) \?)] 2]) (defalias 'doctor-conj #[nil " >GW\f  >A !@=)! AB !!!" [found sent 4 doctor-short doctor-fixup of doctor-type (are you ($ sure) that is the real reason \?) things doctor-remember doctor-$ beclst] 4]) (defalias 'doctor-short #[nil "@ SUAT¡ AV0\f,!lj! !=! !L!! ![!!!!" [repetitive-shortness lincount 1 6 **mad** doctor-type (($ areyou) just trying to see what kind of things i have in my vocabulary \? please try to carry on a reasonable conversation!) t (i give up \. you need a lesson in creative writing \.\.\.) sent doctor-assm (yes) (($ isee) ($ inter) ($ whysay) this is so \?) (because) doctor-$ shortbeclst (no) neglst shortlst] 3]) (defalias 'doctor-alcohol #[nil "!!" [doctor-type doctor-$ drnk] 3]) (defalias 'doctor-desire #[nil " >GW!\"!h\n!>?\n\nA\" $F!!!h\n!=R!\"!h $F!!!)" [found sent foo 2 doctor-go doctor-build doctor-meaning 1 doctor-cadr (a an) append (to have) doctor-svo nil doctor-remember subj would like obj doctor-type doctor-$ whywant to] 6]) (defalias 'doctor-drug #[nil "!!E!" [doctor-type doctor-$ drugs doctor-remember you used found] 4]) (defalias 'doctor-toke #[nil "!!" [doctor-type doctor-$ toklst] 3]) (defalias 'doctor-state #[nil "!!E!" [doctor-type doctor-$ states doctor-remember you were found] 4]) (defalias 'doctor-mood #[nil "!!E!" [doctor-type doctor-$ moods doctor-remember you felt found] 4]) (defalias 'doctor-fear #[nil " \n\"!! !" [doctor-setprep sent found feared doctor-type doctor-$ fears doctor-remember you were afraid of] 6]) (defalias 'doctor-hate #[nil " \n$ > ɚ!!" [doctor-svo sent found 1 t not doctor-forget doctor-huh subj you doctor-type (why do you (// verb) (// obj) \?) (($ whysay) (list subj verb obj))] 5]) (defalias 'doctor-symptoms #[nil "!" [doctor-type (($ maybe) you should consult a doctor of medicine\, i am a psychiatrist \.)] 2]) (defalias 'doctor-hates #[nil " \n$ " [doctor-svo sent found 1 t doctor-hates1] 5]) (defalias 'doctor-hates1 #[nil "!" [doctor-type (($ whysay) (list subj verb obj))] 2]) (defalias 'doctor-loves #[nil " \n$ " [doctor-svo sent found 1 t doctor-qloves] 5]) (defalias 'doctor-qloves #[nil "!" [doctor-type (($ bother) (list subj verb obj) \?)] 2]) (defalias 'doctor-love #[nil " \n$ > > \n˚&\n ΚEњA !! ֚P! \" " [doctor-svo sent found 1 t not doctor-forget doctor-huh to doctor-hates1 object something (this person you love) subj you obj lover (this person you love) (your partner) doctor-type (with whom are you in love \?) (($ please) ($ describe) ($ relation) (// lover) \.) i doctor-txtype (we were discussing you!) someone doctor-build verb s doctor-qloves] 6]) (defalias 'doctor-mach #[nil " !!!" [doctor-plural found doctor-type doctor-$ machlst] 3]) (defalias 'doctor-sexnoun #[nil " " [doctor-sexverb] 1]) (defalias 'doctor-sexverb #[nil " > > > !!" [me sent myself i doctor-foul doctor-type doctor-$ sexlst] 3]) (defalias 'doctor-death #[nil "!!" [doctor-type doctor-$ deathlst] 3]) (defalias 'doctor-foul #[nil "!!" [doctor-type doctor-$ foullst] 3]) (defalias 'doctor-family #[nil " \n\"!!" [doctor-possess sent found doctor-type doctor-$ famlst] 3]) (defalias 'doctor-rms #[nil "\n!!!" [rms-flag doctor-type doctor-$ stallmanlst t (do you know Stallman \?)] 3]) (defalias 'doctor-school #[nil "!!" [doctor-type doctor-$ schoollst] 3]) (defalias 'doctor-eliza #[nil "\n!!!" [eliza-flag doctor-type doctor-$ elizalst t ((// found) \? hah ! ($ please) ($ continue) \.)] 3]) (defalias 'doctor-sports #[nil "!!" [doctor-type doctor-$ sportslst] 3]) (defalias 'doctor-math #[nil "!!" [doctor-type doctor-$ mathlst] 3]) (defalias 'doctor-zippy #[nil "\n!!!" [zippy-flag doctor-type doctor-$ zippylst t (yow! are we interactive yet \?)] 3]) (defalias 'doctor-chat #[nil "!!" [doctor-type doctor-$ chatlst] 3]) (defalias 'doctor-strangelove #[nil "c " ["Mein fuhrer!!\n" doctor-read-print] 1 nil nil])