Please excuse this posting if its not in the correct place; I assume it is as I’m (clearly) new to Rust - hence some observations and questions.
Firstly; my background is embedded systems development where stability and survivability are ‘king’. I’ve no great love for C but it is absolutely the dominant force in such systems. C++ and C# are seldom used by such systems due to overhead and the inclusion of libraries. (aside… one manufacturer of chips has libraries that have significant use of goto 's and is seen as a joke in the industry).
Next; two ‘hardware systems’ that are arguably dominant in the hobby and to a lesser degree professional arena are Arduino and the Raspberry Pi. I mention them as they are, to me, suggesting and offering a playground for people to become accustomed to programming then use those skills going into the future. From using C or other languages on them, ‘young programmers’ will take those skills with them and perpetuate those languages.
The reason for this posting is that I like the look of Rust from its central design objectives. However I fear that without ‘traction’ it will struggle to gain the acceptance that it should. I for one would like to pursue it, and I shall be as time permits.
I am asking then, has ‘embedded systems’ type programming been considered as a possible development goal? The definition of what an ‘embedded systems suitable’ language is open to debate. For me, it is the ability to write interrupt drivers; to access hardware facilities such as uart, I2C, pin, A-D, D-A etc - in a sensible way (meaning safely and reliably of course). C has an immense following for the way it achieves this but the effort is significant which many programmers fail to realize till they encounter their first real time system.
Then, following on from this, would anyone be considering creating a binary image for the Raspberry-Pi-2, the new version? It offers significantly increased performance and would seem to be an ideal target to bring new programmers into Rust. It would appear to me to be a good way to promote the product - assuming it is provided in a way that suits the target audience.
Of note, I discovered Rust due to a posting on the Black-Swift kickstarter campaign at
Black Swift is way more powerful — 400MHz vs 168MHz CPU, 16MB vs 1MB
ROM, 64MB vs 192KB (sic!) RAM. Pyboard is optimised for special Python
version only, while with Black Swift you can use Python, Perl, C, C++
and other languages available for OpenWRT Linux (for example, there’s
Node.js port and I saw attempts to port Rust — probably I’ll dig in it
later, with more or less stable Rust release available). Black Swift
provides set of regular linux utilities, libraries, and services — up to
webserver with PHP support and databases. Pyboard, as far as I
understood, has nothing of it."
Apologies if this longish posting is either in the wrong place or annoys - it is my observations coming from my own needs and also a desire for ‘something better’.
Kind regards - Richard