MakeCode and CODAL : Intuitive and Efficient Embedded Systems Programming for Education

Devine, James and Finney, Joe and Moskal, Michał and de Halleux, Peli and Ball, Thomas and Hodges, Steve (2018) MakeCode and CODAL : Intuitive and Efficient Embedded Systems Programming for Education. In: LCTES 2018 Proceedings of the 19th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems :. ACM, New York, pp. 19-30. ISBN 9781450358033

[thumbnail of Full Paper]
PDF (Full Paper)
lctes18main_p12_p.pdf - Published Version
Available under License Creative Commons Attribution.

Download (1MB)


Across the globe, it is now commonplace for educators to engage in the making (design and development) of embedded systems in the classroom to motivate and excite their students. This new domain brings its own set of unique requirements. Historically, embedded systems development requires knowledge of low-level programming languages, local installation of compilation toolchains, device drivers, and applications. For students and educators, these requirements can introduce insurmountable barriers. We present the motivation, requirements, implementation, and evaluation of a new programming platform that enables novice users to create software for embedded systems. The platform has two major components: 1) Microsoft MakeCode (, a web app that encapsulates an entire beginner IDE for microcontrollers; and 2) CODAL, an efficient component-oriented C++ runtime for microcontrollers. We show how MakeCode and CODAL provide an accessible, cross-platform, installation-free programming experience for the BBC micro:bit and other embedded devices.

Item Type:
Contribution in Book/Report/Proceedings
?? micro:bitmakecodecodalbbcembeddededucation ??
ID Code:
Deposited By:
Deposited On:
27 Apr 2018 08:10
Last Modified:
10 Jan 2024 00:43