The Mata book : a book for serious programmers and those who want to be - Gould, William W. (College Station, Texas : Stata Press, 2018)
"The Mata Book: A Book for Serious Programmers and Those Who Want to Be is the book that Stata programmers have been waiting for. Mata is a serious programming language for developing small- and large-scale projects and for adding features to Stata. What makes Mata serious is that it provides structures, classes, and pointers along with matrix capabilities. The book is serious in that it covers those advanced features, and teaches them. The reader is assumed to have programming experience, but only some programming experience. That experience could be with Stata's ado-language, or with Python, Java, C++, Fortran, or other similar languages. The book covers Mata, programming, workflow, verification, and certification. As the book says, 'being serious is a matter of attitude, not current skill level or knowledge'"--
The mechanics of using Mata -- A programmer's tour of Mata -- Mata's programming statements -- Mata's expressions -- Mata's variable types -- Mata's strict option and Mata's pragmas -- Mata's function arguments -- Programming example : n-choose-k() three ways -- Mata's structures -- Programming example : Linear regression -- Mata's classes -- Programming example : Linear regression 2 -- Better variable types -- Programming constants -- Mata's associative arrays -- Programming example : Sparse matrices -- Programming example : Sparse matrices, continued -- The Mata reference manual -- Writing Mata code to add new commands to Stata -- Mata's storage type for complex numbers -- How Mata differs from C and C++ -- Three-dimensional arrays (advanced use of pointers).
Includes bibliographical references (page 419) and indexes.
Keywords: Stata; Stata; Mata (Computer program language); Mathematical statistics -- Data processing; Mathematical statistics -- Data processing; Programming languages (Electronic computers); Mathematical statistics -- Data processing; Programming languages (Electronic computers)