On 11/15/13 1:40 PM, Paul Nathan wrote:
* Linux is not the only platform that matters. I would actually argue
that other operating systems, in particular the embedded & RTOS space,
are the OS platforms that need to be held up as platforms to be careful
to map against. Names of such operating systems include QNX, VxWorks,
ThreadX, L4, etc. These systems are designed very carefully to be fault
tolerant, deterministic and reliable; failure in design is often
literally "not an option" with the software systems that build on them.
These are design goals that Rust, in part,  shares. Being able to
carefully manage memory, tasks, etc, and have strong type safety is
something I believe that will be very attractive to the safety critical
space (obviously after Rust proves itself).

I agree. Note that the pthreads API was, as far as I'm aware, explicitly designed to be implementable by both M:N and 1:1 scheduling modes. And, indeed, there have been shipping implementations of pthreads on both M:N and 1:1 threading models. So we're essentially just following in POSIX's footsteps here.

* Not only is Linux not the only platform, assuming that *LLVM* is the
only platform is a bad idea as well. Designing for only LLVM's
capabilities ignores the possibility of a Rust compiler targeting (say)
Atmel chips. Making sufficient assumptions about a run-time model that
prevents retargeting (of course, retargeting by a funded group of
full-time engineers is what I mean, not hackable in a weekend by, say
me, a n00b) to a different non-LLVM-supported chip will also be a major
problem.

Agreed.

* One of the BIG problems with D uptake is the split library problem
referred to before. They could not get a comfortable standard library
for a long time, despite some extremely bright and decently famous
engineers working on D. My understanding is that it's mostly been solved
now (after what, 10 years?).  That'd be a disaster for Rust if things
split badly at the interface level.

I agree, and I would like to prevent divergence. Divergence of *implementation* is OK and probably inevitable if Rust succeeds; divergence of API for no reason can harm the ecosystem.

Patrick

_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to