Have a personal or library account? Click to login
Implementation of a MIX Emulator: A Case Study of the Scala Programming Language Facilities Cover

Implementation of a MIX Emulator: A Case Study of the Scala Programming Language Facilities

Open Access
|Dec 2017

Abstract

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.

DOI: https://doi.org/10.1515/acss-2017-0017 | Journal eISSN: 2255-8691 | Journal ISSN: 2255-8683
Language: English
Page range: 47 - 53
Published on: Dec 27, 2017
In partnership with: Paradigm Publishing Services
Publication frequency: Volume open

© 2017 Ruslan Batdalov, Oksana Ņikiforova, published by Riga Technical University
This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 License.