Dec 092017
Amazing program that writes original news releases for the Department of Tranportation. New field of Software Authoring.
File AIAUTHOR.ZIP from The Programmer’s Corner in
Category Miscellaneous Language Source Code
Amazing program that writes original news releases for the Department of Tranportation. New field of Software Authoring.
File Name File Size Zip Size Zip Type
ALTERN01.EXE 19876 5832 deflated
ALTERN02.EXE 19572 5732 deflated
ALTERN03.EXE 19684 5796 deflated
BOILERPL.ATE 1084 573 deflated
BRUN45.EXE 77440 53681 deflated
PRAP89.DAT 36864 7177 deflated
PRFE89.DAT 36480 6818 deflated
PRMR89.DAT 36864 7044 deflated
README.TXT 14158 5250 deflated
RELEASE1.EXE 27800 8020 deflated
RELEASE2.EXE 24168 7551 deflated
RELEASE3.EXE 27544 8216 deflated
RELEASE4.EXE 19332 5658 deflated
RELEASE5.EXE 31384 9181 deflated
RELEASE6.EXE 19684 5796 deflated
RELEASE7.EXE 37112 10631 deflated
RELEASE8.EXE 43948 11425 deflated
RELEASER.EXE 7128 2416 deflated

Download File AIAUTHOR.ZIP Here

Contents of the README.TXT file



Computer authoring is the generation of original text by computer. The text
should have predictable meaning. It should serve a predetermined purpose. It
should be created under computer program control, without modifying inputs
after an initial data and specification input.

Computer authoring is a practical application of natural language processing.
It started out as part of artificial intelligence, but appears to have become
an independent field of computer technology.


The set of nine RELEASER programs in this demonstration file make up an example
of computer authoring.

Each month, the Department of Transportation completes a new month's statistics
on international air passenger traffic. RELEASER writes a news release each
time, summarizing and highlighting the month's air traffic volumes.

The statistical program which the monthly news releases cover is managed by the
International Data Systems Division in the Office of the Secretary of
Transportation. A contractor compiles the statistics for the division and
submits them monthly. Each submission is accompanied by a summary statistical
table covering the month's international air traffic activity. This summary
table is the basis for the periodic news release.

RELEASER software has been used to prepare news releases for the last two
years. Prior to the development of this software, an analyst wrote each
month's news release, a secretary typed it, a proofreader reviewed it, and a
secretary made the final, corrected copy. RELEASER now reads the summary
table, selects the important points, composes the news release, outputs it in
both hardcopy and machine-readable file. RELEASER has been through two
revisions since its beginning: Version 3.0 is the current version.

All the programs in the RELEASER set are written in QuickBASIC. We chose this
high-level language because it is fairly universal in the host organization.
It has served the purpose well, being easy to modify and debug and reasonably
efficient for the task.


In operation, RELEASER reads ("parses") the month's statistical summary table.
As it reads the table, it fills a memory array with values associated with the
various sectors of international air traffic activity.

After all pertinent aspects of the activity are quantified in the array, the
programs carry out mathematical operations on the data, adding, calculating
sums, comparing levels, deriving percentages and so on.

When the mathematical operations are finished, the programs carry out text
construction and formatting operations during which syntax guides are followed,
phrases are selected, text is formated and the finished document is
simultaeously written on a file and printed on a printer.


1. Program files

2. Input tables

3. Boilerplate text

4. Runtime module

5. Created files (These files will be created during runs.)

************************ HOW TO RUN THE DEMONSTRATION **************************


The three input tables in this group are typical of those received from the
contractor who produces the monthly statistics. You should print out at least
one of the tables, so you can trace what RELEASER does.

The input tables are wider than the 80-character width limit of narrow-carriage
printers. You will need either a wide-carriage printer or a narrow-carriage
printer set to print compressed type.

Once your printer is in proper order, simply use the PC-DOS command "PRINT,"
specifying PRFE89.DAT or one of the other input files. Or you can print it as a
text document, using your word processor.


The RELEASER programs are cutomarily run on XT personal computers with at least
512 kb of RAM, a 20 mb hard disk and a 360 kb diskette drive. You might be able
to run RELEASER on floppy disks, but it would be unhandy. A color monitor makes
the demonstration prettier, but is not essential. IDS Prism 132 and Epson FX80
printers were used at the original site.


Check your printer. Be sure your printer is turned on, has paper in it and has a
proper type font set.

Load the files. The programs in this demonstration may be run from either a
diskette or from a hard disk.


Create a new directory on your hard disk: type "md \RELEASER " and copy all
the ".EXE" files except ALTERN01.EXE, ALTERN02.EXE and ALTERN03.EXE to the
directory. Copy BRUN45.EXE to the directory. Also copy BOILERPL.ATE and all of
RUN. The programs will create additional files in the directory.

Type "cd \RELEASER" to enter the directory. While still in the directory, type
"RELEASER " to start the programs running.


When the programs start running, a title page is displayed. The title page
stays on the screen continuously until the session is finished. From time to
time during the run, prompts and other information are superimposed on the
title page and then erased.

The first prompt pasted on the title page display is a request for you to
designate the input file. Respond to this prompt by typing "PRFE89", "PRMR89"
or "PRAP89" -- depending on which of the input files you choose. DO NOT TYPE
THE ".DAT" EXTENSION OF THE FILE NAME. If you type anything other than the
correct first six letters of the file name, or if you type a wrong file name,
you will cause an error.

RELEASER is programmed to stop immediately if there is an error. It does not
display error messages. This feature comes from the programmer's placing more
importance on ease of program maintenance rather than ease of use.

