ECE 2524

Introduction to Unix for Engineers

to die for

Usage

  • The README contained everything I needed to easily use the program:

  • The program compiles/runs without errors:

  • The program worked as advertised:

Style

  • The code is cleaning divided into modules and multiple files:

    spliting into a couple files would improve organization.

  • Variable and function names are meaningful:

  • Comments are used where appropriate:

    naming is good so it's easy to follow, but docstrings would still be useful, especially to aid in further development and extensibility.

Philosophy

  • The program most closely follows the ed-like interface pattern:

    while not necessarily useful for scriptability, at least accepting a sequence of letters from standard input would allow for automatic testing

  • This choice of pattern is a good one for this application:

    This is an interesting one because ed-like certainly works more than adequatly, however, I think a rouge-like interface would be even more appropriate to give the appearance of a single gallows that slowly gains body parts, instead of a sequence of gallows, each with one more body part than the last.

  • This program follows the Rule of Silence and Least Surprise:

  • This program follows the Rules of Modularity and Composition:

    separating the engine from the interface would be very appropriate and would set the stage for a multi-player expansion

  • This program follows the Rules of Representation and Simplicity:

    the heavy use of index literals suggests there is a better way. Could body parts be stored in a text file and then read in a character at a time, ignoring whitespace?