Skip to content

Commit

Permalink
add how to write a compiler
Browse files Browse the repository at this point in the history
  • Loading branch information
c4yg70 committed Apr 13, 2019
1 parent fb878b6 commit 579151b
Show file tree
Hide file tree
Showing 17 changed files with 22,314 additions and 0 deletions.
54 changes: 54 additions & 0 deletions howto/how to write a compiler/readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
TUTOR.ZIP

This file contains all of the installments of Jack Crenshaw's
tutorial on compiler construction, including the new Installment 15.
The intended audience is those folks who are not computer scientists,
but who enjoy computing and have always wanted to know how compilers
work. A lot of compiler theory has been left out, but the practical
issues are covered. By the time you have completed the series, you
should be able to design and build your own working compiler. It will
not be the world's best, nor will it put out incredibly tight code.
Your product will probably never put Borland or MicroSoft out of
business. But it will work, and it will be yours.

A word about the file format: The files were originally created using
Borland's DOS editor, Sprint. Sprint could write to a text file only
if you formatted the file to go to the selected printer. I used the
most common printer I could think of, the Epson MX-80, but even then
the files ended up with printer control sequences at the beginning
and end of each page.

To bring the files up to date and get myself positioned to continue
the series, I recently (1994) converted all the files to work with
Microsoft Word for Windows. Unlike Sprint, Word allows you to write
the file as a DOS text file. Unfortunately, this gave me a new
problem, because when Word is writing to a text file, it doesn't
write hard page breaks or page numbers. In other words, in six years
we've gone from a file with page breaks and page numbers, but
embedded escape sequences, to files with no embedded escape sequences
but no page breaks or page numbers. Isn't progress wonderful?

Of course, it's possible for me to insert the page numbers as
straight text, rather than asking the editor to do it for me. But
since Word won't allow me to write page breaks to the file, we would
end up with files with page numbers that may or may not fall at the
ends of the pages, depending on your editor and your printer. It
seems to me that almost every file I've ever downloaded from
CompuServe or BBS's that had such page numbering was incompatible
with my printer, and gave me pages that were one line short or one
line long, with the page numbers consequently walking up the page.

So perhaps this new format is, after all, the safest one for general
distribution. The files as they exist will look just fine if read
into any text editor capable of reading DOS text files. Since most
editors these days include rather sophisticated word processing
capabilities, you should be able to get your editor to paginate for
you, prior to printing.

I hope you like the tutorials. Much thought went into them.


Jack W. Crenshaw

CompuServe 72325,1327

Loading

0 comments on commit 579151b

Please sign in to comment.