The most common errors experienced are (1) specifying an input file name with
the ".DAT" extension, (2) specifying an input file that is not in the current
directory, (3) an error in the input file itself, and (4) printer not turned
on, (5) the file BRUN45.EXE's not being present in the directory.

After you specify the input file, RELEASER looks for it in the current
directory. If it finds the file, it begins to read it.

As it reads the input file, RELEASER briefly writes each line on the screen so
you may follow its progress. RELEASER parses each line: if the line is blank or
there are no useful data in the line, RELEASER skips over it quickly. If there
are useful data in the line, RELEASER pulls out the data and records it in an
array. After parsing the input file, RELEASER saves the extracted data in a
file called NEWSTEMP.DAT. You will find this file in the directory after the

RELEASER saves these data in the NEWTEMP.DAT file so that subsequent programs
in the series can access them as they need them.

When RELEASER finishes parsing the input file, it displays a prompt on the
title page, asking if you want a printout of the array. If you respond with a
"y", the array will be printed out so that you may examine it. You should do
this at least once, to help you understand what the programs are doing.

If you respond with an "n", RELEASER moves on to the tasks of analyzing the
data, composing the news-release text and formatting the text in proper form
for printing. This is a continuing process: RELEASER starts printing the output
quickly and continues analyzing, composing and formatting while it is printing,
until its job is done.

When it has finished, RELEASER pastes a notice on the title page and tells you
that the processing has terminated and how to return control to your operating


At the top of the second page of the news release text, RELEASER prints a small
statistical summary table as part of the news release. The summary table is
table 1 of the input file. The table is too wide to fit on normal eight-inch
paper. RELEASER solves the problem by printing the table in compressed type,
instead of the normal type it uses for the rest of the document.

To cause the printer to print in compressed type, RELEASER sends a special
signal to the printer. After the table is printed, RELEASER sends a different
special signal to cause the printer to return to printing in regular,
uncompressed type.

These special signals are not standardized among the many printers on the
market. The signals programmed into RELEASER are those understood by the
printers at the original site. Your printer may not understand those two
particular signals, and it may mess up the output beginning with the second
page. There is a solution available to you.

The files ALTERN01.EXE, ALTERN02.EXE and ALTERN03.EXE are variations on the
RELEASER program RELEASE6.EXE which controls printing of the summary table.

ALTERN03.EXE is the form of RELEASE6.EXE which is in place in the original set
of files distributed in this demonstration set. It is programmed to send
correct type-size signals to an EPSON FX-80 printer and other dot-matrix and
laser printers which are compatible with the Epson. If you have an Epson-
compatible printer, do not change RELEASE6.EXE, but leave the original version
in place.

ALTERN01.EXE is the form of RELEASE6.EXE which is programmed to send correct
type-size signals to an IDS PRISM 80 or 132 printer. If your printer is
compatible with these, substitute ALTERN01.EXE for the in-place RELEASE6.EXE
with the command "COPY ALTERN01.EXE RELEASE6.EXE "

For people whose printers are incompatible with either Epson or Prism: If you
substitute ALTERN02.EXE for RELEASE6.EXE, the programs will omit the summary
table. No special signals will be sent to the printer, and the printout should
proceed without hitch -- except for the omission of the summary table. Make the
substitution by the command "COPY ALTERN02.EXE RELEASE6.EXE " Since
RELEASER prints the output to a file as well as a printer, you can import the
file into your word processor and incorporate the proper compressed-type and
uncompressed-type signals into the text and print the document as intended.


COMPUTER AUTHORING can be used for tasks other than the news release generation
demonstrated here.

COMPUTER AUTHORING is tailor-made for mass mailings where marketers want to
individualize each recipient's letter for impact.

COMPUTER AUTHORING can effectively generate periodic reports for a wide variety
of uses.

COMPUTER AUTHORING saves money. Two years' experience with RELEASER has
demonstrated that COMPUTER AUTHORING saves substantial amounts of funds by
taking over staff functions and by completing the tasks in a much shorter time
frame. It reduces the waste resulting from the need to correct human errors
that creep into the product when we follow the traditional text production
techniques in an organizational environment.

COMPUTER AUTHORING can make money. Expansion in the use of this technique is
slowed by a lack of programmers who understand it and are experienced in
applying it. Bright programmers who are willing to develop expertise in it will
find the field wide open. Managers and consultants who understand how and when
to apply it will find increased demand for their abilities.

There is little likelihood that COMPUTER AUTHORING applications specialists
will see competition from commercial software. Individual applications can be
so different from each other that there are insufficient common characteristics
to build useful generalized software on. Each application must be individually


If you want to understand how RELEASER performs its functions and procedures,
you can get the source code, which is written in QuickBASIC.

Send a $15 check or money order (no credit cards, COD's nor purchase orders) to

David Cassidy
9355 Sibelius Drive
Vienna, VA 22182

I will send you a 5.25" diskette containing

o source code listings of the nine RELEASER programs.
The code has extensive notes explaining the functions
of the code. (Not included are ALTERN01.EXE and
ALTERN02.EXE, which you don't need for understanding

o five new data input files. (Two of these will
have errors, so you can see the effect of input
errors on the programs, and get experience in
correcting them.)

o People who order the listings will also receive
notification upon publication of the COMPUTER AUTHORING
guidelines presently in production, and of other
products. They will be given exclusive discounts on
these items.

When you order the source code listings, keep the demonstration files. They
are not duplicated on the listings disk, and they will be useful to you in
using the listings disk.

 December 9, 2017  Add comments

Leave a Reply