Bertrand Meyer states the TheoreticalBasis methodology principle this way:
"Software methodology rules must be based on a theory of the underlying subject."
"Dijkstra... did not just attack the Goto instruction for reasons of taste or opinion, but supported his suggested ban by a carefully woven chain of reasoning. One may disagree with some of that argument, but not deny that the conclusion is backed by a well thought-out view of the software development process. To counter Dijkstra's view you must find a flaw in his theory and provide your own replacement for that theory."
-- ObjectOrientedSoftwareConstruction 2nd Edition, pp 19.2, p 665, BertrandMeyer
I wish Meyer had followed similar advice for his own work. (See "A Critique" under ObjectOrientedSoftwareConstruction)
See also: ObjectiveEvidenceAgainstGotos