The rationale for these rules is as follows. Choosing a single language for the laboratory means that all students will be well-versed and deeply knowledgeable in that language. This enables an easy understanding of existing code and the ability to understand the code written by other contributors. The re-use of an established codebase eventually results in robust, reliable, and bug-free operation. Moreover, all contributors become extremely conversant with the individual capabilities and their straightforward and facile integration into new tools.