@(#) $Header: /usr/local/scalawags_cvs/Scalawags/Frc2006/template/template.README,v 1.2 2005/01/09 05:15:00 abrown Exp $ INSTRUCTIONS: 1. Function names and variable names should be descriptive and unique. byte2int is a good example. translator is too generic to be useful. It is OK to use capitols in names. Variables should not be a single character. 2. The Description should explain why the function is useful. It should explain how the inputs and outputs are used. 3. Functions should be kept simple so that they do one, or at most few things. 4. The Limitations section should list any situations which would cause the function to fail. If such situations are detectable by the code, they should call the error log function. 5. The Test section should explain how to test this function. Generally this will require providing a separate main() program in a separate file (template_t.c). It also may involve comparing the output against a reference file (template_t.ref). The test must be executable in a Makefile and produce a sensible exit() code indicating if the test passed or failed. The diff program may be used to accomplish this. e.g. template_t | diff template_t.ref - 6. The Author section shall list your name and email address. 7. There will be no implicit type conversions. Anywhere an assignment would cause a type conversion, an explicit cast will be used. 8. If possible, inputs which are out of spec should be corrected or ignored before producing output. All such conditions must be error logged. Under no circumstances should illegal output be spewed forth. 9. All use of if/else/while/for or other conditionals shall include {} about the code that will be conditionally executed, even if it is only one line. 10. Remember that we are writing code that must perform essentially the same whether it is executing on the robot or the simulator. Avoid cleverness. Remember also that your purpose is to communicate your intention clearly to two compilers and also to any number of people who may read your code. Straightforward code is best. 11. You are encouraged to perform all checkout, editing, and checkin while logged in as yourself. 12. You are encouraged to checkin your work every night as well as whenever you reach a point where your code is basically working. 13. All lines starting with "%%" must be deleted from the released code. It is here to give you hints on how to fill out the template.