Implementation of a MIX Emulator: A Case Study of the Scala Programming Language Facilities
Applied Computer Systems 2017
Ruslan Batdalov, Oksana Ņikiforova

Implementation of an emulator of MIX, a mythical computer invented by Donald Knuth, is used as a case study of the features of the Scala programming language. The developed emulator provides rich opportunities for program debugging, such as tracking intermediate steps of program execution, an opportunity to run a program in the binary or the decimal mode of MIX, verification of correct synchronisation of input/output operations. Such Scala features as cross-compilation, family polymorphism and support for immutable data structures have proved to be useful for implementation of the emulator. The authors of the paper also propose some improvements to these features: flexible definition of family-polymorphic types, integration of family polymorphism with generics, establishing full equivalence between mutating operations on mutable data types and copy-and-modify operations on immutable data types. The emulator is free and open source software available at www.mix-emulator.org.


Keywords
MIX, program correctness verification, Scala
DOI
10.1515/acss-2017-0017

Batdalov, R., Ņikiforova, O. Implementation of a MIX Emulator: A Case Study of the Scala Programming Language Facilities. Applied Computer Systems, 2017, Vol.22, pp.47-53. ISSN 2255-8683. e-ISSN 2255-8691. Available from: doi:10.1515/acss-2017-0017

Publication language
English (en)
The Scientific Library of the Riga Technical University.
E-mail: uzzinas@rtu.lv; Phone: +371 28399196