ABSTRACT
We describe the renovation of our compilers curriculum to meld together an established object-oriented textbook compiler with an inexpensive embedded target platform. The result is a modern compiler implementation course with aspects of concurrency and embedded systems, and a palpable increase in student enthusiasm. We discuss the trade-offs in retargeting our compiler, gauge the difficulty of supporting thread-level concurrency in our target language, and outline the resulting structure of the course and integration with the rest of our computer science curriculum.
- }}A. V. Aho, M. Lam, R. Sethi, and J. D. Ullman. Compilers: Principles, Techniques and Tools. Pearson, 2nd edition, 1985.Google Scholar
- }}A. W. Appel and J. Palsberg. Modern Compiler Implementation in Java. Cambridge, 2nd edition, 2002. Google ScholarDigital Library
- }}D. Brylow. An experimental laboratory environment for teaching embedded operating systems. In SIGCSE 2008, volume 40, pages 192--196, 2008. ACM. Google ScholarDigital Library
- }}D. Brylow. An experimental laboratory environment for teaching embedded hardware systems. In WCAE 2007: Workshop on Computer Architecture Education, pages 44--51. ACM Press, June 2007. ISBN: 978-1-59593-797-1. Google ScholarDigital Library
- }}D. Brylow and B. Ramamurthy. Nexos: Next generation embedded operating system course and an innovative support environment. NSF CCLI Awards DUE-0737476 and DUE-0737243, 2008.Google Scholar
- }}D. Brylow and B. Ramamurthy. Nexos: A next generation embedded systems laboratory. SIGBED Review, 6(1), January 2009. ISSN 1551-3688. Google ScholarDigital Library
- }}D. E. Comer. Operating System Design: The XINU Approach. Prentice Hall, 1984. Google ScholarDigital Library
- }}M. L. Corliss and E. C. Lewis. Bantam: a customizable, Java-based, classroom compiler. In SIGCSE '08, pages 38--42, 2008. ACM. ISBN 978-1-59593-799-5. Google ScholarDigital Library
- }}Joint ACM/AIS/IEEE-CS Task Force for Computing Curricula. Computer science curriculum 2008: An interim revision of CS 2001, December 2008.Google Scholar
- }}J. Gosling, B. Joy, G. Steele, and G. Bracha. The Java Language Specification. Addison Wesley, 3rd edition, 2005. Google ScholarDigital Library
- }}S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann, 1997. Google ScholarDigital Library
- }}Joint IEEE Computer Society/ACM Task Force on the Model Curricula for Computing. Approved final draft of the computer science volume, Dec 2001.Google Scholar
- }}S. Viswanadha, S. Sankar, and S. Microsystems. Java compiler compiler, v5.0. Code available for download, 2009. URL https://javacc.dev.java.net/.Google Scholar
- }}Xinu Wiki. Project Nexos / Embedded Xinu Wiki, 2010. http://xinu.mscs.mu.edu/.Google Scholar
- }}L. Xu. Language engineering in the context of a popular, inexpensive robot platform. In SIGCSE '08, pages 43--47, 2008. ACM. ISBN 978-1-59593-799-5. Google ScholarDigital Library
Index Terms
- Compiler construction with a dash of concurrency and an embedded twist
Recommendations
XinuPi3: Teaching Multicore Concepts Using Embedded Xinu
CSERC '17: Proceedings of the 6th Computer Science Education Research ConferenceAs computer platforms become more advanced, the need to teach advanced computing concepts grows accordingly. This paper addresses one such need by presenting XinuPi3, a port of the lightweight instructional operating system Embedded Xinu to the ...
Hands-on networking labs with embedded routers
SIGCSE '11: Proceedings of the 42nd ACM technical symposium on Computer science educationWe present extensions to the Embedded Xinu educational operating system that, when coupled with a target device like the Cisco-Linksys WRT54GL, provide for an extremely attractive hands-on laboratory platform in network courses. We present classroom and ...
Nexos: a next generation embedded systems laboratory
The Nexos Project is a joint effort at Marquette University (MU) and University of Buffalo (UB) to build curriculum materials and a supporting experimental laboratory for hands-on projects in embedded systems courses. Our approach focuses on inexpensive,...
Comments