Live data from Hacker News

Rust on RTL8710 running FreeRTOS

polyfractal.com

11–20 of 47 posts

Re: Rust on RTL8710 running FreeRTOS

#11

It's going to be really great as Rust spreads further and further into the embedded world. I know enough C to get by, but I'm always second guessing myself when things start to get complicated, and Rust has really made lowish-level programming a lot easier for me. The safety features in addition to exposing a C ABI make it a great language for build once, run everywhere (everywhere that LLVM supports, anyway). Exciti…

Unfortunately, there's little chance for Rust to make inroads into the embedded market, tho I wish it were otherwise. C++ has had many benefits over C for embedded s/w for many years and has similarly failed. Note that contrary to popular belief, C++ does not result in larger, more inefficient s/w than C (for the correct C++ subset). The momentum behind the C ecosystem is so overwhelming that Rust simply will not get…

What makes the ecosystem so unfriendly to languages that link to C easily, either way?

Re: Rust on RTL8710 running FreeRTOS

#12

It's going to be really great as Rust spreads further and further into the embedded world. I know enough C to get by, but I'm always second guessing myself when things start to get complicated, and Rust has really made lowish-level programming a lot easier for me. The safety features in addition to exposing a C ABI make it a great language for build once, run everywhere (everywhere that LLVM supports, anyway). Exciti…

Is rust actually used in the embedded world, anywhere? All sorts of languages have been made to run on micro controllers, from Pascal to Scheme.

Not many languages can be made to run efficiently on a 83 MHz core with few kbytes of RAM.

Pascal, maybe, but it's about the same thing as C.

Scheme would be nice, but it's both more resource-hungry and the static checking is sort of bolted on.

With Rust's security features I hope we'll have fewer crashing or crackable embedded devices.

Re: Rust on RTL8710 running FreeRTOS

#13
post #11

Earlier quoted context omitted.

Unfortunately, there's little chance for Rust to make inroads into the embedded market, tho I wish it were otherwise. C++ has had many benefits over C for embedded s/w for many years and has similarly failed. Note that contrary to popular belief, C++ does not result in larger, more inefficient s/w than C (for the correct C++ subset). The momentum behind the C ecosystem is so overwhelming that Rust simply will not get…

What makes the ecosystem so unfriendly to languages that link to C easily, either way?

The ecosystem... from people to compilers to libraries to tutorials... is all C and its style of doing things. Gotta be as close to it as possible to have a chance. It's why the successful languages in enterprise, system space used C-like syntax. Still took a huge company basically dictating it.

Re: Rust on RTL8710 running FreeRTOS

#14

It's going to be really great as Rust spreads further and further into the embedded world. I know enough C to get by, but I'm always second guessing myself when things start to get complicated, and Rust has really made lowish-level programming a lot easier for me. The safety features in addition to exposing a C ABI make it a great language for build once, run everywhere (everywhere that LLVM supports, anyway). Exciti…

Unfortunately, there's little chance for Rust to make inroads into the embedded market, tho I wish it were otherwise. C++ has had many benefits over C for embedded s/w for many years and has similarly failed. Note that contrary to popular belief, C++ does not result in larger, more inefficient s/w than C (for the correct C++ subset). The momentum behind the C ecosystem is so overwhelming that Rust simply will not get…

What about ARM's mbed bet(and ARM know their stuff) , written in c++ ? no chance for it sucseeding in the IOT , yet ARM claim a large ecosystem ?

Re: Rust on RTL8710 running FreeRTOS

#15
post #6

Earlier quoted context omitted.

Is rust actually used in the embedded world, anywhere? All sorts of languages have been made to run on micro controllers, from Pascal to Scheme.

Got talking to a dude on the phone (random call about something totally non-technical). Turned out he was an embedded systems engineer in the Nuclear industry. Uses Forth for everything. He strongly encouraged me to use it for any embedded hobby project.

Charles Moore?

Re: Rust on RTL8710 running FreeRTOS

#16
post #6

Earlier quoted context omitted.

Got talking to a dude on the phone (random call about something totally non-technical). Turned out he was an embedded systems engineer in the Nuclear industry. Uses Forth for everything. He strongly encouraged me to use it for any embedded hobby project.

JeeLabs has some stuff on Forth in the uC world: http://jeelabs.org/2016/02/dive-into-forth/

I love that jeelabs blog.. Also, some languages running on esp8266:

https://github.com/yesco/esp-lisp

https://github.com/zeroflag/punyforth

https://micropython.org/

(and of course lua which i didn't try because its official... https://github.com/nodemcu/nodemcu-firmware)

Re: Rust on RTL8710 running FreeRTOS

#17

It's going to be really great as Rust spreads further and further into the embedded world. I know enough C to get by, but I'm always second guessing myself when things start to get complicated, and Rust has really made lowish-level programming a lot easier for me. The safety features in addition to exposing a C ABI make it a great language for build once, run everywhere (everywhere that LLVM supports, anyway). Exciti…

Unfortunately, there's little chance for Rust to make inroads into the embedded market, tho I wish it were otherwise. C++ has had many benefits over C for embedded s/w for many years and has similarly failed. Note that contrary to popular belief, C++ does not result in larger, more inefficient s/w than C (for the correct C++ subset). The momentum behind the C ecosystem is so overwhelming that Rust simply will not get…

My company uses a C++ subset (no STL, no malloc) on all of our embedded projects, which are mostly on ARM Cortex-M4.

I'd love to learn and start using Rust in our work, but we are client-project-driven, so it will be hard to justify the investment and productivity drop. I think it would make it easier to attract top talent, though things are weird in the embedded world.

Re: Rust on RTL8710 running FreeRTOS

#19

It's going to be really great as Rust spreads further and further into the embedded world. I know enough C to get by, but I'm always second guessing myself when things start to get complicated, and Rust has really made lowish-level programming a lot easier for me. The safety features in addition to exposing a C ABI make it a great language for build once, run everywhere (everywhere that LLVM supports, anyway). Exciti…

Unfortunately, there's little chance for Rust to make inroads into the embedded market, tho I wish it were otherwise. C++ has had many benefits over C for embedded s/w for many years and has similarly failed. Note that contrary to popular belief, C++ does not result in larger, more inefficient s/w than C (for the correct C++ subset). The momentum behind the C ecosystem is so overwhelming that Rust simply will not get…

That's why I quite like the approach of using existing C tooling and SDK, then linking in "user-land" Rust. I wanted to run stuff on the RTL8710, and it seemed crazy to start rewriting all the HAL from scratch.

But it only took an afternoon to bolt Rust into the C build because Rust's FFI story is really nice (imo). So I get the best of both worlds: existing C HAL and SDK with the pleasantness and safety of Rust.*

* With the assumption/hope that the HAL isn't buggy, since Rust will rely on that to not explode :)

Post reply on HN