programer notes
Compile everything:
make
Help on make tags:
make help
Read up on Mark's database and how to use it in "mdb.doc".
bugs to fix:
o "help "
gives a help but tries to execute the command
would be nice to see syntax + example
"quit" command missing from the general help
@ and ! symbols missing from the help
o "!cat Makefile"
did not execute properly
It probably did not give the entire line as a command?
o "mrd batch1.sh"
has unrecognized commands, fix to skip comments (# this)
fails to finish properly, fix
Change error to show lines that fail to execute
execute each line with mrd "@" form to see errors
fix comment, fix naming error on c2.txt, fix select command
o "mrd batch2.sh"
fix comment to show line as well
the second record deleted is really the third record
fix the addrecord command to prompt for a record
now it just copies the last record
o mrd "@help" is not implemented
o mrd "@dump colleges" is not implemented
o select example does not work; prompt for yes missing input
by default all relations should use .txt by default
select example in batch does not work:
mrd "@select states.txt temp.txt yearadmitted > 1865"
o any explicit use of .txt should not create a file like .txt.txt
o make demo.doc and mdb.doc reflect current usage
... there are more
See demos in "demo.sh batchstuff.sh and batch2.sh".
See database files in *.txt files.
NOTE: This forces you to use a filename for a database.
goals:
o stabalize code with fixed api, adding test for api
o ease into improvements one at a time, adding tests
todo list:
o no good definition of field boundaries "fixed/variable/quoted"
fixed would have wasted space but no errors
variable must handle spaces someway
quoted looks bad for reading; why not quote all strings?
compressed -- binary, random access?
o no programmer api is created
== commands is it == why not create a programmer's api?
o helps are weak; why not fix them
o fix bugs
o evaluate the object relationship pros and cons
find long routines
find switch statements that could be objects
... let polymorphism decide the path ...
o use iostream library for io; add buffering
o use stl for command word mapping
o use stl for command processing to files