Slashdot Mirror


Mozilla Binds Firefox's Fate To The Rust Language (infoworld.com)

An anonymous reader quotes InfoWorld: After version 53, Firefox will require Rust to compile successfully, due to the presence of Firefox components built with the language. But this decision may restrict the number of platforms that Firefox can be ported to -- for now... Rust depends on LLVM, which has dependencies of its own -- and all of them would need to be supported on the target platform. A discussion on the Bugzilla tracker for Firefox raises many of these points...

What about proper support for Linux distributions with long-term support, where the tools available on the distro are often frozen, and where newer Rust features might not be available? What about support for Firefox on "non-tier-1" platforms, which make up a smaller share of Firefox users? Mozilla's stance is that in the long run, the pain of transition will be worth it. "The advantage of using Rust is too great," according to maintainer Ted Mielczarek. "We normally don't go out of our way to make life harder for people maintaining Firefox ports, but in this case we can't let lesser-used platforms restrict us from using Rust in Firefox."

InfoWorld points out most Firefox users won't be affected, adding that those who are should "marshal efforts to build out whatever platforms need Rust support." Since most users just want Mozilla to deliver a fast and feature-competitive browser, the article concludes that "The pressure's on not only to move to Rust, but to prove the move was worth it."

236 comments

  1. Assembly language is good enough for anyone... by QuietLagoon · · Score: 1, Insightful

    What's with all these other languages lately?

    1. Re:Assembly language is good enough for anyone... by TechyImmigrant · · Score: 5, Informative

      What's with all these other languages lately?

      In the case of Rust, it addresses security problems that are the domain of internet facing software. When writing complex internet facing software, human's haven't got the brains to write secure code. Rust improves the situation by enforcing things that humans get wrong.

      For this reason, security people love it. They understand how they can write software with deterministic behavior in Rust where they know they cannot in C or many other compiled languages.

      Other people want different problems solved and look at Rust and think "Well that looks a bit inconvenient" and dismiss it, and continue to write browsers and servers and daemons and MTAs and other internet facing things full of security exploits.
       

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re:Assembly language is good enough for anyone... by fahrbot-bot · · Score: 0

      When writing complex internet facing software, human's haven't got the brains to write secure code. Rust improves the situation by enforcing things that humans get wrong.

      Obviously, humans do have the brains, otherwise Rust wouldn't improve things. So the benefit is using Rust rather than better skilled programmers, etc...

      --
      It must have been something you assimilated. . . .
    3. Re:Assembly language is good enough for anyone... by fahrbot-bot · · Score: 1

      Just because a programmer is skilled does not mean they will write code that is good or acceptable.

      Also doesn't mean they can't.

      --
      It must have been something you assimilated. . . .
    4. Re:Assembly language is good enough for anyone... by ArchieBunker · · Score: 1, Insightful

      Funny how the OpenBSD team doesn't have that problem.

      --
      Only the State obtains its revenue by coercion. - Murray Rothbard
    5. Re:Assembly language is good enough for anyone... by pseudofrog · · Score: 3, Insightful

      Holy shit. Is there any problem/non-problem you all *won't* blame on "SJWs"? I'm calling this phenomenon Pseudofrog's Law: Literally anything that can or can't be blamed on SJWs will be blamed on SJWs.

    6. Re: Assembly language is good enough for anyone... by Anonymous Coward · · Score: 1

      They understand how they can write software with deterministic behavior in Rust where they know they cannot in C or many other compiled languages.

      Examples?

    7. Re:Assembly language is good enough for anyone... by QuietLagoon · · Score: 0

      Marked as a troll? I had intended it to be funny. Has everyone lost their sense of humor? :)

    8. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 1

      "That's saying if a human builds a machine to build something else, then the human can build that thing directly without needing the machine? Wrong! " Um, yes? Actually if we don't have the technology to build a thing then we certainly do not have the technology to build something that will then build that thing. If we did, then we could be said to have the technology to build the thing in the first place. Bootstrapping doesn't replace the human operator.

    9. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Just because it's technically possible to do accounting without double entry book keeping doesn't mean it's a good idea to do so.

    10. Re:Assembly language is good enough for anyone... by Carewolf · · Score: 1

      What's with all these other languages lately?

      In the case of Rust, it addresses security problems that are the domain of internet facing software.

      Well it is basically a compact syntax for doing modern safe C++ but based on a hybridf of ML and C instead of just C, and proper ML-style enums and pattern matching thrown in to spice it up a bit.

      Nothing you can't do in C++ and people already are doing.

    11. Re:Assembly language is good enough for anyone... by MightyMartian · · Score: 2

      That's what I've been saying about nosql for a long time now.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    12. Re:Assembly language is good enough for anyone... by MightyMartian · · Score: 1

      Irony died on January 20th.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    13. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      There is historical precedent in mozilla's case.

    14. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      false dichotomy. Better skills do not replace better tools, and better tools do not make people less skilled.

    15. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      So....
      Rust was written by non-humans?
      Really, Rust can have the same security exposure are C, C++ or any other language already in place.
      Further, Rust is new and virtually unproven in any real world application.

      CAP === 'fragrant'

    16. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      This isn't solving the right problem at all though.

      If we (as in programmers) would quit being assholes to each other and having dick-measuring contests by who can come up with a "better" language every year, we would actually be trying to make C-family languages C/OBJC/C++/C#/OBJC++/etc much less shitty to program by making sure that every C/C++ runtime can run on all systems with the same CPU, not just the flavor of the month OS.

      In an ideal world, everyone would have hopped on to the C bandwagon, and a it would have evolved it's own object-oriented memory management, unicode-aware string handling, and multithreading without ever throwing out the baby with the bathwater like we do every year.

      If people want their code to last forever, they have to use a subset of C99, and nothing else. If they want their projects to only work for about 2 years before the next compiler or iteration the language comes out, program in anything else. I dare you. Probably the only scripting language that hasn't succumbed to API decay is Javascript. You can still run old Javascripts from 1999 on a modern browser provided you didn't use anything that was specific to that browser. Much like using only C99 and no compiler-specific language extensions.

      My hope is that one day we will stop these dick-measuring contests and have a real successor to "C", because the only thing that is hard to understand about C is pointers and variable sizes (due to platform-specific differences.)

    17. Re:Assembly language is good enough for anyone... by Ramze · · Score: 4, Insightful

      Great. Here's some sand. Bake me an intel-compatible x86 chip. The specs are all out there, and it's unencumbered by patents.

      What's that? You need a wafer oven and a lithography machine? pffft. no kiddin'.

      You sometimes have to make a tool to make a tool to make a tool that will make the tool you need to do the job. Human hands don't have the dexterity to cut a silicon wafer, nor do human eyes have the ability to see to do it... nor do human minds have the capacity to construct and memorize a proper layout -- we use computers to do that for us. An amazing amount of chip design is automated with most of the details worked out by complicated algorithms.

      Same is true of software. We build frameworks and modules and libraries and use compilers for various languages because no one on the planet can create the binary for a massive modern program using only their head and a pen and pad and hand-feed it into the machine with punch cards.

      If you don't understand this concept, you are truly lost.

    18. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Just what the SJWs want you to think!

    19. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Now it's insightful, apparently. The humour impaired are now in the ascendency. Unless this is meta-humour, in which case I say: well played, people!

    20. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Wikipedia says "In computer science, a deterministic algorithm is an algorithm which, given a particular input, will always produce the same output, with the underlying machine always passing through the same sequence of states." Certainly C and other languages can be used to write software with deterministic behaviours. Obviously languages differ in the amount of hand-holding they offer the programmer but that is something different.

    21. Re:Assembly language is good enough for anyone... by Dagger2 · · Score: 1

      It's nothing you can't do in assembly either. What's your point? That this stuff should be harder than it needs to be? That makes no sense.

    22. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      pseudofrog is an SJW - get him/her/it

    23. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Wow, with your thinking we'd still be in the stone age if even that. Cuz, you know if a human can build a tool that helps him, he sure can do it without the damn tool.

    24. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      You mean yeewhadist, zealots and alt-right arm chair generals? Those are SJW unfriendly.

    25. Re:Assembly language is good enough for anyone... by phantomfive · · Score: 1

      In the case of Rust, it addresses security problems that are the domain of internet facing software

      I don't think there are any common security problems that can't be fixed by using a good string and buffer library. Switching languages to get that advantage is a little overkill.

      Using Rust will get rid of a lot of memory leaks though (not all of them), so that is a benefit. Judicious use of techniques like memory pools, stack allocation, and reference counting will get you similar benefits in C, requires more discipline (which Firefox developers definitely don't all have), but eliminates more bugs.

      The Firefox team has decided that switching to Rust is a good way to handle these problems. It isn't the way I would handle them, but it is a way to handle them, and I commend the Firefox team for seeing a problem and coming up with a solution. I hope it works out well for them, because better browsers benefit brogrammers bigly (and the rest of us).

      --
      "First they came for the slanderers and i said nothing."
    26. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 2, Interesting

      Mozilla have repeatedly shown that they won't tolerate opposing opinions and will fire you if your opinions are not in line with theirs. They chased out Brendan Eich because his opinions and they promised to hunt down and fire a Mozilla employee who posted his opinions online:

      http://www.dailydot.com/debug/mozilla-reddit-hate-speech-firing/

      So, not only do we have two clear cases of them chasing programmers out, they've probably deterred a great many other programmers from wanting to join. I would therefore say his claim that "Mozilla has chased the good programmers away because they didn't agree with some SJW agenda" is simply a statement of fact.

      Also, I'm offended by your comment. I think you should check your Rust code of conduct to see how you should respond to this:

      And if someone takes issue with something you said or did, resist the urge to be defensive. Just stop doing what it was they complained about and apologize.

      I expect an apology immediately, otherwise you're banned from using Rust.

    27. Re:Assembly language is good enough for anyone... by gweihir · · Score: 1

      For this reason, security people love it. They understand how they can write software with deterministic behavior in Rust where they know they cannot in C or many other compiled languages.

      I am a security person and I do not love Rust. In fact, I think it will make matters worse, because it will make people think that they can write security-critical software with even less understanding of what is going on. Rust will make some types of attacks harder to do, but by the dumbing-down effect it will add other problems. My expectation is that in total, what we will see is a decrease of security due to less competent architecture, design and implementation.

      There is no silver bullet, and those that still do not understand this are doomed to screw up time and again.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    28. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Don't know much about Rust, but I know enough that names matter (who do you think approves infosec decisions? Clever engineers, or mindless bureaucrats?), and they fucked an entire potentially great language with a stupid name.

    29. Re:Assembly language is good enough for anyone... by Carewolf · · Score: 1

      It's nothing you can't do in assembly either. What's your point? That this stuff should be harder than it needs to be? That makes no sense.

      Nope. I think Rust is nice, though I have seen better "C++-killers". There have just been a lot of languages like it. They tend to fail or remain niche if they don't provide something they do significantly better than what they are replacing.

      Also if you are concerned about these security aspect you should switch to safe techniques first, you can worry about a language that make such techniques more concise later, first you need to learn them.

    30. Re:Assembly language is good enough for anyone... by Anonymous Coward · · Score: 0

      Just because I can add two numbers together without error doesn't mean I can add a billion numbers together without error...

    31. Re:Assembly language is good enough for anyone... by Pikoro · · Score: 1

      sudo get him/her/it

      --
      "Freedom in the USA is not the ability to do what you want. It is the ability to stop others from doing what THEY want"
    32. Re:Assembly language is good enough for anyone... by manu0601 · · Score: 1

      Judicious use of techniques like memory pools, stack allocation, and reference counting will get you similar benefits in C, requires more discipline

      Does it? Look at Apache memory management through APR: you do not need special discipline, just use it and get rid of memory leaks.

    33. Re:Assembly language is good enough for anyone... by phantomfive · · Score: 1

      By Apache APR I assume you are referring to their memory pools? Those are great, but not appropriate for all problems. For example, if you have an object that gets created, passed off to another section of code, which passes it off to another section of code, which frees it. This is common in a producer/consumer situation, or a message-passing situation, or almost any situation where you have queues. Memory pools don't work as well in those situations, because you don't want to delete a whole pool, you just want to delete a single message when it's been processed. Reference counting does work in that situation (and has been used in the Linux kernel, for example, in the USB section where URBs get passed from once section of the kernel to another).

      I do agree that in the vast majority of situations, memory pools are great, and are highly recommended.

      --
      "First they came for the slanderers and i said nothing."
    34. Re:Assembly language is good enough for anyone... by eclectro · · Score: 1

      because it will make people think that they can write security-critical software with even less understanding of what is going on. Rust will make some types of attacks harder to do, but by the dumbing-down effect it will add other problems.

      While this is a valid point, Rust likely represents the future in software thinking where other tools are made that will compensate for possible mistakes made by ever faulty human programmers.

      --
      Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
    35. Re:Assembly language is good enough for anyone... by ndogg · · Score: 1

      Funny how the OpenBSD team isn't very big, and hasn't really grown.

      --
      // file: mice.h
      #include "frickin_lasers.h"
    36. Re:Assembly language is good enough for anyone... by gweihir · · Score: 1

      Nice one, I laughed loud and hard! That future has been predicted for now something like 40 years, and exactly _nothing_ of it has materialized.

      The state of things has been and likely will be for a long time (potentially forever) that anything the coder does not understand will not be understood and hence very likely faulty. Tools help somewhat with errors that are oversights. They do not help at all when the coder does not understand what is wrong or even that there is something wrong. The key reason for that is that tools have no insight (no AI or weak AI only, because the strong AI that would be needed has not materialized so far and may never do so), and hence tools use heuristics and pattern-libraries. These are somewhat usable to create suspicion of an error (if the situation is structurally simple), but they either miss a lot or create a lot of false positives. In the latter case, the coder has to understand whether something is actually a problem or not, and that works only for errors that are oversights, not for problems stemming from lack of insight on the coder's side. Structurally complex errors (architecture, design) are completely out of reach for tools and will remain so for the foreseeable future.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    37. Re:Assembly language is good enough for anyone... by arglebargle_xiv · · Score: 1

      Other people want different problems solved and look at Rust and think "Well that looks a bit inconvenient" and dismiss it, and continue to write browsers and servers and daemons and MTAs and other internet facing things full of security exploits.

      Right, because if you use Rust your code will magically become secure, and bug-free, and crash-proof, and all your problems will go away, and Adriana Lima will fall in love with you and have your babies. I've heard similar stuff from other True Believers about their pet languages, e.g. the academic who said that everything should be written in Haskell because it's impossible to write bad code in it (this actually happened!).

      You need to balance a lot of things when deciding which language you want to use. We have an infinite number of them, and it's possible to write crap code in all of them. OTOH if you're using something so specialised that you're having trouble finding developers, tools, add-ons, and support infrastructure, then you're losing more than you gain. Which looks to be the case with Rust. Building some specialised app whose environment you control with it is one thing, but a mainstream, cross-platform, mass-market product? Sounds like a recipe for infinite future pain.

    38. Re:Assembly language is good enough for anyone... by DeVilla · · Score: 1

      In college we used to find twisted ways to blame anything on civil engineers. I would guess that blaming SJWs wouldn't be any more difficult. Not sure if it would be as much fun.

    39. Re:Assembly language is good enough for anyone... by roca · · Score: 1

      The OpenBSD team hasn't written anything nearly as complex as a browser.

    40. Re:Assembly language is good enough for anyone... by roca · · Score: 1

      Rust can do many things modern C++ can't do.

      For example, in Rust you can give away a reference to a field of an object *safely*:
      struct X { foo: Y }
      impl X {
          fn foo(&self) -> &Y { &self.foo }
      }
      No way to do that safely in C++. Sure, you can give away a pointer or a reference to a field, but the compiler can't ensure you haven't introduced a use-after-free bug. Rust can.

    41. Re:Assembly language is good enough for anyone... by roca · · Score: 1

      String and vector libraries can't protect you from use-after-free bugs. To prevent those, before Rust, you needed some kind of GC, which imposes performance tradeoffs (some combination of increased memory usage, throughput overhead, and pauses). (Swift's ARC is really a form of reference-counting-based GC.) Rust offers a new approach where you can have manual memory management but the compiler can verify you don't have use-after-free bugs.

    42. Re:Assembly language is good enough for anyone... by roca · · Score: 1

      Are you saying that instead we should make people smarter? Or that we should write less software?

    43. Re:Assembly language is good enough for anyone... by squiggleslash · · Score: 2

      The OpenBSD team's main forte is auditing and fixing code, rather than creating new code. The "new" parts of OpenBSD, that didn't originate somewhere else, take a very long time to develop and mature as a result.

      OpenBSD started as a fork of NetBSD. It's not like Theo wrote the entire thing from scratch.

      --
      You are not alone. This is not normal. None of this is normal.
    44. Re:Assembly language is good enough for anyone... by TechyImmigrant · · Score: 1

      I don't have a dog in this fight - I was reporting the nature of the discussions on the crypto mailing lists I'm on rather than telling people what language to use.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    45. Re:Assembly language is good enough for anyone... by TechyImmigrant · · Score: 1

      Are you saying that instead we should make people smarter? Or that we should write less software?

      I strongly recommend writing less software.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    46. Re:Assembly language is good enough for anyone... by dddux · · Score: 1

      Fine. Now can you explain to me why is Firefox 45 so laggy, a RAM and a CPU hog that you need a very expensive 8 core with 16GB of RAM to run it *reasonably well* with these days? Why wouldn't it run smoothly on an ARM CPU with 2GB of RAM? I remember Firefox 3 and 4 running smoothly on this AMD Phenom II 965 with 8GB of RAM but with version 45 it just works like it's been programmed in Spectrum basic or something. If that's the future it looks very, very bleak.

      --
      "It is no measure of health to be well adjusted to a profoundly sick society." - Jiddu Krishnamurti
    47. Re:Assembly language is good enough for anyone... by phantomfive · · Score: 1

      When was the last time you had a 'use after free' bug?

      --
      "First they came for the slanderers and i said nothing."
    48. Re:Assembly language is good enough for anyone... by gweihir · · Score: 1

      Well, I do not doubt it. "Security people" are of various levels of skill and insight and many of them have a deep, unreasonable trust in tools, languages and technological progress. I never really had that and by now, I am pretty much convinced that the only thing that can give software a good security level is people that have a deep understanding of security on all levels (architecture, design and implementation). Of course such people are rare, and they tend to be expensive. They also tend to be unwilling to take the usual crap everybody has to take in a large organization.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    49. Re:Assembly language is good enough for anyone... by gweihir · · Score: 1

      I fully and completely agree. And that is what will eventually happen when insecure software will get you hacked within days. Most of the software that gets written today does not fulfill any useful purpose (besides giving some people an income), so, as a group, the human race is far better off without it.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    50. Re:Assembly language is good enough for anyone... by Samizdata · · Score: 1

      Fine. Now can you explain to me why is Firefox 45 so laggy, a RAM and a CPU hog that you need a very expensive 8 core with 16GB of RAM to run it *reasonably well* with these days? Why wouldn't it run smoothly on an ARM CPU with 2GB of RAM? I remember Firefox 3 and 4 running smoothly on this AMD Phenom II 965 with 8GB of RAM but with version 45 it just works like it's been programmed in Spectrum basic or something. If that's the future it looks very, very bleak.

      Posting this from 51.0.1 on an 8-year-old Core 2 Duo with 8 Gb of RAM and around 20-30 tabs and it seems to work fine to me (even with a fat load of extensions).

      --
      It's not the years, honey, it's the mileage. - Colonel Henry Walton Jones, Jr., Ph.D.
  2. Stick a fork in Mozilla! They're done! by Anonymous Coward · · Score: 0

    R.I.P. Firefox. It was fun while it lasted.

    1. Re:Stick a fork in Mozilla! They're done! by johanw · · Score: 4, Insightful

      There are several forks. I'm typing this in Palemoon, a fork that didn't go along in the chromification process.

    2. Re: Stick a fork in Mozilla! They're done! by Anonymous Coward · · Score: 0

      For those of us that refuse to trust Chrome, this is a sad day.

    3. Re:Stick a fork in Mozilla! They're done! by FatdogHaiku · · Score: 1

      R.I.P. Firefox. It was fun while it lasted.

      Hey now, don't be glum!
      The upside of this is that once Mozilla shakes those last "hanger on" users, they can turn out the lights and go home...
      Carbon Footprint reduction via corporate self euthanasia!

      --
      You have the right to remain sentient. If you give up the right to remain sentient, you will be elected to public office
    4. Re:Stick a fork in Mozilla! They're done! by Anonymous Coward · · Score: 0

      I will give it a try. Firefox has turned into a piece of crap! Every time I watch a flash video in 480p, a process under Firefox called 'Web Content' chews up 100% of the CPU and the video starts cutting. It's a piece of crap. I've been use chrome instead.

  3. Bloat, Inc. by Anonymous Coward · · Score: 0

    so many bad decisions. RIP.

  4. the future of Mozilla by ooloorie · · Score: 0, Troll

    A browser nobody uses written in a language nobody uses.

    1. Re:the future of Mozilla by geek · · Score: 4, Interesting

      A browser nobody uses written in a language nobody uses.

      Quick, let Dropbox know no one uses Rust. I mean they went and re-wrote their entire back end in it. If only they thought like you such a crisis could have been averted.

    2. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      Hey, I just installed rustc yesterday. Though you're correct, I can only presume my finger is so on the pulse of society that Mozilla's telemetry told them to immediately follow suit imagining it's what I would do. Wrong, but the only possible conclusion.

    3. Re:the future of Mozilla by religionofpeas · · Score: 1

      Nobody uses Dropbox, though.

    4. Re:the future of Mozilla by Jack9 · · Score: 1
      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    5. Re:the future of Mozilla by Anonymous Coward · · Score: 0, Insightful

      Good point. And I hate this idea! This transition is gonna make more harm than good.

      I am a Firefox user from the very beginning and I see Firefox drifting for some time now. 99% of users really do not need more new features. We do not need a browser supporting all those stupid JS API's (WebRTC) and We do not care how much it scores at html5test.com - leave this crap for WebKit/Blink. Just make your engine render pages fast and correct, fix security bugs and you will make most of Your users more than happy. Maybe you should consider a lightweight fork of your browser?!

    6. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      actually that's firefox fate ever since they were lured into including DRM into the damn thing

    7. Re:the future of Mozilla by Gordo_1 · · Score: 1

      Well, I use Firefox. It's relatively stable these days, plus I don't have to keep checking my eye sockets to determine whether my eyeballs have been sold to the highest bidder -- which is more than I can say for most alternatives these days. Plus, with a small user base, it's become less of a target for malware authors too. Win-win if you ask me.

    8. Re:the future of Mozilla by Anonymous Coward · · Score: 1

      A browser nobody uses written in a language nobody uses.

      I don't use rust. Never even bothered to look at it.
      But your post was so trumpian I figured it was probably alt-facts.
      So I spent 30 seconds checking with google.

      Looks like lots of companies are using rust in production.

    9. Re:the future of Mozilla by Shane_Optima · · Score: 1

      A browser nobody uses written in a language nobody uses.

      Quick, let Dropbox know no one uses Rust. I mean they went and re-wrote their entire back end in it. If only they thought like you such a crisis could have been averted.

      And Twitter was originally written in Ruby, and Orbitz was written in Common Lisp.

      And time passes, and both are rewritten to C or Java or something, and neither Ruby nor Lisp is a very commonly used language.

      Don't get me wrong, I'd love to see Rust succeed, but the QWERTY effect, or "popular for being popular", is a pretty tough nut to crack.

    10. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      In case you hadn't noticed, the vast majority of those companies exist in the world of startup culture, they tend to make technology decisions by following trends and imitating each other, not based on engineering merit. Don't choose a language because generic VC-backed SaaS company #9,591 uses it. This is the same culture Rust itself grew out of, written mostly not by language designers but by bored web developers reinventing the wheel.

    11. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      Nope. This is one of the developers of Rust. Has an awarded PhD about computer languages.

      http://www.pl-enthusiast.net/2...

      Yes, there are the ex-rubyists as well but they mostly do the docs or care for conferences and leave the hard stuff to the people who know it.

    12. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      So, other than Canonical, a bunch of nobodys. Thanks for that link....to friends.html funny.

    13. Re:the future of Mozilla by K.+S.+Kyosuke · · Score: 1

      Where did you get the impression that Orbitz is being rewritten in something else than Lisp? Aside from some front-ends being added or maintained, of course.

      --
      Ezekiel 23:20
    14. Re:the future of Mozilla by K.+S.+Kyosuke · · Score: 1

      Just make your engine render pages fast and correct, fix security bugs

      So you want Servo. Great, but it's being written in Rust.

      --
      Ezekiel 23:20
    15. Re:the future of Mozilla by jimbo · · Score: 1

      No matter what Mozilla does or doesn't do they get criticized here, it might be different people criticizing different things but still...

      This AC hates this Rust idea and wants a faster browser not new features. Well, Servo and the Rust projects is exactly about that: a faster, smoother, safer browsing experience, not new features.

    16. Re:the future of Mozilla by Shane_Optima · · Score: 1

      Not sure, but I read a while back that the back end was being rewritten to C or C++.

    17. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      I work at Dropbox and that's news to me. Some small performance critical parts of our infrastructure was rewritten in Rust but the vast majority of our back end infrastructure is still in Python and Go with no plans to change it.

    18. Re:the future of Mozilla by Anonymous Coward · · Score: 0

      Orbitz was written in Common Lisp [...] rewritten to C or Java or something

      [citation needed] - seriously, my Google Fu could not come up with any confirmation of this.

    19. Re:the future of Mozilla by Shane_Optima · · Score: 1

      Well, you're the second person to question this. I very clearly remember reading it and thinking it was a bit of a shame and an obvious example of the current state of the industry, with them preferring to use common commodity stuff that every code monkey can work with, but no, I don't have a source. This was some years ago.

    20. Re:the future of Mozilla by K.+S.+Kyosuke · · Score: 1

      In that case, where exactly did you read that? Since others seem to make different claims...

      --
      Ezekiel 23:20
    21. Re:the future of Mozilla by Shane_Optima · · Score: 1

      It was some years back, possibly a forum post or other less official source. I distinctly remember reading it and feeling annoyed and depressed about its implications for popular-for-being-popular momentum, but I can't vouch for nor recall the source. If they were wrong then they're wrong (and yay.)

  5. LLVM requirement? by Anonymous Coward · · Score: 0

    Firefox will require Rust to compile successfully

    Rust depends on LLVM

    Ok, so we can't compile Firefox on lesser-end androids targeting a megacluser of PICs. But apart from that, what's the fuss?
    Without knowing anything about it, I'd guess 99,999% of the times Firefox is compiled, it is compiled on x86-64. And a dependency on LLVM won't bump that to 100%.
    Should I have read TFA in order to understand TFS?

    1. Re: LLVM requirement? by murphtall · · Score: 1

      Yes

    2. Re:LLVM requirement? by Nemosoft+Unv. · · Score: 0
      Oh, it gets worse. From the article:

      Rust 1.15’s most notable new feature is a revamped build system written in Rust and using Rust’s native Cargo package management.

      So in order to build Rust, you must have... Rust. Chicken-and-egg omelet, anyone?

      --
      "Fix it? It has been disintegrated, by definition it cannot be fixed!" - Gru in Despicable Me.
    3. Re:LLVM requirement? by ArchieBunker · · Score: 1

      Reminds me of trying to get stuffit installed on an old Mac. Nobody ever supplied stuffit as an executable, it was always compressed.

      --
      Only the State obtains its revenue by coercion. - Murray Rothbard
    4. Re:LLVM requirement? by GameboyRMH · · Score: 0

      The previous procedure being used at Mozilla to compile Firefox wasn't exactly a one-line command to gcc anyway. They were using optimizations that required far more RAM than you could jam into most computers.

      --
      "When information is power, privacy is freedom" - Jah-Wren Ryel
    5. Re:LLVM requirement? by Anonymous Coward · · Score: 0

      Sure because you've never heard of Self-Extracting Archives and you've never heard of MacBinary and you've never heard of BinHex. Peddle your ignorant bullshit elsewhere, fuckface.

    6. Re:LLVM requirement? by Lehk228 · · Score: 0

      that is a step towards being self hosting, which is a good thing and makes porting to other platforms less dependent on other things already being available on that platform.

      --
      Snowden and Manning are heroes.
    7. Re: LLVM requirement? by Anonymous Coward · · Score: 0

      C compilers are written in C, this is nothing new.

    8. Re:LLVM requirement? by corychristison · · Score: 1

      I run Funtoo Linux, a source based distribution. I compile Firefox without issue. Actually, I've had more problems with compiling Chromium than Firefox.

    9. Re:LLVM requirement? by Anonymous Coward · · Score: 0

      Stuffit was never distributed as a sea file and the Mac didn't have any of those programs. If you did try and download one, guess what it compressed with... You Mac users sure are an angry bunch. Still mad about dragging a floppy to the trash to eject it?

    10. Re:LLVM requirement? by Anonymous Coward · · Score: 1

      I'm guessing, from your ID, that you have a copy of the dragon book. I know, from your comment, that you've never read it.

      Open it up to page 24, and start reading. This is a long-solved problem.

    11. Re: LLVM requirement? by HiThere · · Score: 1

      It may be nothing new, but it's also a weakness (as well as a strength). I've run into multiple languages that went in for self-hosting and eventually became dependent on a binary version because someone lost the full build chain. The solution is to maintain a sub-language that is can be built from something simple, like C.

      N.B.: Languages aren't all major languages. One of the languages I'm thinking of was, IIRC, BC-Algol, which was compiled to a reverse-polish intermediate code which was executed by the interpreter. It was never ported off the 7090-7094 DCS system because it wasn't worth rewriting some important part of it. (It *could* have been done, as the lost part was simple enough, but Algol was dying anyway at that time so it was never done.)

      But the point is, you've got to maintain the sub-language that your "self-hosting compiler" is written in. If the language becomes popular this isn't a major problem, because you need to use it well with every iteration. If it isn't, though, you can just ignore it until it dies of bit-rot, or you lose the tool-chain, of your backups fail, or... Mozilla is probably a major enough user (now?) that this won't be a big problem, and will be primarily a source of strength, allowing easier porting to alternate systems...but it *is* also a weakness.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    12. Re: LLVM requirement? by HiThere · · Score: 1

      But there's also a language that the bootstrap C compiler is written in. C is simple enough that this is usually assembler, and the bootstrap C compiler isn't really C, but rather a subset of C.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    13. Re:LLVM requirement? by GameboyRMH · · Score: 2

      Why is this modded Troll? Admittedly my understanding of the amount of RAM required was out of date - 8GB is recommended and a 2GB absolute minimum is required. It requires 30GB(!) of disk space:

      https://developer.mozilla.org/...

      --
      "When information is power, privacy is freedom" - Jah-Wren Ryel
    14. Re:LLVM requirement? by K.+S.+Kyosuke · · Score: 1

      So in order to build Rust, you must have... Rust. Chicken-and-egg omelet, anyone?

      That's unheard of! I always bootstrap my C compiler by hand. This self-compilation thing is never going to work.

      --
      Ezekiel 23:20
    15. Re:LLVM requirement? by Anonymous Coward · · Score: 0

      Firefox will require Rust to compile successfully

      Rust depends on LLVM

      Ok, so we can't compile Firefox on lesser-end androids targeting a megacluser of PICs. But apart from that, what's the fuss?
      Without knowing anything about it, I'd guess 99,999% of the times Firefox is compiled, it is compiled on x86-64. And a dependency on LLVM won't bump that to 100%.

      It's still one more big dependency, taking as long to compile as Firefox itself (about 20 minutes on my computer). I don't currently need it for anything else.

      How about they remove all the useless, privacy-invading, security-nightmare, usability-disaster code they added in the past six years, to reduce the attack surface, first?

    16. Re:LLVM requirement? by Anonymous Coward · · Score: 0

      "Troll" mod is the new "I hate you and I want to mod you down to Oblivion, but the option "overrated" can be undone by metamoderation". Slashdot is becoming a Wikipedia variant

    17. Re:LLVM requirement? by Truekaiser · · Score: 1

      No android, no ios, no ppc, no arm, no mips, and no bsd. None of those are on the 'it won't break if you look at it funny' list of rust support.

    18. Re:LLVM requirement? by Anonymous Coward · · Score: 0

      30GB(!) of disk space:

      Wrong, it only requires that much because they're pulling the mercurial tree with full history, a normal user using tarball can do it with much less space, the gentoo ebuild recommends 4Gb.

      Also a debug build of chromium in 2012 required more than 17Gb of RAM, now it's probably even more.

    19. Re:LLVM requirement? by petermgreen · · Score: 1

      8GB is recommended and a 2GB absolute minimum is required.

      8GB can be "jammed in" to virtually all desktops and laptops made in the last 5 years, 2GB can be "jammed in" to virtually all desktops and laptops made in the last 10 years.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  6. Great jorb, Debian niche-arch maintainers. by Anonymous Coward · · Score: 0

    Thank you for dragging your feet on the LLVM thing and complaining about it instead, you stalwart defenders of the OSS world, you. After all, your niche architecture is only worth that much, not doing the actual leg-work to drag it into the future.

  7. Courage. by serviscope_minor · · Score: 5, Insightful

    Courage is not removing the headphone jack. Courage is switching to a new systems language because the existing one, while good, just doesn't allow them to reach th quality level they want.

    --
    SJW n. One who posts facts.
    1. Re:Courage. by Desler · · Score: 0

      Why should anyone believe that Mozilla will make a better systems language? Rust is still horrendous to use even 7 years in to development. More people own Windows Phones than use Rust.

    2. Re:Courage. by Anonymous Coward · · Score: 0

      And we trust take your opinion about Rust because...? Any idiot can say it's "horrendous" without qualifications, but it seems like everyone who actually learns the language has to admit that it's not as awful as the naysayers claim. And as for anyone saying it's some sort of Stockholm or other syndrome, take your worthless snark elsewhere. We've all had to survive learning curves for the benefit of being able to write better code. Rust is no different.

    3. Re:Courage. by Anonymous Coward · · Score: 0

      Thanks, now it's even more obvious that you're just a worthless troll about this subject. Ah, classic Slashdot... "we know nothing and our opinions and facts are incredibly narrow, yet we still want to act like authorities just filled with evidence."

    4. Re:Courage. by BarbaraHudson · · Score: 0

      "switching to a new systems language"? Sorry, rust is not a system language. When people start shipping operating systems in it, then you might have an argument.

      --
      "Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
    5. Re:Courage. by Anonymous Coward · · Score: 1

      This:

      > I never said my opinion was anything but my opinion.

      Directly followed by:

      > The simple fact that no one of note uses this toy language for anything seems to agree with me.

      Is a direct contradiction. "Its only MY opinion but everybody agrees with ME."

      I dunno about the merits of your argument, but that kind of sophistry isn't giving me any reason to trust what you say.

    6. Re:Courage. by svanheulen · · Score: 1

      Not that this is an OS anyone uses but... https://www.redox-os.org/

    7. Re:Courage. by DrXym · · Score: 4, Interesting
      Rust is pretty easy to program in, more so that C or C++ in some ways, harder in others. It definitely has a mindset / steep learning curve associated with using it for the first time. In C or C++ it's far too easy to allocate memory and forget to free it (or free it multiple times), or stomp over the end of the buffer, or have two threads write to the same data, or call a pointer which isn't there.

      It is very hard to do those things in Rust and that what makes it an excellent systems programming language. It has equivalent performance to C or C++ - almost all checks are at compile time and compile away to nothing in the generated code, and yet the quality of the code is higher because there are less ways it can fail when it passes those checks. That's an extremely compelling argument for code that is expected to run for months or years without failure.

      Aside from the language itself, the std library is way better than for C++ and cross platform. And building software or pulling in external libraries is incredibly easy thanks to the package manager / build tool. It still has some rough edges, but nothing I would consider a blocker.

    8. Re:Courage. by roman_mir · · Score: 1

      Courage? I think you misspelled desperation.

    9. Re:Courage. by mark-t · · Score: 1

      He said *seems* to agree... I kinda think he has a point.

    10. Re:Courage. by Anonymous Coward · · Score: 0

      > He said *seems* to agree...

      Really? ::rolleyes::
      Do you honestly think he meant anything other than argumentum ad populum?

    11. Re:Courage. by Anonymous Coward · · Score: 0

      Pot. Kettle. Black.

    12. Re:Courage. by serviscope_minor · · Score: 2

      In C or C++ it's far too easy to allocate memory and forget to free it

      Leaks are memory safe though and the borrow checker doesn't help there. With Rust as with modern C++ though, you have to go pretty far out of your way to leak. Everything else though, Rust does help with.

      --
      SJW n. One who posts facts.
    13. Re:Courage. by DrXym · · Score: 1
      Leaks are only safe if your memory is infinite. Systems programming cannot make that assumption even on the desktop let alone on something like an embedded device. A program could be losing some innocuous amount of memory, e.g. 16 bytes a minute and it would still kill the system in the long term. It might take a very large amount of debugging and analysis to even find the cause.

      Real world software is also not perfect. Maybe you use smart pointers all over the place. But you'll have to link with some library X which is written in C and there are X_alloc / X_free functions you're supposed to call for some opaque pointer. Then you have to add library Y and that's using an older C++ because it can't break compatibility for some reason. Then you use library Z (e.g. Qt) which has its own way of doing stuff totally contradicting everything else. In the middle of all this something leaks and its a mess to find.

    14. Re:Courage. by mark-t · · Score: 1

      I think he meant exactly what he said... Nothing less, nothing more.

      So... yes. At least, that's how it read to me.

      At the very least, you don't get to just arbitrarily change or remove some of the words that somebody was using to determine that is what they must have originally meant. Maybe you are right, but his argument did not read to me like that at all. I was just calling someone out for trying to put different words in someone's mouth than what was actually said.

    15. Re:Courage. by rhodium_mir · · Score: 1

      Who has time for spelling when there are statist infants who have not yet been processed into a useful industrial slurry?

      --
      You can't spell "oneiromancy" without "roman".
    16. Re:Courage. by Anonymous Coward · · Score: 0

      This, so much this. The most common reason for me to restart Firefox is because it has somehow run out of memory even though there's only a handful of tabs open. Let's hope that as Firefox employs Rust more, that this goes away.

    17. Re: Courage. by Anonymous Coward · · Score: 0

      Sarcasm fail.

      You used "statist" and "useful" in the same sentence.

    18. Re:Courage. by Eravnrekaree · · Score: 1

      The memory management features you mention have been found in Perl for much longer which is available on far more platforms.

    19. Re:Courage. by petermgreen · · Score: 1

      But you'll have to link with some library X which is written in C and there are X_alloc / X_free functions you're supposed to call for some opaque pointer. Then you have to add library Y and that's using an older C++ because it can't break compatibility for some reason. Then you use library Z (e.g. Qt) which has its own way of doing stuff totally contradicting everything else. In the middle of all this something leaks and its a mess to find.

      The problem is unless you are going to rewrite the whole stack you still have to talk to those libraries. So the new language just moves the crap out of the language core and into the glue layer that lets you talk between code in your fancy new language and C/C++ libraries.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  8. Re: What the hell is "rust"? by Anonymous Coward · · Score: 5, Funny

    Best of all, if you have a problem with Swift, you can tailor swift to your needs and shake it off.

  9. Re:Rust will be what replaces C/C++ by Desler · · Score: 2, Insightful

    Yeah yeah. You guys have been saying that Rust will replace C and C++ for 7 years and yet it's still a toy that next to no one uses outside of Mozilla.

  10. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    The essential feature Rust brings is security, Swift has nothing fundamentally new.

  11. Mozilla needs to keep to basics by Anonymous Coward · · Score: 0

    I said it before, Mozilla needs to be a basic browser that is written in standardized C++ and not use any Brogrammer languages like Rust. Keep to the basics and keep supporting Windows XP and old Linux distros as that is where most of your dedicated users come from. Slashdot users need to get together and force Mozilla to stop Chromifying everything.

    1. Re:Mozilla needs to keep to basics by Anonymous Coward · · Score: 0

      What the hell ? Just as all software vendors begin to realize that they're not going to fix security by patching bugs indefinitely, but by killing entire classes of bugs with safe languages, security-oriented designs and isolation, you rant about Firefox not supporting old, non-maintained, totally insecure systems that are on the verge of extinction anyway ?

      That may be what you want (and in this case you don't seem to give a fuck about security), but it would be an incredibly stupid thing to do for Mozilla, which is probably way more interested in winning back half of the market with a modern and secure browser than in pleasing the two users that keep refusing to update their Debian 3 distros.

  12. Tell us, Einstein, what is Rust written in? by Anonymous Coward · · Score: 0

    Oh yeah, C and C++.

    1. Re:Tell us, Einstein, what is Rust written in? by AJWM · · Score: 3, Insightful

      Uh, nope.

      From WIkipedia:

      The language grew out of a personal project by Mozilla employee Graydon Hoare, who stated that the project was possibly named after the rust family of fungi.[11] Mozilla began sponsoring the project in 2009[10] and announced it in 2010.[12] The same year, work shifted from the initial compiler (written in OCaml) to the self-hosting compiler written in Rust.[13] Known as rustc, it successfully compiled itself in 2011.[14] rustc uses LLVM as its back end.

      (emphasis added)

      However, I'll grant that LLVM is written in C++.

      --
      -- Alastair
    2. Re:Tell us, Einstein, what is Rust written in? by Anonymous Coward · · Score: 0
      Take my upvote, good sir.

      Functional languages are just better suited for writing compilers, although it is possible to write them in imperative languages.

      From here:

      Basically, a compiler is a transformation from one set of code to another — from source to IR, from IR to optimized IR, from IR to assembly, etc. This is precisely the sort of thing functional languages are designed for — a pure function is just a transformation from one thing to another. Imperative functions don't have this quality. Although you can write this kind of code in an imperative language, functional languages are specialized for it.

  13. Re:What the hell is "rust"? by Aaron+B+Lingwood · · Score: 4, Informative

    And why aren't they using Swift which is the de-facto best choice for next generation systems languages?

    Rust a) has been around longer; b) was developed by Mozilla; c) focuses on security of web engines; and d) is strong enough for system programming.

    Swift was a reaction to Rust, bringing some of the features and simplifying the Obj-C Syntax. It was designed with the Apple environment in mind and doesn't (officially) support windows. Swift as a choice makes zero sense as there is no real benefit as Mozilla is no longer trying to be hip.

    Mozilla is taking a risk and betting on the future of hostile internet - and users actually giving a shit about security.

    --
    [Rent This Space]
  14. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    People said this crap about Go, too. And Go didn't even have any ambition as a language. Look at Go now. Not to mention that it has even taken much longer for big changes in C++ to be adopted than Rust has existed. So I have to ask: what's your point? If you're happy with the status quo, live in it. Someone has to try harder to improve our craft, and you're sure as hell not doing it. All you're doing is trolling on Slashdot.

  15. As Trump would say: WRONG by Anonymous Coward · · Score: 0

    It's too early. Rust isn't ready.
    I've played around with it, and it has some interesting properties and ideas that I like.
    But the tools are still too unstable. Language and library features change from one compiler version to the next.
    And compilation is slow as shit.
    Try compiling a simple hello world with Rust or GCC. The difference is staggering. (at least it was about 6 months ago)
    This might now matter for a hello world, but a codebase the size of firefox?
    Or are they going to use rust to compile only 1% of the code, in which case they are complicating their build for no reason.

    1. Re: As Trump would say: WRONG by Anonymous Coward · · Score: 0

      Sad

    2. Re: As Trump would say: WRONG by Anonymous Coward · · Score: 0

      Javascript wasn't finished in the early browsers

      C wasn't ready in the first release of Unix

      They all had to start somewhere. It would be great to see a new low level language gain traction.

    3. Re:As Trump would say: WRONG by DrXym · · Score: 1

      But the tools are still too unstable. Language and library features change from one compiler version to the next.

      The changes are backwards compatible. Freezing of certain APIs, addition of new features.

      And compilation is slow as shit.

      Compilation speeds have improved substantially. And the retort is to say that finding and fixing bugs in the field is way more time / money costly than stopping them from happening in the first place.

      Try compiling a simple hello world with Rust or GCC. The difference is staggering. (at least it was about 6 months ago)

      The difference in what? Speed? I was able to create, compile and run a hello world program in under 4 seconds.


      cargo init --bin
      Created binary (application) project
      cargo run
      Compiling hw v0.1.0 (file:///C:/Temp/hw)
      Finished debug [unoptimized + debuginfo] target(s) in 1.40 secs
      Running `target\debug\x.exe`
      Hello, world!

      Or are they going to use rust to compile only 1% of the code, in which case they are complicating their build for no reason.

      Every time Mozilla crashes because of dangling pointer, data race or some other avoidable problem caused by using C++, that's a reason. Every time someone finds a way to exploit the browser by causing a buffer overrun, stack overflow or whatever, that's a reason. Every time the browser runs stuff sequentially instead of in parallel due to the complexity and risk of data races is a reason.

      There are plenty of reasons to use Rust. And Mozilla's ambition is more than 1% of the code base. Look at the Servo project which aims to replace all of the browser engine with Rust.

    4. Re:As Trump would say: WRONG by Anonymous Coward · · Score: 0

      Try compiling an OpenGL hello world in rust, you'll have to wait for ages.

  16. Re:Rust will be what replaces C/C++ by geek · · Score: 1

    Yeah yeah. You guys have been saying that Rust will replace C and C++ for 7 years and yet it's still a toy that next to no one uses outside of Mozilla.

    Right? I mean we all know if it doesn't replace it overnight it's a worthless language. I mean Python was a total failure, people still use Perl for crying out loud!

  17. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    I use Go language, thank you very much.

    Rust sucks.

  18. Re: What the hell is "rust"? by Anonymous Coward · · Score: 1

    Yeah, if you go back a few weeks and read the interview with the designer of the swift language, you'll see he disagrees:
    - While obviously praising swift, he says it's not quite there yet for systems level programming.
    - He thinks Rust's safety features are great.

  19. and yet there are rust exploits by Anonymous Coward · · Score: 0

    lololol hahaha

  20. Re:Rust will be what replaces C/C++ by beelsebob · · Score: 1

    No other modern language is capable of safety and is low level enough. I saw one comment here asking why no swift, well for starters it has no concurrency or parallelism primitives which are a necessity for a systems language. Certainly for whatever language you want to write a browser in...

    That seems like a strange assertion to make given that C has, and C++ until recently had no concurrency or parallelism primitives, and are the de-facto systems programming languages at the moment.

    It also seems like a strange assertion when Swift by default ships with Grand Central Dispatch, which gives it strong concurrency and parallelism support.

    The issue with swift as a systems programming language is that its compiler output is too magical. Several of its features can cause weird and unexpected perf implications when used in subtly different ways. For example, it's generics implementation can end up compiling down to either fully dynamic dispatch, or just normal C function calls depending on whether the compiler analysis could figure out which types you were using, when, and how often.

  21. The Wiki page makes it sound like Rust by rsilvergun · · Score: 1

    is basically a wholly owned subsidiary of Mozilla. This whole thing smacks of eating your own dog food. As long as their support for the big 3 (Windows, OSX, Linux) isn't impacted I suppose it won't matter much. But if it even means waiting a bit for patches on Ubuntu or Red Hat then expect Chromium to eat what's left of their lunch.

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
    1. Re:The Wiki page makes it sound like Rust by Anonymous Coward · · Score: 1

      This whole thing smacks of eating your own dog food.

      You say that like its a bad thing. But that phrase is used to mean an engineering company that proves its own products by actually using them. Its literally the highest form of commitment to the quality of a product.

  22. Re:What the hell is "rust"? by Anonymous Coward · · Score: 1

    Swift was a reaction to Rust

    Also worth mentioning that three of the major contributors to Rust now contribute to Swift, Rust's founder Graydon Hoare included.

    The language is better overall, as it doesn't include these many compatibility cludges, and many of the stability breaks of Swift over the recent time brought it closer to Rust, meaning that Rust did something right, but if Apple has more money and they really want to establish it as the new systems programming language, there is nothing stopping them.

    Apple also has all the iOS developers behind them, a gigantic shepherd of developers who will use whatever tools apple commands them to use. They all are coding swift now. While Mozilla does have internal developers, and also offers interns to hack on Rust projects, they obviously don't reach the number of people that Apple commands.

    Also, I think Rust has a steeper learning curve than Swift. This might make it harder for beginner programmers to get the language.

    That being said, I think the steeper learning curve is justified and with Swift you have to pay back later on with harder to understand codebases, and harder to localize bugs. Still it will hurt Rust's growth at the start, and this might become an important factor.

    I repeat, I think Rust is the better language. It is well thought through and puts the emphasis on safety, which matters everywhere I think. But you have less job postings with Rust than with Swift, and its short to mid term chances are dimmer than the chances for Swift are.

    Let's see what the future brings us. I hope that Swift is a successful successor for objective C and flourishes inside the apple bubble. And for Rust I hope that it conquers everything outside of that bubble that isn't occupied by legacy C/C++ codebases and dynamic language use cases. Its an exciting time ahead for sure.

  23. Servo by jimbo · · Score: 4, Informative

    Given the quality of our comments recently, here is a good presentation with some actual information on their work currently and going forwards: Servo Architecture: Safety and Performance.

  24. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    I doubt it. The language that replaces C/C++ will be the next C/C++ standard. Rust is a nice language, but it needs to be a lot better than C++ to replace it, not just a bit better. There's also a lot of C/C++ code around, that in itself gives C/C++ a huge advantage over Rust for many applications.

  25. chromium trioxide by Anonymous Coward · · Score: 0

    rust in peace

    mother fuckers

  26. Just need... by Anonymous Coward · · Score: 0

    Seamonkey and Thunderbird ported to Palemoon, then a 6 month focused effort by the internet community sorting out the crapfest of C++ interfaces in gecko and plugging all the holes.

    1. Re:Just need... by Nunya666 · · Score: 1

      Just need ... Seamonkey and Thunderbird ported to Palemoon, then a 6 month focused effort by the internet community sorting out the crapfest of C++ interfaces in gecko and plugging all the holes.

      Thunderbird has already has been ported by the makers of Palemoon. It's called FossaMail

      I've been using PaleMoon in both Windows and Linux, and Fossamail in just Linux, ever since Mozilla "chromed" Firefox. Although I had to choose a few different add-ons in PM, most of my chosen FF add-ons work fine in PM.

  27. yet another nail in the coffin of a once great app by Anonymous Coward · · Score: 1

    Why does the incompetent bozo CEO still have a job?
    The company is swirling the drain and in a couple more years it will be flushed.

    So many stupid things: 1) monthly releases, 2) loss of user customization, 3) "features" nobody wants (pocket, sync, extension signing, etc), and 4) spyware "telemetry"

    One day they will use Mozilla as an example in business classes in college of how to run a company down the toilet.

  28. Re:Rust will be what replaces C/C++ by Khyber · · Score: 2

    " Not to mention that it has even taken much longer for big changes in C++ to be adopted than Rust has existed"

    And the reason for that is TESTING. That's right, the people that made C++ actually bothered to test this shit themselves, instead of just releasing shit to people to test because they're too fucking lazy to do it themselves, like 95% of programming languages made and released today.

    --
    Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
  29. Re: What the hell is "rust"? by Anonymous Coward · · Score: 1

    don't create any Bad Blood

  30. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    What the fuck is swift?
    Never heard of it.

  31. 99.9% perfection X 14 million lines = 14,000 flaws by raymorris · · Score: 4, Insightful

    Someone who has truly mastered their craft may perfection 99% of the time. Or not - Tom Brady completes 64% of his passes.

    Suppose the Firefox programmers were the most competent human beings to ever walk the earth, and got it right 99.99% of the time. With 14 million lines of code, they would have 14,000 flaws.

    On the other hand, if the Rust string handling functions don't permit buffer overflows, they don't permit buffer overflows - ever. You can't write a buffer overflow in a language that doesn't use buffers. Not only will there not *be* such errors, but you can *prove* there are no such errors, you can trust it.

    I don't have any opinion on Rust specifically, good or bad. I'm sure it has tradeoffs. The idea that you shouldn't use reliable tools because humans should just be perfect os silly.

  32. Re:Rust will be what replaces C/C++ by Desler · · Score: 1

    What am I supposed to see about Go?

  33. Re:Rust will be what replaces C/C++ by Desler · · Score: 1

    7 years is "overnight"?

  34. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    Go and Rust came onto the scene around the same time. Fast-forward to today and Go has become much more popular compared to Rust.[1] I believe the main reason for this is ease of use. Most people out there are code monkeys and Go is the easier language to pick up.

    I don't see Rust making a big dent in the market, for the same reasons Haskell or Erlang haven't, the learning curve is too steep.

    [1] Looking at some of the big projects/companies now using Go. https://en.wikipedia.org/wiki/...

  35. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    Then you are irrelevant. Let me guess, you are also a Linux user and a democrat.

  36. Re:What the hell is "rust"? by allo · · Score: 2, Insightful

    Mozilla is tackling the security of the OS, like buffer overflows, while the attackers are tackling the security of the web, like tracking users, using csrf and similiar stuff.
    Mozilla should start with tuning firefox for privacy. The typical problem with a buffer overflow is a crash. Even when they get user privileges, they won't find much interesting on most user's PCs. The interesting stuff happens in the Browser. The Webmail-Login is more valuable to the average user than the few files in his user profile. The Facebook Login worth more than the PC, which can be replaced by a tablet, when it becomes slow because of viruses.
    Of course this isn't true for every user, but for the majority. And mozilla should not stop fixing bugs and programming for security, but actually inventing a new programming language to fix potential issues arising from wrong usage of C is just overkill. Of course you can do it, if you have too much time, but then i point at the bugtracker with seven figure Bug-IDs.

  37. Frozen distros? by Anonymous Coward · · Score: 0

    "What about proper support for Linux distributions with long-term support, where the tools available on the distro are often frozen, and where newer Rust features might not be available?"

    Actually, I would say that this is up to the distros. If the distro wants to ship a new Firefox then it obviously isn't completely frozen, so the distro would have to first package Rust and then use it to build the next Firefox update.

  38. Re:99.9% perfection X 14 million lines = 14,000 fl by BlackHawk-666 · · Score: 1

    You've forgotten about the existence of iteration. Your assumption is they only have one chance ever to write a piece of code, and that it is never reviewed by another coder, or even the original coder after it's been written. You assume the code is never refactored, or passed through static check tools or other forms of analysis.

    --
    All those moments will be lost in time, like tears in rain.
  39. Re:99.9% perfection X 14 million lines = 14,000 fl by fahrbot-bot · · Score: 2

    The idea that you shouldn't use reliable tools because humans should just be perfect is silly.

    I'm not advocating that at all, but Rust will have flaws (and limitations) too. It's a trade off, maybe a good one. But saying we need to Rust because "human's haven't got the brains to write secure code" (from the original post) is dumb. And, sure, Rust may "improve the situation by enforcing things that humans get wrong", but people can learn to get those things right too so it's not the only option. Good tools can be helpful, but they almost always come with a price. In this case, more limited distribution. If that's a price Mozilla is willing to pay (and it seems they are) so be it. Note: They seem willing to pay (give up) a bunch of stuff to pursue whatever their long-term goals are.

    --
    It must have been something you assimilated. . . .
  40. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    Rust reeks of security through obscurity. Once companies big enough to pay worthwhile bug bounties start using it or organizations that interest the Russians, Israelis and Chinese, you'll see a ton of vulnerabilities getting exposed. If you've been around long enough, you realize "it's designed for security" or "using it is security best practices" means nothing. Look at the vulnerabilities in SSH. Oh yes, SSH is secure, so we're secure. Sure.

  41. Re:What the hell is "rust"? by HiThere · · Score: 1

    Rust *may* be more secure, I haven't used it enough to be sure. It's certainly a lot bigger pain to use, and it only supports *some* mechanisms for secure concurrency. If I wanted to use an actor model I'd need to drop into C, which sort of makes an end-run around their claims of security. Even in there dining philosophers tutorial there's a comment about having to reverse one of the conditions to avoid deadlock. I guess that you can claim deadlock isn't a security problem, but...

    OTOH, Swift is still tied heavily to Apple. I know it's been opened, so perhaps in a few years it will be a reasonable choice, but not yet.

    You wouldn't believe the amount of effort I've put in trying to avoid using C++, but I've been forced back to it despite everything (including it's horrible travesty of "how to handle unicode").

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  42. Re:Rust will be what replaces C/C++ by Hognoxious · · Score: 2

    I thought it went.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  43. ESR vs Rust by Jodka · · Score: 4, Informative

    That bizarre cathedral guy, Eric Raymond, is busy cleaning up NTP for security and recently evaluated Rust as a possible language for a complete re-write and found it deficient. His blog posts on that:

    "Rust vs. Go"
    Rust severely disappoints me
    "Rust and the limits of swarm design"

    --
    Ceci n'est pas une signature.
    1. Re:ESR vs Rust by geek · · Score: 1

      ESR of all people should know "Patches welcome"

    2. Re:ESR vs Rust by Anonymous Coward · · Score: 0

      It's hard to "patch" a flawed design.

    3. Re:ESR vs Rust by phantomfive · · Score: 1
      This ESR quote from your article is worth paying attention:

      "This gives me hope that the Rust of five years from now may become the mature and effective replacement for C that it is not yet."

      Rust is still a work in progress, don't expect it to be perfect for every use case.

      --
      "First they came for the slanderers and i said nothing."
    4. Re:ESR vs Rust by Anonymous Coward · · Score: 0

      It's hard to "patch" a flawed design.

      That is not at all how his articles came across.

    5. Re:ESR vs Rust by Billly+Gates · · Score: 1

      Dude Erlang man

      It's the real Rockstar language for you hipsters

  44. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    True, it wouldn't make sense to target a language supported only on OSX out of their other platforms. On the other hand, they can package LLVM for platforms like Windows XP. Remains to be seen how it will work on, for example, RHEL/CentOS 6 or even 7.

  45. Re:Rust will be what replaces C/C++ by HiThere · · Score: 1

    C and C++ had until recently no standardized concurrency or parallelism primitives. Most systems had non-standardized libraries. Even yet there aren't any standardized methods for handling multiple processes, only multiple threads. But I'm not going to claim any other language is any better.

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  46. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    Concurrency/parallelism primitives was available through extensions (like posix threads, locks etc.). Those were available because, as native languages, C and C++ can make use of (inline) assembly and anything supported by ISA. Try that on interpreted/JIT-ed language.

  47. My First Thought by Grady+Martin · · Score: 1

    "We normally don't go out of our way to make life harder for people maintaining Firefox ports--just plugins!"

  48. Re:Rust will be what replaces C/C++ by HiThere · · Score: 1

    The trouble with C/C++ is the requirement to not break old code. This prevents fixing basic problems. E.g., raw pointers should be eliminated, not just discouraged. Something should be done to allow generation of better error messages. The template system is horribly ugly. Etc.

    So sticking with lineal descendants of C/C++ requires embedding lots of really bad decisions into the language. OTOH, people inventing a new language tend to make excessive changes. It always (nearly always) makes sense for some use case, but it lacks the generality. Even D, which I much prefer as a language, lacks the generality of C/C++, to the extent that I'm currently being forced to pick up C++ after staying clear of it for over 2 decades because of various defects. (And I'm really feeling the strain of trying to pick it up. I'd almost rather pick up Ada.)

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  49. Madness by Anonymous Coward · · Score: 0

    What in the holy hell is this madness? Not supporting linux because it requires a bunch if programming dependencies? Fucking what?

    ~ $ eix -Ic dev-lang/ | wc -l
    16

    I have 16 programming languages installed right now, Rust would make it 17. Whoopdedingdongdoo.

    I have powered through using Netscape/Firefox for a long time now and use it as my main browser. But if they make linux a second class citizen, well, I'm out. And before you say "muh privacy" I'll be moving to https://github.com/Eloston/ungoogled-chromium/releases

  50. Re:pfff who cares firefox sucks by HiThere · · Score: 1

    Last time I tried chromium it couldn't properly handle my bookmarks. So far FireFox can, though they keep trying to get rid of them.

    --

    I think we've pushed this "anyone can grow up to be president" thing too far.
  51. Re:What the hell is "rust"? by Alan+Shutko · · Score: 3, Insightful

    The Accidental Tech Podcast had an interview with Chris Lattner where he discussed the future of Swift as a systems language and compared it to Rust. Rust has a very upfront memory ownership model that requires programmers to be explicit about memory management. This allows Rust to have great performance and allows the compiler to ensure memory is used safely that is not an option with C.

    With Swift, either you pretty much don't think about memory (it uses Automatic Reference Counting so you only need to care about cycles), or you need to go down to C-style memory semantics with the various Unsafe constructions. There are cases where you could get much better performance because the programmer knows the lifecycle of the objects being used, but that can't currently be expressed in Swift. It can be expressed in Rust.

    To be a good systems programming language, Chris said that Swift will need to create a memory ownership model (and mentioned Rust as having ideas that might apply). He would like that ownership model to be opt-in for specific pieces of your code that require it: most people could use ARC, while people that need performance in a specific piece could be more detailed about the memory management. It's on his list of things that Swift will acquire over the years so it can achieve world domination.

    So there are really pretty good reasons that Mozilla put together Rust. The browser is probably the most widely exposed attack surface right now, and the history of buffer overloads means there needed to be a safer way to code.

  52. Re:yet another nail in the coffin of a once great by Anonymous Coward · · Score: 0

    Extension signing is actually necessary to improve security, just like binary signing on every consumer system these days. Telemetry can be a very useful resource for devs, and being open source means that people can know exactly what is being sent to Mozilla ; also, it's possible to disable it completely.

    Agreed with the rest.

  53. Re:99.9% perfection X 14 million lines = 14,000 fl by flux · · Score: 2

    And you imply that when code is revised, flaws are always removed and never added?

  54. Re:pfff who cares firefox sucks by jaklode · · Score: 1

    Chrome with 2 tabs (feedly and slashdot) is currently at 1.3 GB. Granted, I have a few extensions installed, but it's still ridiculous. Chrome was really lean a few years ago, but these days it eats memory like candy.

  55. Re: LTS distros by execthis · · Score: 1

    What about proper support for Linux distributions with long-term support, where the tools available on the distro are often frozen, and where newer Rust features might not be available?

    For a really "L" TS distro like Debian it shouldn't be an issue because the vast majority of deployments are server instances, not desktops. For less "L" TS distros like Ubuntu, they are not so old (e.g. the current 16.04 LTS Ubuntu is much newer than Debian Jessie), and there is always the possibility to just add a custom archive to deal with it. In fact if you install Opera or Vivaldi from the official .deb's they distrubute, that's exactly what they do: They set up their own PPA.

  56. Dead by Anonymous Coward · · Score: 0

    At this point, Firefox is on a downward spiral down to 11% of the market. The only reason it is still around is because it was the browser that replaced IE which isn't really saying much. Also, it is the browser used for Tor. The only way Firefox will make a comeback is if Google Chrome pisses everybody off which it may.

  57. Rust by Anonymous Coward · · Score: 0

    Why would anyone name a programming language "Rust"?

  58. Re:99.9% perfection X 14 million lines = 14,000 fl by wonkey_monkey · · Score: 1

    Someone who has truly mastered their craft may perfection 99% of the time.

    May what perfection?

    --
    systemd is Roko's Basilisk.
  59. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    Look, if you don't have any idea what's going on with new languages, then stop acting like you do. Unfounded opinions are at best useless, and that's before you start calling people out for nothing at all. Next you'll be calling people "pinheads" or something for using Rust.

  60. require Rust to compile successfully, by cheekyboy · · Score: 2

    Sounds like its only used for COMPILING, not runtime.

    So wtf, is the point of rust? I am sure perl would work equally as well.

    --
    Liberty freedom are no1, not dicks in suits.
    1. Re:require Rust to compile successfully, by Anonymous Coward · · Score: 0

      A program that at compile time is guaranteed to be free of buffer overruns won't have them at runtime either.

  61. 90,000 examples say they don't by raymorris · · Score: 1

    > "human's haven't got the brains to write secure code" (from the original post) is dumb.

    A posteriori, they don't. We tried that and in my database I have 90,000 examples of their failure to do so.

  62. You can optimize, which you young ones are shit at by cheekyboy · · Score: 1, Offtopic

    Yeah, so how many wankers use a 45meg library to read a 1kb XML config file, when you could have just made a simpler ascii format and wrote the code your self. Or your lazy coders who use sqllite for tiny configs, as you cant code for shit to store csv config files.

    No wonder 2gb android with quadcores runs so shit compared to a 500mhz windowsXp box from year 2001.

    --
    Liberty freedom are no1, not dicks in suits.
  63. You volunteering to find the 14,000 flaws? by raymorris · · Score: 1

    Firefox is open source, are you volunteering to examine the 14 million lines, to find the 14,000+, so they can be iterated out?

    1. Re:You volunteering to find the 14,000 flaws? by BlackHawk-666 · · Score: 1

      I am volunteering to find the ones in the code I have written and open sourced. Is that good enough for you?

      --
      All those moments will be lost in time, like tears in rain.
  64. Re:Rust will be what replaces C/C++ by Anonymous Coward · · Score: 0

    Which retard modded the parent as a troll?!
    Clearly someone who doesn't know the failings of C++ in enterprise environments and the massive benefits of Rust!

  65. Re:99.9% perfection X 14 million lines = 14,000 fl by Anonymous Coward · · Score: 0

    Yes, that perfection indeed.

  66. Re:You can optimize, which you young ones are shit by Anonymous Coward · · Score: 0

    Yeah, so how many wankers use a 45meg library to read a 1kb XML config file, when you could have just made a simpler ascii format and wrote the code your self. Or your lazy coders who use sqllite for tiny configs, as you cant code for shit to store csv config files.

    No wonder 2gb android with quadcores runs so shit compared to a 500mhz windowsXp box from year 2001.

    Meh, coding a basic XML parser isn't that hard. I've done it, and it was fast, though in hindsight I should have just somehow got my company to approve a stock one, though it might have taken weeks to months, so it may have been a toss up. I was still using a schema verifier which came with another package, just not its xml parser which was crap. FWIW, you can probably load XML these days at 100MB/s or faster if you really want to go crazy and play the optimization game. I might have to go back and do that with an upcoming project, but probably not. C#s parser is pretty good.

    Would I possibly include a library to read a 1kb XML file these days? Probably. It is usually better to code expecting growth, and it is just less code to debug. The main thing is not the number of DLLs you have floating around, but rather how hard is it for the end user to get going, and to get new versions going. (You're presumably not spending much time debugging stable versions of libraries.)

    Another variation that seems more and more worthwhile these days is just using an sqlite database. This is particularly true if your end user has no need to edit any data. Of course that would be kinda ridiculous for a 1kb file, but I'd still argue that XML is not overkill, since it allows for growth and structure, and from what I've seen just the benefits of having decent schema checking alone make it worth it...

  67. Re: You can optimize, which you young ones are shi by dunkelfalke · · Score: 1

    Why use computers in first place? An abacus is good enough for calculations and doesn't need all that newfangled electricity.

    --
    "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
  68. Re:You can optimize, which you young ones are shit by Dahamma · · Score: 1

    First, 45MB library to parse XML is a stupid false (I really wanted to say "stupid fucking") argument. I personally hate XML but it's trivially easy to use at this point.
    Second, who the fuck cares is it WAS 45MB (which it wasn't) on the server side if it solves a generic problem like parsing all XML.
    Third, what's that "ASCII format"? You want to define your own format, then? And that's somehow more maintainable than XML?

    And addendum - I don't think Sqlite is needed for most projects, but I have used it and if it is, it's a really small library that uses a tiny (and appropriate) amount of RAM and storage.

  69. Oblig. anti-Moz diatribe by enrique556 · · Score: 1

    When oh when will the Mo$illacrap dictators up in their high castles stop wasting so much time and resources on

    1) Spending HOURS designing & mulling over new logos
    2) writing HUNDREDS of lines of javascript for features nobody wants
    3) Maintainting a slow, leaky, outdated old Nut$scrape codebase that is not based on fresh, new KDE Konqueror codebase from 1990s like everyone else

    . and when oh when will they realise that what's really needed is a new, secure multi-threaded / multi-process browser.

    Oh wait.

  70. Re: What the hell is "rust"? by Anonymous Coward · · Score: 0

    I think you meant SSL. But otherwise correct.

  71. Re:Rust will be what replaces C/C++ by phantomfive · · Score: 1

    E.g., raw pointers should be eliminated, not just discouraged.

    No thankyou, I'd rather you die in a fire than modify the C language.
    Nothing personal, I just don't like your idea :)

    I'm currently being forced to pick up C++ after staying clear of it for over 2 decades because of various defects.

    I'm sorry, it's changed a lot.

    --
    "First they came for the slanderers and i said nothing."
  72. Re:What the hell is "rust"? by XparXnoiaX · · Score: 1

    betting on the future of hostile internet - and users actually giving a shit about security.

    The first is certain, the second is doubtful.

    --
    Irresponsible disclosure is responsible
  73. Re: You can optimize, which you young ones are shi by Anonymous Coward · · Score: 0

    By "basic" you probably mean "works for the few xml features we actually use". But free and reliable parsers are available , why would you waste your time writing your own?

  74. Re:Rust will be what replaces C/C++ by beelsebob · · Score: 1

    Concurrency/parallelism primitives was available through extensions (like posix threads, locks etc.). Those were available because, as native languages, C and C++ can make use of (inline) assembly and anything supported by ISA. Try that on interpreted/JIT-ed language.

    Yes - the point I'm making is that these are all equally available in Swift. All C APIs are available without any modification in Swift.

  75. Re:99.9% perfection X 14 million lines = 14,000 fl by Anonymous Coward · · Score: 0

    Every single line of code is a potential flaw? What type of work do you do exactly? I know it's not programming.

  76. Re:99.9% perfection X 14 million lines = 14,000 fl by DeVilla · · Score: 1

    I wouldn't trust Rust. It's written by those same error prone programmers who haven't got the brains to write secure code. How many lines of code is in the Rust compiler & library. How much of that must be flawed? That'll get passed on to every program that uses it. We need to stop using buggy software written by mentally deficient programmers to write security critical software. It's the only way to be sure.

  77. now that i cant get more free gb its dead by cheekyboy · · Score: 1

    I leave some shit on there as backups, like isos, or
    docs.

    But since its reached its limit, i rarely use it any more, now that google gives away 100gb+ if you buy some phone models.

    --
    Liberty freedom are no1, not dicks in suits.
  78. Re:99.9% perfection X 14 million lines = 14,000 fl by roca · · Score: 1

    No-one, apart from maybe Dan Bernstein, is good enough to reliably write bug-free code. The hubris that says "I am!" is the core reason why we have such enormous security problems.

    > How many lines of code is in the Rust compiler & library. How much of that must be flawed? That'll get passed on to every program that uses it.

    No, that's not how it works.

    A bug in the compiler only matters if it was triggered during the build that produced your binary *and* the build succeeds *and* the results pass your test suite. Unless your code is quite unlike anyone else's code, you will hit this a lot less than bugs in your own code.

    A bug in Rust's standard library can affect a lot of programs, but much of Rust's standard library is written in safe Rust so gets the same safety guarantees as regular Rust code. And of course the standard library gets a lot more testing and inspection than your own Rust program.

    The bigger picture is that formal verification technology is advancing so that in time, we'll be able to verify that a build worked correctly (i.e. the generated code preserves the safety properties of the Rust code), and we'll be able to write proofs for most of the unsafe parts of the Rust standard library that they also preserve safety properties.

  79. Re:yet another nail in the coffin of a once great by Anonymous Coward · · Score: 0

    5) rewriting existing codebase with some kitchen sink programming language nobody outside of their own company uses.

    Are they doing these stupidities just to keep their employers busy? Or are they really trying to drive away their users and now also the open source developers, as Rust is equally popular language as Basic v2.0.

  80. Re:What the hell is "rust"? by roca · · Score: 1

    Swift lacks many of Rust's key features. In particular, it doesn't ensure data-race-freedom like Rust does. You're also stuck with using reference counting for all dynamic memory management, and atomic ops for your refcounts at that. Traversing a read-only dynamic structure? Enjoy atomic addref/release all the way along.

  81. Re:Rust will be what replaces C/C++ by roca · · Score: 1

    Swift can't guarantee data-race freedom. Rust does. So Rust has data-parallelism libraries like rayon that you can use that keep you out of trouble.

    On the flip side, Swift requires thread-safe refcounting for all dynamic memory management, which is horrible for systems programming.

  82. Re:99.9% perfection X 14 million lines = 14,000 fl by Anonymous Coward · · Score: 0

    You can't write a buffer overflow in a language that doesn't use buffers. Not only will there not *be* such errors, but you can *prove* there are no such errors, you can trust it.

    That's a very naive way of thinking. The language may not support buffers, but the implementation sure as hell will.

    This is like those (JavaScript, Flash, Google NaCl, etc) security sandboxes that are supposedly "proven" to contain any VM instructions running inside, but in practice the sandbox implementation turns out to have implementation flaws that are exploitable from within the sandbox.

    Yes, it may improve code quality, and reduce the number of exploits. But blindly trusting that the language will keep you safe security-wise, is a sure way to get pwned.

  83. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    but then i point at the bugtracker with seven figure Bug-IDs.

    They require a bug ID for every commit.

    So basically the amount of commits is what the 'seven figures of bug IDs' is counting.

  84. Re:99.9% perfection X 14 million lines = 14,000 fl by BlackHawk-666 · · Score: 1

    Since we have the word "regression" no, I am not implying that. I am stating that when reviewed there is a decent chance of errors being found and that code will tend towards less errors in the absence of new features. It's unreasonable to expect that code refactors will never add new bugs, but it is perfectly reasonable to assume that they will trend towards less bugs.

    --
    All those moments will be lost in time, like tears in rain.
  85. Re:What the hell is "rust"? by allo · · Score: 1

    Nope. You may be talking about svn (are they using svn?), but i am talking about bugzilla.mozilla.org

  86. Re:99.9% perfection X 14 million lines = 14,000 fl by Anonymous Coward · · Score: 0

    This presumes something that they shouldn't. You can't get RUST to be perfect, even if you make it "enforce the rules"- it's a fallacy and a folly to be brutally blunt. It's another abject fail in a space they've been trying to find "answers" and failing over and over again for DECADES now.

  87. Re:99.9% perfection X 14 million lines = 14,000 fl by Eravnrekaree · · Score: 1

    Rust isnt the only language with this feature, Perl has had it for much longer, along with tools like Tainting.

  88. Re:What the hell is "rust"? by Eravnrekaree · · Score: 1

    Why not Perl, Python or Ruby? These languages have had the same features and have been around even longer.

  89. Re:What the hell is "rust"? by Anonymous Coward · · Score: 0

    Yeeeeah, buffer overloads are bad I guess.

  90. Doctor DJB, PhD is gonna be pissed! Ego mostly by raymorris · · Score: 1

    Oh shit, you called him DAN Bernstein! He's going to be so pissed if he sees that. You didn't call him DOCTOR DANIEL J Bernstein, PhD. Prepare for the wrath of his almighty ego if he sees that!

    I've worked with DJB alot in IETF and I think I most IETF members agree the unusual things about DJB are his ego and his contrarianism. Always doing the opposite of well-established best practices doesn't make him smarter than everyone else, it just means he re-invents all the same mistakes that most of us learned to avoid 30 years ago.

  91. Re:What the hell is "rust"? by Aaron+B+Lingwood · · Score: 1

    Why not Perl, Python or Ruby? These languages have had the same features and have been around even longer.

    Those languages have indeed been around longer, but they don't have the same features. For starters, neither meet conditions b, c, or d. Neither of those languages are capable of system programming or have a secure web engine focus. Perl, and increasingly Ruby and Python have a strong presence for web apps but to the best of my knowledge have never been used (for good reason) for a web browser or web layout engine.

    Additionally, none allow concurrent computing. With modern internet connections, the bottleneck is often at rendering. Concurrent computing should speed this up by at least an order of magnitude.

    Servo, a prototype, has been in testing for some time with very promising results. This project is also headed up by Mozilla.

    --
    [Rent This Space]
  92. Re:Rust will be what replaces C/C++ by beelsebob · · Score: 1

    Swift can guarantee data-race freedom, in exactly the same way that C and C++ can - by using the normal threading and locking primitives you get from the OS's libraries. It even ships with a more user friendly library for doing this (GCD) than most OSes provide.

    And swift absolutely does not require thread safe ref counting. Swift has both value types and reference types. Value types are passed by value (what a surprise), and include non-ref-counted pointer types. All you need do to avoid ref counting is to not use the word "class" in your program, and instead stick to "struct".

    Neither of these are impediments to system programming.

  93. Re:Rust will be what replaces C/C++ by roca · · Score: 1

    You are confused about the meaning of "guarantee" here. With Rust, if you don't write the keyword "unsafe" then code that triggers data races will not compile. With C++ and Swift, it will.

    Safe Swift requires thread-safe ref-counting of heap-allocated objects. That is unacceptable.

  94. Re:You can optimize, which you young ones are shit by dddux · · Score: 1

    Yep, that 's what I'm talking about.

    --
    "It is no measure of health to be well adjusted to a profoundly sick society." - Jiddu Krishnamurti
  95. Depedencies == programmer incompetence by Anonymous Coward · · Score: 0

    This is a massive and dangerous disease within open source circles - deep layers of dependecies. One package depends on three others, each of which has a dozen dependencies, each of which has a bunch of dependencies, each if which has more depedencies, etc.

    If you did not write your code, then you do not understand your code and your code is not trustworthy nor maintainable.

    Sticking together a hundred other bits of code written by people you do not know and applying the coding equivalent of chewing gum, bailing wire, and duct tape is not programming at all - it's on-par with being a script kiddie, and when some prject your "program" is dependent upon goes away you may be left unable to fix/maintain the thing you have pretended was your program.

    This sort of garbage programming did not generally exist before the internet. Now lazy people think nothing of using enormous piles of code they know nothing about but were able to find with a quick googling and insert into critical applications - and we have all sorts of buggy code and code with huge security problems.

  96. Re:pfff who cares firefox sucks by Anonymous Coward · · Score: 0

    Embrace, extend, extinguish.
    Now that they have a large market share they can afford to add more features to enhance their own services.

  97. Re:99.9% perfection X 14 million lines = 14,000 fl by Anonymous Coward · · Score: 0

    Who doesn't like a good tool on traint

  98. It's risky, but some risks are worthwhile. by Larsen+E+Whipsnade · · Score: 1

    Firefox is kind of dying for a lot of reasons. Why not use it as a guinea pig?

    This can be a great reality check for Rust. Find and fix the flaws in the language by trying to use it for something real and something big. There's a chance that a better language and a better browser will both emerge from this in parallel.

  99. ESR by Tenebrousedge · · Score: 1

    That's all very well and good, and I credit Mr. Raymond for his accomplishments, but I'm afraid that he has a sufficiently bad reputation for making crazy statements that I am unwilling to take his opinion on any matter, That may not be fair to him as a technical expert, but he has earned distrust for his far-too-numerous non-technical opinions and general batshit craziness. It's not my job necessarily to issue proclamations for the groupthink here, but I am pretty sure that I'm not alone in feeling like this, and I suggest that you might want to put in some sort of explicit disclaimer or endorsement, to the effect that, "this is one of the times when ESR is actually worth listening to." It's a shame to have to say something like this. There are things he has written, however, that are crazy enough that I wish I could unread them. I am of course merely offering this suggestion on the basis that you might not be aware of his reputation.

    --
    Those who advocate genocide deserve every protection afforded by law, and none afforded by common human decency.