Slashdot Mirror


Rust 1.6 Released (rust-lang.org)

An anonymous reader writes: The Rust team has announced the release of version 1.6 of their programming language. The biggest new feature is that libcore — the Rust core library — is now stable. "Rust's standard library is two-tiered: there's a small core library, libcore, and the full standard library, libstd, that builds on top of it. libcore is completely platform agnostic, and requires only a handful of external symbols to be defined. Rust's libstd builds on top of libcore, adding support for memory allocation, I/O, and concurrency. Applications using Rust in the embedded space, as well as those writing operating systems, often eschew libstd, using only libcore." Other features worth noting: Crates.io disallows wildcards for dependencies, there are a ton of stabilized APIs, timer functions that use milliseconds have been deprecated, and the parser will warn you if a failure was caused by Unicode characters that look similar but are interpreted differently.

75 comments

  1. New version by Anonymous Coward · · Score: 3, Funny

    They have to introduce a new version every now and then because they run out of people to recommend Rust to. A new version allows them to recommend it to themselves in times of scarcity.

  2. I propose a more C-like fork. by Anonymous Coward · · Score: 1

    We could call it CRust.

    1. Re:I propose a more C-like fork. by Anonymous Coward · · Score: 0

      and a CLR managed version called CRustRun

  3. 12 months from now... by 110010001000 · · Score: 4, Funny

    The Rust team has announced a new language, called Frick. This new language will build upon the lessons learned from Rust and provide the ability for developers to leverage security, the Cloud, and the IoT. Your knowledge of Rust is now obsolete and support for Rust has been dropped.

    1. Re:12 months from now... by Anonymous Coward · · Score: 0

      That's great. Because my image of Rust has been overloaded with visions of nude men with exposed dangly bits, buggy code, a hostile community, and long release dates.

      The naming of Frick however couldn't possibly have anything to do with - ohh

  4. WTF? by sunderland56 · · Score: 4, Insightful

    Since when is stability a feature? Isn't stability a basic requirement for software, especially in a programming language?

    If it takes up to release 1.6 for things to become stable, I'm probably not interested.

    1. Re:WTF? by Anonymous Coward · · Score: 2, Insightful

      If it takes up to release 1.6 for things to become stable...

      Libstd has been stable. This is equivalent to "libc" that C/C++ programmers are familiar with. This new "stability" is libcore, a minimal core library needed to compile. The GCC equivalent of this is the "low-level runtime library" (libgcc.a + libgcc_s.so.1).

      This is important because many popular Rust projects targeting embedded hardware and operating systems have appeared. For these applications libstd is not desirable, and to date they've been relying on an unstable core. Now they have a stable libcore to rely on.

      These changes just reflect the demands of Rust users as they pursue their interests. Thankfully Mozilla values these users and is supporting them. The platform is only a little over 8 months old.... reasonable expectations are necessary.

    2. Re:WTF? by Anonymous Coward · · Score: 0

      Stable as in function prototype and class defintions not changing you git.

    3. Re: WTF? by Anonymous Coward · · Score: 0

      Why were the 1.0 to 1.5 releases of Rust described as stable if such a core (it does have 'core' in its name, after all!) piece of the system was not stable until 1.6? It's misleading and amateurish to call software releases stable when such critical components are not stable.

    4. Re: WTF? by Anonymous Coward · · Score: 0

      I am intrigued by how Rust is worshipped at Hacker News and reddit, but here at /. it is met with skepticism and disdain. Have the people here at /., who are typically older and more experienced, already witnessed too many technologies like Rust fail in the past?

    5. Re:WTF? by rcase5 · · Score: 1

      Then why the heck are they calling it version "1.6"?! Somebody doesn't understand the concept of "alpha", or "beta". Then again, Microsoft has been muddling those definitions for decades now, so I suppose I shouldn't be surprised.

    6. Re: WTF? by Jezral · · Score: 3, Informative

      Depends on what you mean by fail, but nothing new ever really beats C++. Sure fancy new languages keep popping up with features, but it either lacks portability or performance or control or higher level constructs or reliability or something else that C++ can provide. And eventually C++ gains the language feature anyway, but without sacrificing efficiency for it. Many languages have tried to take C++'s place, but so far none have gotten close. And even where other languages have a good hold (Java, C#, ObjC, etc), when you want an efficient library shared between those ecosystems, you'll write that in C++.

      And no, C doesn't really count in the comparison, because it doesn't grow - while WG14 publishes new standards, it's still mostly C89 used in the wild, with a few extensions.

    7. Re: WTF? by Anonymous Coward · · Score: 0

      Remember the iPod predictions that it wouldn't sell?

      Slashdot has been full of curmudgeons for a long time.

      Imagine someone who peaked in technology in the 90s and hasn't really learnt anything new, or moved onto other forums, and they like shitting on anything new as being a fad.

      Rust is having a big influence on programming language design, on computer science, and it has practical benefits.

      But you know, it's new, so Slashdot wisdom is to criticise it without even trying to write a line of code in it.

    8. Re: WTF? by Anonymous Coward · · Score: 0

      Rust is having a big influence on programming language design, on computer science,

      [citation needed]

    9. Re:WTF? by HiThere · · Score: 1

      According to the link (to the rust site) several of the features of the core library are still marked as unstable. So either their documentation is out of date, of the core library still isn't stable.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    10. Re:WTF? by NotInHere · · Score: 1

      No, except for compiler plugins, you can only compile code using stable interfaces with the official 1.6 release compiler. If you are on the nightly channel, you can use unstable things too. "unstable" is basically a playground to test features of a software before it gets "officially" included into the stable part of the language.

    11. Re: WTF? by NotInHere · · Score: 2, Informative

      And eventually C++ gains the language feature anyway, but without sacrificing efficiency for it.

      Yes, C++ is a great language if its about which language contains the most features. But one thing which is very bad about c++ is that its very easy to write a bad program. In rust its very hard to write a bad program, as you first have to convince the compiler (including the borrow checker) to compile it, which requires you to think about what works how. Also, rust forbids things it considers "unsafe" by default, while with C++ you still can do very unsafe things.

      C++ is great because its backwards compatible to C. You press a button and a C project is now a C++ project. So many people familiar with C could also try C++. However, as rust doesn't have to provide backwards compat, it can do many things more nice than C did. For example, you don't need to do the #if 0 trick anymore if you want to comment a block of code. So this for example would compile "code" in C++ but wouldn't compile anything in rust: /**/ comments: /* /*comment explaining code*/ code */

      The second thing that rust can add which C++ can never achieve is the improved safety. C++ can't add additional requirements to C, including security. It can't prevent usage of non-smart pointers. And if you want to move a project from using normal pointers to smart pointers, you have to rewrite it anyway.

      There are more things rust is better in than C++:

      * most C++ projects have to deal with numbers sooner or later. But even if everybody praises c++ as portable and so on, its still a common pitfall for projects to assume that char (which is an integer number containing one byte) is 8 bits. And different platforms can have different widths for the other types too, the bounds were specified too broadly by the previous standards, and now nobody wants to touch it anymore. And yes, there is uint16_t etc introduced by c++11, but they are long, and hard to type. I prefer to edit my code without having to use an IDE.

      * Rust's type system is an actual type system. You can return tuples and do more stuff. Everything that's verified compile time comes at run-time for free. So where you need to add an assert in C++, you can simply code a type which does the same thing in rust, without much boilerplate you would have needed in c++.

      * If you pass a mutable reference to an object to a function, you have to prepend &mut to the object's name when calling the function. This hasn't been required by the C++ developers when they introduced references, their first failed attempt to replace pointers.

      * Rust is less portable than C++, that's true, it doesn't run on all hardware platforms C++ runs on, but it runs on the most relevant ones.

      And no, C doesn't really count in the comparison, because it doesn't grow - while WG14 publishes new standards, it's still mostly C89 used in the wild, with a few extensions.

      C is a finished language, you can't really add anything significant to it unless you want to sacrifice its core properties.

    12. Re:WTF? by narcc · · Score: 1

      Isn't stability a basic requirement for software, especially in a programming language?

      Apparently not. Just as an example, Python, the darling of Slashdot, can't even seem to maintain stability between minor versions. Just so you know I'm not picking on a fad language, consider that C# and other .NET has had countless breaking changes of the years. In the world of programming, fads and trends rule the day, stability be damned.

      Rust is bucking the trend. If you're looking for a reason to bash it (because no one should like something you don't like) look elsewhere. It's actually meeting your expectations, unlike many other popular languages.

    13. Re: WTF? by Anonymous Coward · · Score: 0

      So first you make ad hominem attacks on older people for supposedly using similar fallacies to judge something new, then you make vague claims about how influential and important the new thing is without backing anything up.

      Ok then. I don't see any hypocrisy here.

    14. Re: WTF? by Anonymous Coward · · Score: 0

      > The second thing that rust can add which C++ can never achieve is the improved safety. C++ can't add additional requirements to C, including security. It can't prevent usage of non-smart pointers. And if you want to move a project from using normal pointers to smart pointers, you have to rewrite it anyway.

      Why would you stop using normal pointers? The fact that you use smart pointers (which deal with ownership and lifetime of objects) is not related with normal pointers.

      > * most C++ projects have to deal with numbers sooner or later. But even if everybody praises c++ as portable and so on, its still a common pitfall for projects to assume that char (which is an integer number containing one byte) is 8 bits. And different platforms can have different widths for the other types too, the bounds were specified too broadly by the previous standards, and now nobody wants to touch it anymore. And yes, there is uint16_t etc introduced by c++11, but they are long, and hard to type. I prefer to edit my code without having to use an IDE.

      False. "char" is and will always be of size 1. On top of that, you don't understand what int*_t types are about. It is not about "portability", but rather ensuring a minimum/exact size, or performance.

      > * Rust's type system is an actual type system. You can return tuples and do more stuff. Everything that's verified compile time comes at run-time for free. So where you need to add an assert in C++, you can simply code a type which does the same thing in rust, without much boilerplate you would have needed in c++.

      False again. In C++, even before C++11, you could return tuples "and do more stuff". There was always a std::pair type in the stdlib, and Boost added longer tuples (for heterogeneous types). And yes, it is verified at compile time, and it is free at run time. That is actually the *point* of C++ (performance) compared to other languages which provide more run time type information (and reflection, introspection, etc.). And no, you don't need "asserts" to check types in C++.

      I suggest you refrain from talking about C++ if you barely understand it. It seems you have some vague notions of C++ after learning C.

    15. Re: WTF? by sunderland56 · · Score: 1

      But one thing which is very bad about c++ is that its very easy to write a bad program. In rust its very hard to write a bad program, as you first have to convince the compiler (including the borrow checker) to compile it, which requires you to think about what works how.

      If they'd stop letting idiots work in computer science, we wouldn't need new languages. Good programmers don't write bad programs; they know what they want, and they know how to implement it. Heavens, you actually have to *think* while programming? The horrors!

      Out of idle curiosity, I went to look at Rust. They don't even acknowledge that processors other than Intel X86 exist. So much for that.

    16. Re:WTF? by Anonymous Coward · · Score: 0

      I've noticed in the past they are slow to update the site and the documentation. Give them a month....

    17. Re: WTF? by NotInHere · · Score: 1

      Why would you stop using normal pointers? The fact that you use smart pointers (which deal with ownership and lifetime of objects) is not related with normal pointers.

      Because the moment you use pointers, you lose all the features of smart pointers, and this automatically introduces the opportunity for bugs to sneak in. The moment you have a pointer ptr, you can do ptr++, or do "delete ptr" and then dereference it and do other evil stuff. Yeah of course nobody except for some newbies would do this directly, but often bugs appear whose core is basically such behaviour.

      False. "char" is and will always be of size 1.

      Never disputed that. I just said that 1 byte is not guaranteed to contain 8 bits: http://stackoverflow.com/quest...

      On top of that, you don't understand what int*_t types are about. It is not about "portability", but rather ensuring a minimum/exact size, or performance.

      Yeah, exactly, that's what these types are for. int/long/char etc are so that you can write "platform generic" code that works on 8 bit platforms as well as on 16 bit ones. But most people who write C code don't know this. They use these types because they think . But those types are useless the moment you store something on disk and want to read it later on a different platform, or if you send sth over the network. And most programs do this, and for counts you should only use size_t, nothing else (if you want to optimize you can use vector::size_t on some platforms its smaller than size_t, but its never larger). So int/long/char don't really deserve their short names.

      Boost

      I don't want to use boost, and I hope you don't want to do it either.

      There was always a std::pair type in the stdlib

      Well yeah, if you have generic programming then you can do tuple "types" quite easily, but rust still has more sugar for it.

      That is actually the *point* of C++ (performance) compared to other languages which provide more run time type information (and reflection, introspection, etc.).

      And the *point* of rust is to ensure even more reliability through the type and ownership system at compile time. The more checks the compiler does, the less checks the program has to do.

      And no, you don't need "asserts" to check types in C++.

      You don't need them indeed, but C++'s type system is far more limited. To give another example, you don't have parametrized enums. And, thanks to the separation of the program into header and source code, c++ has this problem with generic programming that using it is a real pain.

    18. Re: WTF? by NotInHere · · Score: 1

      They don't even acknowledge that processors other than Intel X86 exist. So much for that.

      What do you mean by that? Rust compiles to LLVM IR, which is platform independent, so it can theoretically compile to most of the platforms LLVM has as target.
      There are even guides on the internet how to set it up, just google for them.

    19. Re: WTF? by sunderland56 · · Score: 1

      https://www.rust-lang.org/down...

      No downloads for anything other than x86/64 and x86/32. That's what I meant by that.

      Sure, in theory, I could download the sources and recompile them for my platforms of choice. But having that as a task before I can see whether Rust is usable in my environment? No, thanks.

    20. Re: WTF? by Anonymous Coward · · Score: 0

      You have no idea how overhyped rust is - and btw even today it's still about a year away from usability/stability. Heck, it doesn't even support large files on 32-bit!

    21. Re: WTF? by Anonymous Coward · · Score: 0

      Did you mention "stable" rust being broken on arm?

    22. Re: WTF? by lobais9166 · · Score: 1

      > a core (it does have 'core' in its name, after all!) piece of the system was not stable until 1.6? Come on, that's a little dickish. The resume directly describes that the library is useful for new usages that have appeared. Most people are not writing operating systems after all.

    23. Re: WTF? by Dog-Cow · · Score: 1

      What do you use as a primary development platform that isn't x86 compatible?

    24. Re: WTF? by rochrist · · Score: 1

      /. hates everything. Are you new here?

    25. Re:WTF? by Anonymous Coward · · Score: 0

      Libcore being stable doesn't mean that all of it is stable, just the main bits. Unstable features will continue to get added to libraries which can be used by people and iterated upon before stabilization.

  5. Beware of Rust. by Anonymous Coward · · Score: 5, Interesting

    The Rust home page makes it sound like Rust is some sort of a panacea. It leads one to believe that they'll get the power of C++, but with greater "safety".

    But the more I look into Rust, the more uneasy I start to feel.

    Despite all of the claims about how Rust is safer and leads to better code, the Rust compiler and standard library, both of which are implemented in Rust, are full of bugs! Don't forget that this is Rust code written by people who ought to know Rust better than anyone else; they designed the language after all! If they can't write non-buggy Rust code, then we shouldn't expect less-talented Rust users to be able to do any better.

    It's also a big problem that there's only one implementation. If you run into a bug with it, and they don't fix it promptly, then you're likely fucked. At least with C++ there are multiple high quality implementations from different vendors. You can use GCC and Clang on most platforms. Then there are other systems like Intel C++, MSVC++, and so forth. You aren't left at the mercy of a single implementation when you use C++.

    The syntax of Rust is unremarkable. It's like a bad version of C++ in many ways. Its resource management approach is also inflexible and impractical, despite the claims that it's one of Rust's most significant benefits. You're typically better off using modern C++ techniques. You'll get just about the same amount of safety, but with much fewer headaches. Even C++'s standard library, which is not known for being very good, is often better than Rust's.

    It took them forever to get Rust 1.0 released. They were constantly changing their mind about anything and everything. While some evolution of a programming language is to be expected, all we saw from them was spastic thrashing about. It got so bad that you couldn't write code on a Monday and reliably have it compile by the following Friday! The fact that it took libcore up until release 1.6 to "stabilize" just goes to show how bad things were. The supposed "stable" release was full of non-stable interfaces!

    The Rust community gives me a particularly bad feeling. They're rather tyrannical about enforcing their code of conduct. They even have a moderation attack squad to go after anyone they deem to be an enemy! I've never seen this kind of orchestrated control exerted over the community of any other programming language. This sets off warning alarms for me.

    There's no reason to use Rust, in my opinion. You're better off with C++, or D, or Java, or Scala, or C#, or Go, or Swift, or one of the many other non-Rust languages out there. The language isn't very good, the standard libraries aren't very good, there's only one implementation, and the attitude of the community is downright frightening. I think you're better off not using Rust.

    1. Re:Beware of Rust. by erapert · · Score: 1

      1. It takes about ten years for any programming language to get good. Look at C++, Java, C# and everything else.
      2. Rust has a lot of really good ideas with a lot of potential.
      3. My only problem with it right now is that it seems like everything is wrapped in a promise so I end up calling "unwrap()" on just about every function call-- extremely obnoxious! This may just be a noob mistake on my part, perhaps with experience I'll learn idioms that obviate the need to "unwrap()" everything.

    2. Re:Beware of Rust. by mandolin · · Score: 1

      I agree, if we change "about ten years" to "at *least* ten years". Tongue only slightly in cheek. C++ took 25 years (C++11) to become, IMO, a compelling improvement over C.

      I disagree with basically everything the coward said -- particularly wrt the Rust community which I think is great -- but I don't use Rust (yet), either. The things that irk me the most about Rust are the lifetime annotations, the fact that it's non-trivial to write a linked-list implementation, and a few issues that will go away after further development (overly restrictive borrow checker and compiler speed). The place it would come in most useful -- working in a corporate-ish environment with morons who don't understand ownership issues and who need a compiler to slap sense into them -- is also the place it is currently (due to novelty, immaturity, and inertia) the least adopted.

      But, if Rust can get over some of its present hurdles, it has the potential to become a really good language. And, many would say it already is one today.

    3. Re: Beware of Rust. by Morphine007 · · Score: 1

      unwrap() is for prototyping; it's like a try/catch, but you just panic if something fails. Again, super handy for prototyping, but typically a mistake to use. Use try!() if you're writing a lib, or match (ie case switch) on the values returned by the function. Ones that can fail will usually return values wrapped in one of two enums: Err(val) or Ok(val). aka a Result The ones that can fail but don't return a Result will typicall return an Option... Same idea, data wrapped in one of two enums: None(), or Some(val)

    4. Re: Beware of Rust. by NotInHere · · Score: 1

      In fact, its okay to use unwrap() if the Err case only appears on an internal error, where you'd assert() ed in C++.

    5. Re:Beware of Rust. by nmb3000 · · Score: 0

      Are you the same AC that was posting FUD about Rust the other day? A bunch of the same baseless complaints and the same reference to a "moderation attack squad".

      Don't forget that this is Rust code written by people who ought to know Rust better than anyone else; they designed the language after all! If they can't write non-buggy Rust code, then we shouldn't expect less-talented Rust users to be able to do any better.

      Nonsense. Being an expert in a language says nothing about how well you understand or can implement a solution for a given problem. If anything, that GitHub page should give someone reassurance that the project is actively maintained, that bugs are filed and solved (nearly 14,000 closed issues versus 2,300 open).

      It's also a big problem that there's only one implementation.

      Nonsense. This is called a reference implementation. It's completely normal and expected for newer programming languages.

      The syntax of Rust is unremarkable.

      Nonsense. So you're upset they didn't go crazy and try to re-invent something as crazy as Ruby or Brainfuck? I don't much care for Python's syntax or handling of whitespace, but that's hardly a reason for everyone avoid Python.

      It took them forever to get Rust 1.0 released.

      Nonsense. This is completely normal for free and open source projects, where the 1.0 release is a big deal because it means the project actually works. Contrast this with commercial companies who usually toss a 1.0 on a product the first time it successfully builds. It took VLC 8 years to reach 1.0, but of course it also took 14 years for FFmpeg, the primary library which powers VLC, to reach a 1.0 release. Quite the fanfare was made when Wine reached 1.0, after only 15 years. Version numbers don't mean anything -- would you be happier if Rust pulled a Firefox and was on version 48 already?

      The Rust community gives me a particularly bad feeling. They're rather tyrannical about enforcing their code of conduct.

      Nonsense. So they have a code of conduct that you disagree with. Don't contribute to the project then.

      But now be honest -- were you driven off by the "attack squad" for being a dick? That would certainly explain the repeated anonymous FUD you keep posting.

      --
      "What do you despise? By this are you truly known." --Princess Irulan, Manual of Muad'Dib
      /)
    6. Re:Beware of Rust. by Anonymous Coward · · Score: 0

      Inventing your language is on fashion among big players. Mozilla is trying assert it's presence, implying it's one of the big players. In a bad way.

    7. Re:Beware of Rust. by Anonymous Coward · · Score: 0

      The GP comment and the one you linked to both give us solid examples of what's wrong with Rust. You, on the other hand, have given us nothing but false allegations of 'FUD', cried 'Nonsense' again and again, and given us one excuse after another as for why Rust is failing so badly. I don't know much about Rust, but if you're representative of its community in any way then I can see why people have serious concerns. Your attitude has given me second thoughts about Rust and its community.

    8. Re:Beware of Rust. by Anonymous Coward · · Score: 0

      I think it's strange how Rust has a Mod Team.

      I've used a lot of programming languages and participated in a lot of their communities, and I can't think of any other language that has a dedicated Mod Team to enforce its Code of Conduct.

      Heck most of the programming language communities I've been involved with don't even have a Code of Conduct.

      It's also strange how you defend the Rust Code of Conduct, but I am pretty sure that your comment violates it several times over.

      Your comment is very hostile and demeaning.

    9. Re:Beware of Rust. by Anonymous Coward · · Score: 0

      I'm not the AC you're replying but the moderation idiocy is a fact - it's even called CoC for a reason, full of politically correct claptrap.

    10. Re:Beware of Rust. by tgv · · Score: 1

      I've been toying with Rust, and I'm impressed. It's not a language for every application, but it's a good competitor for many.

      Of course there are bugs. Do you know how many bugs gcc has had? Gazillions. I remember sticking to 2.95 for a loooong time.

      The syntax is great. Why should it be remarkable? It's compact, and as readable as any other C-like syntax. And it has some great (semantic) features. Traits, iterators, function application, it's what C++ should have done instead of rely on STL.

      I haven't seen a problem with their community. Of course there are some unsympathetic, tyrannicalish characters in the mod pool. Now, who else does that description make you think? Their code of conduct seems to be a bit heavy on the harassment issue, which smells of bad PC culture, but I haven't seen any of it.

      > There's no reason to use Rust, in my opinion.

      Then don't use it. But you're not better of with any of the other languages. D is a bit of a joke, and I wouldn't touch Scala. I've seen its horrible framework obsession and performance. It's all about what you value in a language and what suits your style best.

      I think Rust deserves a chance.

    11. Re:Beware of Rust. by Anonymous Coward · · Score: 0

      You're obviously the same AC. Cute.

    12. Re:Beware of Rust. by Anonymous Coward · · Score: 1

      But the more I look into Rust, the more uneasy I start to feel.

      Ok, this post is already a couple of days old, so it's unlikely that anyone will really read this response, but the above is a shining example of trolling and I'm bored enough that I'll feed the troll a bit, if only to bring the OP's technique to light. The hallmark of good trolling is the use of otherwise unremarkable facts in ways which are wildly out of context, disingenuous or dishonest, in order to further one's views, and the OP does it in spades. In this case, the goal is to denigrate everything about Rust: the language, the development process, and the community.

      [T]he Rust compiler and standard library, both of which are implemented in Rust, are full of bugs The raw number of open issues, taken out of context, doesn't mean much. Even without analyzing the issues themselves, it's more instructive to look at the number of closed vs open issues, and the rate of issue resolution. Someone did that below, and the results are indicative of a healthy, actively developed and maintained project. Furthermore, the OP strongly implies dishonesty or incompetence on the part of Rust developers by contrasting the putative promise of "safer code" with the number of issues with the compiler and libraries. By doing this, OP is being dishonest himself (or herself, but somehow I doubt it), because the promise is about memory and data race safety, important but far from all possible classes of bugs.

      It's also a big problem that there's only one implementation. There is a single implementation, that much is true. What's dubious is the implication of apocalyptic consequences of encountering a bug. In the real world, the kind of bug which hampers the ability of a compiler to translate commonly used constructs gets found out and corrected very quickly (assuming a well-maintained compiler, see para above.) Corner cases usually have workarounds. Also, a choice of compilers means a choice of disjunct bug sets, because there is no bug-free compiler, and switching the compiler is not done lightly for a non-trivial codebase.

      [Rust's] resource management approach is also inflexible and impractical, despite the claims that it's one of Rust's most significant benefits. This is the only part of the post which could be developed into a reasoned argument, but it's so vague as to become meaningless. For the record, Rust uses RAII, mandatory ownership, mutability and lifetime tracking at compile time, and refcounted objects and/or runtime mutability checks where the former case is too limiting. Ownership/lifetimes are a novel concept in a language with mainstream ambitions. They will be painful for the newcomers, and are bound to have imperfections. Does that make them "inflexible and impractical"? There still isn't a large number of experienced devlopers and complex codebases to back any argument, but anecdotal experience indicates that with some practice, resource management fades into background and isn't an obstacle. Still, YMMV.

      It took them forever to get Rust 1.0 released. They were constantly changing their mind about anything and everything. "It was developed for a long time, and was very volatile before becoming stable." And...?

      The fact that it took libcore up until release 1.6 to "stabilize" just goes to show how bad things were. Which is an extremely disingenuous thing to say, because it perverts the meaning of "stabilize", which is used in the Rust ecosystem in a very precise way, to imply shoddy work and general incompetence. In Rust, "stable" means "the interface and the semantics are fixed in stone" barring unsoundness, crippling bugs, or major language upgrades (think Python 2.x => 3.x or worse.) The standard library, libstd, has had this kind of stability since 1.0. libstd uses libcore as the lower layer, and libcore originally wasn't included in the stability promise, because it made sense to first concentrate on hosted, not standalone, use

  6. Attention Hipster Doofuses by Anonymous Coward · · Score: 0

    Time to start evangelizing Rust again.

    1. Re:Attention Hipster Doofuses by HiThere · · Score: 1

      Actually, Rust looks as if it might become a really good language. Perhaps. But it's going to need better documentation. (And parts of the core library are still marked as unstable.)

      So it may be awhile yet before it reaches "acceptable".

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    2. Re: Attention Hipster Doofuses by Anonymous Coward · · Score: 0

      I'm just going to keep using C++. By the time Rust catches up with C++14, I'll be happily using C++26.

  7. Isn't there a quote/corollary about reinventing C? by UnknownSoldier · · Score: 4, Insightful

    We need to update Murphy's Laws for the new millennium:

    * "Those that don't understand C are condemned to re-invent it, poorly."

    Almost applies to every C derivative: C++, Rust, Obj-C, etc. /me ducks :-)

    With apologies to Henry Spencer's "Those who do not understand Unix are condemned to reinvent it, poorly."

  8. Re:Nearly all of Rust's contributors are white mal by 110010001000 · · Score: 2

    Because women aren't stupid enough to work for a corporate controlled language for free.

  9. Rust is a fad by Anonymous Coward · · Score: 1

    There, I said what we're all thinking.

  10. Re:Nearly all of Rust's contributors are white mal by Anonymous Coward · · Score: 0

    females don't want to work for free :)

  11. Re:Isn't there a quote/corollary about reinventing by Anonymous Coward · · Score: 0

    We need to update...

    Why? C was never good enough to warrant such profundity, which is why no one has tried before you.

  12. Re:Nearly all of Rust's contributors are white mal by Anonymous Coward · · Score: 1

    Tell me about it. You're mother's taking all my money!

  13. Re:Isn't there a quote/corollary about reinventing by Anonymous Coward · · Score: 0

    No, what you're looking for is

    Those who don't understand Unix are condemned to reinvent it, poorly.

            Henry Spencer, in Introducing Regular Expressions (2012) by Michael Fitzgerald

  14. Re:Isn't there a quote/corollary about reinventing by djbckr · · Score: 1

    Well, I'm not so sure I agree with that. Here's my take. I've taken a recent interest in Rust and Go. I've done C programming on and off for about 20 years along with quite a few other languages. I think C++ is just a big screw-up, and I appreciate what Rust is trying to accomplish. But, I don't think Rust is ready for prime-time yet and the development process seems really slow. I like the ideas they are coming up with. I think the trouble with it is that it doesn't seem to have a strong enough backing and I'm afraid it'll just fall into abandonware. I hope that's not the case.

    Go takes a different approach from Rust, but I also like the direction it has taken. What Go has going for it is that it has strong backing. Of course, Google has the habit of dropping things too, so there's that...

    Both of these languages I think are an improvement over C/C++. Of course everybody has their own opinions, but I'm right ;)

  15. Scary Cargo/External libaries Files by jellomizer · · Score: 1

    The biggest issue I have with Rust is the set of external libraries that you need to install with the Cargo tool. It isn't as much that we have the tool to install only the libraries you need, but going in the list of libraries. That are suppose to be in the approved repository, there are a lot of them with descriptions that makes me worry about using them.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  16. Obscure Programming Language 101 by allcoolnameswheretak · · Score: 1

    In what ways is this programming language relevant again? My memory is a little rusty.

    1. Re:Obscure Programming Language 101 by Anonymous Coward · · Score: 0

      Rust is important for several reasons:

      1. Rust is the project that some prominent Ruby hypesters leaped to after it became clear that the Ruby on Rails ship was sinking fast. There's no point hyping a dying web framework that everybody sensible has come to hate.

      2. Rust is very compatible with social justice. Its community is obsessed with diversity, tolerance, and all of that stuff, despite this community mainly consisting of young white males. I think they might have put more effort into their Code of Conduct than they put into Rust's standard library.

      3. Rust is the programming language that will likely result in Mozilla's downfall. They're using Rust for their Servo browser engine, which is supposed to replace Gecko (the engine used in Firefox, and written in C++) at some point. Resources that could have been used to salvage Gecko and Firefox, like by speeding them up, fixing years-old bugs, and reverting Firefox's UI back to the 3.x UI, have instead been wasted on Rust and Servo. By the time Servo is ready for use in Firefox, Firefox will have been almost completely abandoned by its few remaining users.

      4. Rust's approach to managing memory and other resources is so complex and impractical that it makes C++ seem like a easy language to learn and use.

    2. Re:Obscure Programming Language 101 by Anonymous Coward · · Score: 1

      You're so right about C++ - the coding practices of today have all but eliminated the need for rust without the need to "reason" about your program beforehand to the extent rust expects you to.

  17. Re:Isn't there a quote/corollary about reinventing by Anonymous Coward · · Score: 0

    How idiotic a statement is that?

    Yes, let's write ALL of our software in C. Let's see productivity go through the roof, and lack of exploits with it.

  18. Re:Isn't there a quote/corollary about reinventing by mnooning · · Score: 1

    I agree wholeheartedly with your comments for reinventions of C. However, I believe rust is going to be the surprise language of the decade. First, the fact that rust is changing does not bother me. It is a new language, after all. I just think they used the word "stable" too early. I am about 1/2 way through the rust book. I've had to learn some very new (to me) concepts but I would expect that from a language that claims genuinely new capabilites, and I now see how the promises of no segfaults and easy concurrent programming can actually be obtained. As for the community standards, some anonymous person above linked to the rust moderation team, calling them an attack squad. If you browse through their questions/answers area you will see an absense of strife. The questions are all answered in a very friendly manner. This will be a very interesting language to watch.

  19. AAAaaaaaaand.... by Anonymous Coward · · Score: 0

    ...yet another herd of kids reinvents Lisp.

    Poorly.

  20. Re:Isn't there a quote/corollary about reinventing by Anonymous Coward · · Score: 0

    Those that do understand C are in a race to extinction with the white rhino...

  21. Re:Isn't there a quote/corollary about reinventing by NotInHere · · Score: 1

    About habits of dropping things: I still do think its very bad that mozilla dropped its XUL framework. Probably windows users won't notice as their computers are turned into tablets with a mouse, but still I would appreciate if I had some xml based way to create native-like UI, and not the usual "web" stuff.

    So I hope that rust won't meet a similar fate.

  22. Re:Isn't there a quote/corollary about reinventing by NotInHere · · Score: 1

    I just think they used the word "stable" too early.

    Rust really changed heavily until May 2015 when 1.0 was released, so googling for common questions is very hard, as you get presented with largely outdated answers. So its really good they stabilized it, whatever now "stable" means. But the release 1.0 (or 1.6 or whatever) compiler only compiles stable interfaces. This way, 100% of your code can be compiled with stable rust.

  23. Re:Isn't there a quote/corollary about reinventing by istartedi · · Score: 1

    Although Unix was not originally written in C (I had to look this up), it was re-written and ported using C fairly early. Arguably, Spencer's aphorism is as much about C as Unix. I think we can regard C-like languages and *NIX operating systems as "brothers".

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
  24. Thanks, Slashdot! by Anonymous Coward · · Score: 0

    After reading these comments, I've decided to start learning Rust.

    If there's one thing I've learned over the years, it's the following: If Slashdot readers hate something, then it's The Next Big Thing.

    1. Re:Thanks, Slashdot! by rochrist · · Score: 1

      +1

  25. i t r e l e a s e s y o u by Anonymous Coward · · Score: 0

    You don't need to release rust, it's just a chemical reaction.

  26. HN vs Slashdot by Anonymous Coward · · Score: 0

    Interesting the difference in sentiment here vs HN for the same story for rust 1.6

    1. Re:HN vs Slashdot by Anonymous Coward · · Score: 0

      I think the difference is because of how the mod systems work differently between here and at HN. It's way easier to downmod at HN than it is to downmod here. The Rust creators and fanatics also tend to use HN. So over at HN, anyone who says anything that isn't totally supportive of Rust gets downmodded immediately and mercilessly. Over there you're not allowed to question Rust in any way. All you can do is exclaim how great it is. At least Slashdot's mod system isn't as broken as HN's. This allows a much more balanced discussion to take place. People can point out the many very real problems with Rust without being abusively attacked and censored by Rust's creators and supporters. Over at HN they suppress anything resembling dissent. Here it's recognized as an objective analysis of Rust.

  27. Re:Nearly all of Rust's contributors are white mal by Anonymous Coward · · Score: 0

    considering she is dead, i can only assume you are a necrophiliac :)

  28. Re:Isn't there a quote/corollary about reinventing by UnknownSoldier · · Score: 1

    I *never* said let's REwrite ALL our software. *That* would be stupid.

    Can any of the C derivates be used for writing software? Sure, any bad language can be.

    I was just pointing out the dumb re-designs.