No, only broken when used out of specification. RNGs have a lot of uses, not all of them related to cryptography. Generators suited for cryptography could be extremely unsuitable for other uses. Take for example the ISO-C random function. It is specified for reproducibility. There is even a non-mandatory recommendation to because they saw a use for a generator that behaved the same way on a variety of systems, for example when implementing sprite behavior in games.
If you implement cryptography and uses a RNG that isn't specified for it then it is your code that is broken. It's like using a CRC designed for sequential data when communicating over a framed protocol like RS485. It isn't the one implementing the CRC that is to blame, it is the one who applied it incorrectly.
..Quoting AC rated at 0 as the only reasonable response to this thread.. (Try 2 haha, oops)
We are using JavaScript for performance critical code and I can confirm that it is the most buggiest, immature technology by far that I have ever seen in my 30 years old carrier. Every second month there is a new browser version for each browser, each with a different set of new critical bugs. We even find JIT compiler bugs regularly!
I simply do not understand why they do not take the free, open source, mature, very fast Java virtual machine, and let the browsers run Java bytecode directly, and let software engineers chose any programming language which best suits their task.
Not to come across sounding like "you're doing it wrong," but I found I had a fairly similar experience when I needed to produce some solid javascript (rather intensive real-time media/graphics in mobile web). It wasn't until I realized I was trying to hammer a screw (applying my knowledge of c/c++/Java/C# to my JavaScript code) that my experiences turned around. In short, a relatively small amount of your code should be exposed to browser specific bugs, to the point where most of it can be tested without any browser at all. This makes the browser bugs easy to plan for, and code around as if routine (the unstable bits are fairly well known at this point, I would say). I would suggest getting you some static typing with either TypeScript or the closure complier (I have only had experience with the later, to great results). Then get you some JavaScript Design Patterns, and some Functional JavaScript, and you are all set. Cheers and good luck!
Do you have some realistic examples?
Also, approach-ability by "random" developers sometimes trumps something that's more flexible but requires more experience or a learning curve. Staff changes such that we often have to target "middle brow" abstractions.
Sure, since you asked... I find that functional programming is better for processing "data," while OOP is better for processing/handling "events." I also think there is a line that can be crossed where functional programming simply becomes a clever form of obfuscation, but overall, there is a lot of value in simple, repeatable, and easy to use constructs, which may be composed together to express the "idea" behind the code in fewer lines. I would say that readability and maintainability ranks #1 in my book of priorities, and functional programming helps very well with this in a lot of cases. Underscorejs is a good example of FP in javascript, if you're unfamiliar.
In my line work, the coder maintenance effort is usually more of a factor than client-side-browser speed/memory, or even server side for that matter. Whether (good) OOP is inherently more resource intensive than anonymous function prototypes remains to be solidly proven. It may depend on coding style.
As far "simpler to parse", if that were the main factor, we'd all be using Lisp. Being human-friendly and being machine-friendly are not necessarily the same thing. Machines are generally cheaper than humans (code maintainers) such that economics often favors being human-friendly over machine-friendly (speed/memory). What I personally like is another matter; I'm paid to make my employer's org more efficient. (The database is usually the bottleneck, not the application, I would note.)
In short, I question how you are weighing the factors being compared. I agree that different niches emphasize different factors, but in general an application language (or usage) should favor humans over machines when you look at the total economics involved. Unfortunately, JavaScript is often being used for application development AND systems software (OS-like services and low-level libraries). One-language-fits-all is a tall order, and probably in impossible order if we want to optimize the language design for its actual usage patterns.
I shared this same opinion, but have found protipical inheritance (accompanied with static typing ala closure compiler) to be quite nice. In fact, it has made me more aware of how/when OOP constructs can provid actual value above a more functional approach (hint: it's not as often as you may think)
The 'crimes' in TX are bullshit the ones in WA were not (though the stop may have been bullshit). You knew you weren't supposed to be driving. WA has good public transportation in a lot of places and many areas are walker or biker friendly. Getting rid of a car will save you a lot of money. I didn't get one until I was 30. I wish you luck in your lawsuit against the Municipal Services Bureau and TX and thank you for reaffirming my desire to never move to TX.
I got by just fine in Seattle. It wasn't until I had to move to the heavily conservative Hanford area (Pasco) that I ended up purchasing a car in cash, that I still to this day drive it only out of necessity. While I understand the public need for insurance and licensing, I have never been in a wreck, or received any kind of moving violation since the age of 16. I consider it my free right of transportation, in the pursuit of life, liberty, and happiness. I did not show up to court in WA, and do not plan to pay a dime on that ticket. Eventually, it will catch up to me, and I will be physically restrained, but in front of a judge, and told I can either pay up the cash or sit it out in jail for credit paid out at $x per day on my fine. When that day comes, I will choose to sit it out, just as I did in TX.
Let them start with the double jeopardy they call the "Texas driver responsibility program". Pay a ticket, then also an exorbitant surcharge to the "Municipal Services Bureau" which is a private company. If you don't pay the surcharge, the private company suspends your license until you do... You pay the surcharge just for getting the ticket, whether the ticket was dismissed or not.
Like I said double jeopardy.
I can't get my WA drivers licence because those scumbags have it blocked for some tickets I got in ~2002 (I moved away from TX shortly after highschool). All my actual fines (my "debt to society") have been paid. This bastard ass private corp has my license for Ransome to the tune of $2,500 in "surcharges" (the exact term listed on the paperwork I got).
"When people are least sure, they are often most dogmatic." -- John Kenneth Galbraith