implementation makes use of additional 'modules' that exist only for purely computational reasons, and are not supposed to reflect anything in the brain (e.g., one computational module contains the pseudo-random number generator used to produce noisy parameters, while another holds naming routines for generating data structures accessible through variable names). Also, the actual implementation is designed to enable researchers to modify the theory, e.g. by altering the standard parameters, or creating new modules, or partially modifying the behavior of the existing ones. Finally, while Anderson's laboratory at CMU maintains and releases the official ACT-R code, other alternative implementations of the theory have been made available. These alternative implementations include jACT-R (written in Java by Anthony M. Harrison at the Naval Research Laboratory) and Python ACT-R (written in Python by Terrence C. Stewart and Robert L. West at Carleton University, Canada). Similarly, ACT-RN (now discontinued) was a full-fledged neural implementation of the 1993 version of the theory. All of these versions were fully functional, and models have been written and run with all of them. Because of these implementational degrees of freedom, the ACT-R community usually refers to the "official", Lisp-based, version of the theory, when adopted in its original form and left unmodified, as "Vanilla ACT-R". Applications Over the years, ACT-R models have been used in more than 700 different scientific publications, and have been cited in many more. Memory, attention, and executive control The ACT-R declarative memory system has been used to model human memory since its inception. In the course of years, it has been adopted to successfully model a large number of known effects. They include the fan effect of interference for associated information, primacy and recency effects for list memory, and serial recall. ACT-R has been used to model attentive and control processes in a number of cognitive paradigms. These include the Stroop task, task switching, the psychological refractory period, and multi-tasking.<ref>Salvucci, D. D., & Taatgen, N. A. (2008). Threaded cognition: An integrated theory of concurrent multitasking. Psychological Review', 130(1)', 101–130.</ref> Natural language A number of researchers have been using ACT-R to model several aspects of natural language understanding and production. They include models of syntactic parsing, language understanding, language acquisition and metaphor comprehension. Complex tasks ACT-R has been used to capture how humans solve complex problems like the Tower of Hanoi, or how people solve algebraic equations. It has also been used to model human