Statistics on pystyler.py ------------------------- Solo verified by Shipman using trace tables: see pystyler.vrf for the trace tables themselves. Program size: 89/344 code lines, 26% non-blank non-comment lines. ================================================================ Syntax errors ---------------------------------------------------------------- S1 ---------------------------------------------------------------- ================================================================ Bugs that would be caught in a more strongly-typed language ---------------------------------------------------------------- T1 Subroutine navSubtree was misspelled as navSubTree at its point of call. ---------------------------------------------------------------- T2 In navVariants(), this line: for var in topic.linkVarList(): should be: for var in topic.linkVarList: ---------------------------------------------------------------- T3 In navSubTree(), this line: for childx in range(topic.nChildren): should be: for childx in range(topic.nChildren()): ---------------------------------------------------------------- ================================================================ Logic bugs ---------------------------------------------------------------- B1 In navSubTree(), the recursive call should call navSubTree() and not just navTopic(). ---------------------------------------------------------------- B2 In navTopic(), we must add one to each element of the result of topic.fullPath() to move from origin-0 to origin-1 numbering. ----------------------------------------------------------------