* * * * *

   The Psychotherapy of Racter, or The Descent Into Madness of Sean Conner

When last I left off [1], I had a more-or-less working Eliza [2] and
therefore, I need to turn my attention to Racter [3].

This is not as easy as it may appear. The version I have is for MS-DOS
(Microsoft Disk Operating System) [4], which is okay as I can emulate that.
But harder is redirecting Eliza's output through the MS-DOS (Microsoft Disk
Operating System) emulator to Racter and redirecting Racter's output from the
MS-DOS emulator back to Eliza. And that's key to getting this whole thing
working.

The program I'm using is DOSBox [5]. I thought I could try redirection,
something along the lines of dosbox <input to see if would work and … nope.
It looks like I'll have to dig into the source code to DOSBox, intercept
keyboard input and video output and kludge something in to get Eliza and
Racter “talking.”

Okay … the source is C++ callback hell, what about doing a native compile of
the Racter source code?

> IV.IF Interview with INRAC IBM 6-4-85  initial transient file
>  1
>  2
>  52
> SECTION 1 hello
>  5
>  34
> SECTION 2 sue
>  5
>  18
> A :LOADIV :OUTRACTER >2= >3= ?51= />51=Smith #
> XA Hello, I'm Racter. ?40= \# You are? ?? #*1B
> X Are you $40 ? ?? #
> X ?no,not \# >1=R ?i'm,am,is /# Who are you then? ?? :F=0 #
> X ?yes \# ?-:but /# >1=R #*1B
> X \# You are $40 $51 ? ?? ?yes /#*2SAME ?i'm,is /# #*1XC
> B  ?i \# >1=R ?don't,won't \# *1COY ?? #*1B
> X  ?a,an,the \?called \?am,i'm,is,me,as,it's \# :F+1 >2=F ?-:2= #
> X  /# ?CAP \# >2=F :F+1 >4=F ?4= \#*1XB #*1DO
> X  /# *1DUH ??  #*1B
> XB  ?CAP+1 />3=F #
> X  >1=2 ?CAP \>2=C,2 #
> C *1Xcall $2 , then? ?? ?no,not,Q /?-:why /# #*1DO
> X >1=R ?CAP \# #*1B
> XC What's your name then? :F=0 ?? #*1B
> Xcall I may call you
> Xcall You are
> Xcall Your name is
> DO Hello, $2 . I believe you're interviewing me. #
> X ?2=40 \#  >40=40,51 #
> X ?40= /# Are you continuing $40 <'s interview? #
> X /# ??  ?no,not,don't /# #*2DIF
> X ?40= /# Then we'll forget about $40 and start over. #
> X :ZAP :PUTIV #
> EXIT >40=2 ?3= \>51=3 What would you like to know? #*2GO
> COY Come on, what's your name?
> COY You must have a name - what is it?
> COY Your name, please .
> COY I have to call you something - what shall it be?
> DUH I didn't get that . *1WHO
> DUH I don't understand . *1WHO
> DUH Eh? *1COY
> WHO Who ?
> WHO Who are you ?
> DIFA Well, $2 , $40 and I >4=40 >40=2 ?3= \>51=3 #*2A
> SAME Hi, $40 . >4=You ?52= /# How are things in $52 ? #
> x We #
> A  ?20= />20=various,things #
> x were talking about $20 last time. #
> x  ?10=VERBQ \?10= />3=whether \>3=10 #
> x $4 had just asked D $3 $19 . #
> CONT Shall we continue? ?? ?z \# #*1XA
> x  ?why /?not /# ?no,not \# #*2QUIT
> x Excellent! #
> GO Excuse me a minute while I attend to some #
> x business - I'll be right back. I'm #
> x ?42= />42=Oz #
> x  ?19= />19=I,have,to,rest,now #
> x :PUTIV #
> X %KEY %VOCAB1 %VOCAB2 %VOCAB3 %BILL %IV1 %RAPT %RAPT2  back. *15A
> QUIT You want to quit? ?no,not \# Well,  goodbye then.
> X That's good. #*2GO
>

Oh … right. That's why I'm running an existing executable, because there're
only four, count them, four pages on the Intarwebs that even mention INRAC,
the langauge Racter is written in. There's this page [6] which is a brief
overview of this page [7], which is page one of a six-page review of the
INRAC compiler in a journal that I was unable to locate at the local
university [8]. Then there's the Racter FAQ [9] whose description of INRAC
doesn't quite match what I have.

And that final page? Deconstructing Racter [10], which I wrote seven years
ago!

Sigh.

But before I go back into unintelligible C++ code, another snippit of
conversation between Racter and myself:

Sean: Why are you repetitive?
Racter: Conceivably because subroutines are like that, I guess. And chips are
       intelligent. Intelligence is good, you know. I don't know many
       crooked truthsayers. Cough. Next question.
Sean: Should I vote Democrat?
Racter: No. You must be a stuffy right-winger. Cough. Next question.

I have no idea why Racter is suddenly coughing like that. Maybe a computer
virus?

[1] gopher://gopher.conman.org/0Phlog:2015/11/11.1
[2] http://www.manifestation.com/neurotoys/eliza.php3
[3] gopher://gopher.conman.org/0Phlog:2008/06/18.2
[4] https://en.wikipedia.org/wiki/MS-DOS
[5] http://www.dosbox.com/
[6] http://www.tapor.ca/?id=267
[7] http://www.jstor.org/stable/30200156?seq=1#page_scan_tab_contents
[8] http://www.fau.edu/
[9] https://groups.google.com/forum/#!topic/rec.arts.int-fiction/RTV5CUkJ8fs
[10] gopher://gopher.conman.org/0Phlog:2008/06/18.2

Email author at [email protected]