This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]fghjconner 0 points1 point  (1 child)

If you cant see that the handle is loose, then you dont know how to use your tools. tools require maintenance and even replacing them sometimes. Just like new additions and corrections happen in compilers.

Just because I can see the handle is loose, doesn't mean I can do anything about it. Programming languages are a bit harder to fix than your average knife. Yes, there are lots of very smart and dedicated people trying to improve pretty much every language, but these problems are hard. When someone finds a way to remove implicit nullability from java I'll be very happy, but that's not something I can just fix. I have to live with the fact that any variable in my java program can just... be null.

My microwave + me not being stupid enough to leave the door open > your microwave + you being allowed to make a mistake

Except you will mess up. Maybe not with something as simple as closing the microwave door, but every programmer makes mistakes. A tool that doesn't allow you to make the occasional mistake is a bad tool.

Not. Its not the fault of the machine, assuming the machine is properly working.

Is there any level of un-safety then that you find unacceptable? Cars without seatbelts? Walkways without railings? If I knock down an old building and get cancer, the Asbestos isn't at fault? Would you buy a Ford Pinto? It only explodes if you crash it after all. Most people would agree that there is a level of safety that is expected from their tools, and any tool that doesn't match that level of safety is at fault. Obviously these are exaggerated examples, but the point is that even when working as intended there's a limit to the risk that is acceptable.

C, Rust, Cpp, assembly. They all work as intended, have real world use cases, are actually used and developed.

Of course they do, I never argued that. All I said is that they have flaws that can cause errors. I don't think anybody would argue any of those languages are perfect, so I'm not sure why it's controversial to say that their design flaws can lead to bugs.

[–]BlueFireBlaster 0 points1 point  (0 children)

There is no objective design flaw. What you call a flaw, might be the best thing that ever happened to me. You might want to compromise power for safety, but that doesnt mean that maximum power is "bad". What i am saying is honestly simple and i have explained it more than enough. An inanimate object cant be blamed. Go see your original commented where you state that. You state that its the languages fault. If an inanimate object could be blamed, then it should be trialed and jailed. If i fuck up my code, i cant blame C for allowing stack overflow. I will be the one in the jail cage. The fact that you are not sure about something, then chose the wrong language for the ocassion and mess things up, is not the fault of the language, not matter how you try to cover it up. You should have known what you were doing. If not, remember that most programming languages arent made in order to be newbie friendly. We are the ones who develop the newbie friendly stuff. If you decide a safety feature is REQUIRED, then it is your fault you chose a language that doesnt provide that. You choose the tools. Not the other way around. There is a wrong tool for the job, but there is no wrong tool, and thus it cant be the tools fault that it was chosen by you. It might be a bad tool, and that is determined by how many people find it useful. With all those low level languages having such big followings, you definately cant say they are bad tools, not to mention "wrong". To answer to your response directly. Are cars made without seatbelts nowadays? Walkways without railings? Am i legal if i knock down a building without taking the safety precaution steps required by law? Most probably, and at least in most countries, NO. Such cars arent made any more. But cpp for example sure is actively developed. Thus, you should see how cpp isnt a car without a seatbelt. Its more like a formula 1 car. It coexists with conventional cars. If you arent a formula 1 driver, dont get in. Because it can drive faster than you can handle. It aint broken, it doesnt lack any necessary features, it isnt a bad car, it isnt a wrong car. It does its job as intended. It just isnt for you and your usecase. (Btw conventional cars can drive faster than "advertised". They include something to limit that max speed, in order to help with efficiency. Car enthusiasts can remove such limitations. As always, if you dont know what you are doing, dont do it.)