Earlier quoted context omitted.
My personal guesses why Ada lost: In (Western) academia was a massive dislike of Ada because of its DoD roots and NATO applications, so they didn't use it for teaching. And hackers disliked it because it was a committee-designed language and it's pretty restrictive (even paternalistic) and directed toward mediocre programmers (a good decision for systems that run over decades and have big, changing teams assigned to…
I think if there was a good, free version of an Ada compiler that had a permissive open-source license, then people would be using it.
Rust 0.2 released
91–97 of 97 posts
Re: Rust 0.2 released
#92Earlier quoted context omitted.
My personal guesses why Ada lost: In (Western) academia was a massive dislike of Ada because of its DoD roots and NATO applications, so they didn't use it for teaching. And hackers disliked it because it was a committee-designed language and it's pretty restrictive (even paternalistic) and directed toward mediocre programmers (a good decision for systems that run over decades and have big, changing teams assigned to…
> In (Western) academia was a massive dislike of Ada because of its DoD roots and NATO applications, so they didn't use it for teaching. DARPA funds lots of computer science research, so I doubt academic dislike of DOD is a big factor.
Re: Rust 0.2 released
#93Earlier quoted context omitted.
> In (Western) academia was a massive dislike of Ada because of its DoD roots and NATO applications, so they didn't use it for teaching. DARPA funds lots of computer science research, so I doubt academic dislike of DOD is a big factor.
From what I know in Europe, the military background was a relevant issue.
Re: Rust 0.2 released
#94Earlier quoted context omitted.
Pertinent to what I said? Garbage collection is the biggie. Utterly unacceptable in systems work.
Both Rust and Go have GCs. It is true that Rust has mostly per-thread GC, which should help to curb performance concerns quite a bit. And Rust aims to have more explicit control over where things are allocated. But it's still a GCed language. Whether GC is acceptable in systems work depends on what you construe as "systems work" (kernels and GC don't mix nicely; browsers and GC is OK if you're careful).
Re: Rust 0.2 released
#95Earlier quoted context omitted.
Sorta... many types have a more strongly enforced ownership style lifetime scope, but depending on the data you are declaring, the collector may come into action automatically. Basically, Rust makes it easy to avoid the collector by clear ownership rules, but still provides a collector for the cases where that just won't do.
In previous threads (can't remember if it was here or on reddit), Rust developers noted that Rust currently needs a GC for many things, but part of the Region works is aimed at removing that need (aka unless the efforts fail, you should be able to use Rust 1.0 sans GC)
My personal thinking is that the standard libraries should avoid the GC and use regions, reference counting should be achievable through a "smart pointer" type in the standard library, and GC should be provided if the programmer wants it.
Re: Rust 0.2 released
#96Earlier quoted context omitted.
Pertinent to what I said? Garbage collection is the biggie. Utterly unacceptable in systems work.
Both Rust and Go have GCs. It is true that Rust has mostly per-thread GC, which should help to curb performance concerns quite a bit. And Rust aims to have more explicit control over where things are allocated. But it's still a GCed language. Whether GC is acceptable in systems work depends on what you construe as "systems work" (kernels and GC don't mix nicely; browsers and GC is OK if you're careful).