Python for embedded systems?

Rafe Kettler rafe.kettler at gmail.com
Thu Feb 24 08:04:15 CET 2011


On Feb 23, 6:53 pm, Paulito <paul... at gmail.com> wrote:
> Apologies if this has been asked; I haven't yet Googled the archives.
>
> From a brief email conversation, Guido pointed me to this newsgroup to
> ask the following questions:
>
> "Is Python 'mature' enough to be considered the primary language for
> embedded systems? Is the performance there for real-time applications
> (eg avionics, real-time control systems) or is it still more suitable
> "...as a glue language,  used to combine components written in C++" ?"
>
> And further:
> "Has anyone tried to shorten development time when porting code to a
> new embedded hardware platform, by trying to convert legacy code (C/C+
> +/Ada) to Python?"
>
> I'm currently thinking that Python isn't there yet but certainly would
> like to hear any feedback.
>
> Your input is greatly appreciated; thanks!
> - Paulito

Python is probably not the best choice for embedded systems because it
lacks fine control over hardware, something that C and C++ have in
bunches. Also, it doesn't perform well enough to be considered for
situations where resources are at a premium (think microcontrollers).

Could you develop in Python for a platform like Android or iPhone?
Yeah, they have the space, memory, and CPU to run Python stuff. But on
weaker CPUs and less memory, Python would be a poor choice.

It's not a matter of language maturity, Python is very mature, it's a
matter of design. Python is a high-level, garbage-collected,
interpreted language, and that's not the ideal type of language for
embedded systems.

Rafe



More information about the Python-list mailing list