Programmers creating software for embedded systems are not strangers to scripting. They choose scripts because they are the fastest way to solve problems. Scripts are used to automate builds and run validation tests. Interpreted languages – a common definition of what makes a programming language a scripting language – such as Forth have been used for decades to reduce code's memory footprint while improving maintainability in a portable way.
From toy to tool
But scripts are slow
Embedded developers are vigilant about performance. Scripting languages are inherently slower than C. As a result, the first impulse of any good embedded developer is to be extremely skeptical of any scripting language. However, reliable ways to deliver great performance are available:
What about a JIT?
An embedded device has one significant advantage over a web browser: While a browser must be able to run any of billions of web pages efficiently, an embedded device needs to run only its built-in software efficiently. This gives the embedded developer the option to directly code performance-critical scripts in C instead of relying on a JIT.