deer
the Dartmouth Environment Elementary Renderer
Introduction
deer is
the Dartmouth Environment Elementary Renderer, a set of
programs for emulating the original Dartmouth DCTS system, the same on
which the first BASIC compiler was written in 1964. deer at present is composed of two programs:
- the DCTS Operating System Emulator, written in
bash and thus
working on any UNIX or UNIX-like modern system. This engine is named deer, of course.
- the BASIC interpreter (yes, interpreter, I cannot write a
compiler yet), written in C, and emulating version III of the Original
Dartmouth BASIC language of 1966. The interpreter is named dib (which
means Dib Is Basic) and, as a standalone executable, may be used even
outside of the deer
engine.
The ALGOL interpreter is under conception.
Documentation
Available documentation (which is contained into the downloadable
package and is linked here for your convenience):
- The deer manual
(written with gvim in text form, notes upon the Operating System: how to
write, save, execute and manage your files and programs)
- The dib manual
(written with gvim in text form, notes about the dib BASIC
language features)
- The
Dartmouth BASIC versions and The dib BASIC
'concise' (a pdf written with NeoOffice; at page 1 all the BASIC versions are drafted, each one with
its specific features, and at page 2 dib's standard and extended features are summarized)
- The BASIC primer (written with gvim in text form, notes about BASIC programming) [not yet ready]
Installation
The deer
bash script may be executed anywhere, provided you put it
into a directory contained into the PATH; the dib executable,
instead,
before use, must be compiled and installed. I suggest the following
(easy) procedure in 4 steps:
1) Copy the package somewhere, and unpack it using tar:
$ tar zxvf deer.1.0.beta.tgz
$ cd distrib/
now, choose a directory into your path, where executables will be saved; let's assume it's ~/bin (that is subdirectory /bin in your Home directory, but you can choose any).
2) edit the
Makefile to customize addresses for dib (e.g., among the rest, change the install directory to ~/bin, commenting the undesired destinations and leaving uncommented ONE ONLY valid destination).
3) type the following (be sure to have gcc
installed - Note:
I compiled dib under gcc 4.X, I believe all 3.X versions will work, and
I hope even version 2.95 will work, but I don't guarantee it):
$ make
$ make
install
(the latter may require root privileges
if you try to install dib into system directories).
For Mac Users:
in case you want to install dib into some system directory (e.g. /user/local/bin), remember that
root
privileges are not required, as long as you can access an
administrative login: in this case, after make, login as an administrator with
$ su
<name>
(being <name> the username
of the administrator) - you will be requested of a password - and then
install the software with
$ sudo make install
4) now type the following (if you want):
$ deer --help
$ dib --help
to learn the basic facts, and you're done! If you please, copy the USER
directory (contained in the distrib/ directory) to your home deer directory (which is located under $HOME/.deer). There you will find many examples, ready to be run.
Note: I
wrote both programs on Mac OS X 10.4.X, so I expect some
differences with Linux and/or Unix machines.
Download
deer
Version 1.0.beta (Dec. 06, 2008)
- This is the first uploaded version.
Download it here.
I wait for your impressions and bugs. Version 1.0 final
will be the version you and I will build together from this beta
version. Send me your suggestions, your considerations, your
corrections; even send me your working BASIC programs for dib,
all commented and completed with your own name and data (and six
characters per name): they will be part of the next package, of course.
It's GPL! Enjoy!