Memory Leaks Suck
-
Hel wrote: At least with C++ we know WHAT memory leaks are! How about: At least with C++ we have memory leaks! :laugh: :laugh:
-
benjymous wrote: 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing Yes! That's more like a C++ cowboy. I have no argument with people who have so much confidence in them. But don't forget, Mr. Tim Smith isn't so confident, he would rather trust Purify to find all the leaks.
That's just silly. Which would you trust more: Developer one who says "Yes, my code hasn't got any memory leaks. I know because I'm a good programmer, and I wouldn't make mistakes like that" or Developer two who says "Yes, my code hasn't got any memory leaks, because I rigourously tested it with a wide range of tools" -- Help me! I'm turning into a grapefruit!
-
Black Cat wrote: Hmm, too illogical for a C++ programmer Nah, that's correct. Would "We are able to know where the memory leaks are" be better? To remember: to be attentive to Mr/Miss/Mrs Black Cat logic and expression ;P
Angels banished from heaven have no choice but to become demons Cowboy Bebop
-
benjymous wrote: 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing Yes! That's more like a C++ cowboy. I have no argument with people who have so much confidence in them. But don't forget, Mr. Tim Smith isn't so confident, he would rather trust Purify to find all the leaks.
That's not anything like what he said, nor even implied. He said he uses Purify to find memory leaks that would otherwise may well have taken him days to locate on his own. That's not a lack of confidence, that's using the right tool for the right job. Stop saying stupid shit... ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
KaЯl wrote: Would "We are able to know where the memory leaks are" be better? Better than what? Better than "Having no memory leak at all"? ;)
"Having no memory leak at all" or "Having no memory leak visible, hoping the OS will clean" ? ;P When an application becomes more complex than "Hello Word", Garbage collectors suck !
Angels banished from heaven have no choice but to become demons Cowboy Bebop
-
Looks like I can just call Server.Redirect("Mr. Tim Smith") and let you two C++ programmers talk it over. ;)
What is there to discuss - I'm just agreeing with him that using extra tools to help bulletproof your software and remove bugs is a good thing, rather than a sign of a bad programmer. Ok, in an ideal world programmers would write code that worked flawlessly first time, but we know that that isn't going to happen -- Help me! I'm turning into a grapefruit!
-
That's just silly. Which would you trust more: Developer one who says "Yes, my code hasn't got any memory leaks. I know because I'm a good programmer, and I wouldn't make mistakes like that" or Developer two who says "Yes, my code hasn't got any memory leaks, because I rigourously tested it with a wide range of tools" -- Help me! I'm turning into a grapefruit!
-
Looks like I can just call Server.Redirect("Mr. Tim Smith") and let you two C++ programmers talk it over. ;)
You might think you're funny, but I, for one, wish you would stop acting like a dick. To the CP old-timers - yeah I know.... "pot = kettle = black;" ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
That's not anything like what he said, nor even implied. He said he uses Purify to find memory leaks that would otherwise may well have taken him days to locate on his own. That's not a lack of confidence, that's using the right tool for the right job. Stop saying stupid shit... ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
John Simmons / outlaw programmer wrote: He said he uses Purify to find memory leaks that would otherwise may well have taken him days to locate on his own. That's not a lack of confidence, that's using the right tool for the right job. So you agree that C++ alone is not the right tool, and you have to add things like Purify when there are too many hard to track memory leaks. However, as soon as I mention .NET your eyes are turning red like a texas bull. No one is saying .NET is perfect here, if you calm down and read things carefully. .NET, VB, C++, and Java are just tools to me, and I choose them according to the job at hand. So there you go, we may be in complete agreement. ;) John Simmons / outlaw programmer wrote: Stop saying stupid shit... You have been providing some of the most entertaining posts to CodeProject, but I am really disappointed this time, the staggering layers of stupidty in your statement make it a work of art on so many levels. Do I get the honor of being quoted in your signature? Please, please! ;P
-
John Simmons / outlaw programmer wrote: Memory Leaks Suck Is any of the following looking more attractive to you today? .NET, Java, VB ;P
Nope, you can have memory leaks in all of those as well. In fact, I just recently saw a vendor's demo for a spiffy diagnostic tool used to locate and fix memory leaks in Java. GC is useful, but it's not a silver bullet, and the sooner people realize that the better. William E. Kempf
-
John Simmons / outlaw programmer wrote: He said he uses Purify to find memory leaks that would otherwise may well have taken him days to locate on his own. That's not a lack of confidence, that's using the right tool for the right job. So you agree that C++ alone is not the right tool, and you have to add things like Purify when there are too many hard to track memory leaks. However, as soon as I mention .NET your eyes are turning red like a texas bull. No one is saying .NET is perfect here, if you calm down and read things carefully. .NET, VB, C++, and Java are just tools to me, and I choose them according to the job at hand. So there you go, we may be in complete agreement. ;) John Simmons / outlaw programmer wrote: Stop saying stupid shit... You have been providing some of the most entertaining posts to CodeProject, but I am really disappointed this time, the staggering layers of stupidty in your statement make it a work of art on so many levels. Do I get the honor of being quoted in your signature? Please, please! ;P
You seem to be misguided on several counts, however: 1) It's not that difficult to manage memory correctly in C++ using tools like boost::shared_ptr. 2) There are full GC systems available for C++, if you prefer. 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. You can only "choose them according to the job at hand" if you actually understand the pros and cons of the choices. Sounds like you don't. Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf
-
Tim Smith wrote: Too good to be useful? Don't be silly. They have saved me tons of time. So, you are in favor of letting the technolog handle the memory-leak problem, right? Now, comparing the following two options: 1. Write a C++ app that has a lot of memory leaks, and then buy a tool like Purify to find the leaks and plug them. 2. Write a .NET app that is impossible to have a memory leak. Nah, only an idiot will choose 2, it's too damn easy! ;P
By using that logic all cars on the road should be able to go only 60 MPH so there can be no speeding. Race cars should be limited to 75 as to eliminate high speed accidents. Give me all the rope and if I hang myself its my fault. Training wheels are for babies. Richard I must have liberty Withal, as large a charter as the wind, To blow on whom I please. As You Like It. Act ii. Sc. 7. William Shakespeare
-
John Simmons / outlaw programmer wrote: He said he uses Purify to find memory leaks that would otherwise may well have taken him days to locate on his own. That's not a lack of confidence, that's using the right tool for the right job. So you agree that C++ alone is not the right tool, and you have to add things like Purify when there are too many hard to track memory leaks. However, as soon as I mention .NET your eyes are turning red like a texas bull. No one is saying .NET is perfect here, if you calm down and read things carefully. .NET, VB, C++, and Java are just tools to me, and I choose them according to the job at hand. So there you go, we may be in complete agreement. ;) John Simmons / outlaw programmer wrote: Stop saying stupid shit... You have been providing some of the most entertaining posts to CodeProject, but I am really disappointed this time, the staggering layers of stupidty in your statement make it a work of art on so many levels. Do I get the honor of being quoted in your signature? Please, please! ;P
Black Cat wrote: So you agree that C++ alone is not the right tool, and you have to add things like Purify when there are too many hard to track memory leaks. No, I didn't say that, and I most certainly don't agree with that. C++ is the right tool for the job, but since you insist on being pedantic, the debugger is the tool we're talking about - NOT the compiler nor the language. Given that no programmer has EVER written bug-free code the first time, Purify is a good tool for hunting down nasty memory leaks that are not easily found with the *debugger*. In my particular case, the leak I was looking for was right there in front of me, but being completely familiar with the code, I overlooked the obvious possibilities. Again, this wasn't the fault of the compiler, nor even the debugger, but was me making assumptions. Black Cat wrote: However, as soon as I mention .NET your eyes are turning red like a texas bull. You want Microsoft to lead you around by the nose, be my guest, but suggesting to a C++ programmer that using a tool that hides memory leaks from him or makes too many assumptions about what he really wants to do is just a crock of horse shit. ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
-
You seem to be misguided on several counts, however: 1) It's not that difficult to manage memory correctly in C++ using tools like boost::shared_ptr. 2) There are full GC systems available for C++, if you prefer. 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. You can only "choose them according to the job at hand" if you actually understand the pros and cons of the choices. Sounds like you don't. Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf
William E. Kempf wrote: You seem to be misguided on several counts, however: 1) It's not that difficult to manage memory correctly in C++ using tools like boost::shared_ptr. 2) There are full GC systems available for C++, if you prefer. I carefully checked all of my posts in this thread and can't find a word that implies the "misguidance" you mentioned here. Some of my comments are just jokes, they may not be funny, but they don't say anything that is not there. William E. Kempf wrote: 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. By your way of thinking, I might infer that you imply in the above that .NET, VB, and Java are never the right tool for any job. William E. Kempf wrote: You can only "choose them according to the job at hand" if you actually understand the pros and cons of the choices. Sounds like you don't. May be I am more ignorant than I thought. That's ok, I don't have an inflated ego as John does anyway. William E. Kempf wrote: Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf Forgive me for asking, how the hell did you get that from my comments? If we could put words into an opponent's mouth or thoughts into an opponent's head, it would be too easy, isn't it?
-
Or 1. Write a well-written C++ app, and handle memory yourself, so you know exactly what it's doing 2. Write a .NET app and just hide in a corner and pretend the memory issue doesn't exist at all -- Help me! I'm turning into a grapefruit!
Warning: this is a rant - please don't take it personally! :) Or just suck up the fact that: a) Programming is hard. It is complex nad error prone and fraught with perils if you do not take the time to LEARN how to program, not just rush and buy the lates marketing crap from MS or Sun or whoever. b) Programming takes discipline, and discipline takes time to achieve. There is NO language that can help you get discipline. This is something that everyone in any profession that is is highly skill driven, from engineering, to classical musicians, to sculptors, to machinists, et al. I am SO tired of everyone simply buying into the argument that by simply swapping out the "old" language(i.e .C++) and bringing in some new fangled proprietary marketers wet dream language (i.e. Java, C#, et al), that we can just sweep away all the problems. Sure C#/.NET may have garbage collection, that MIGHT, MAYBE save some time here, all the while introducing a new host of issues and problems for you to learn solutions to. ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)!
-
William E. Kempf wrote: You seem to be misguided on several counts, however: 1) It's not that difficult to manage memory correctly in C++ using tools like boost::shared_ptr. 2) There are full GC systems available for C++, if you prefer. I carefully checked all of my posts in this thread and can't find a word that implies the "misguidance" you mentioned here. Some of my comments are just jokes, they may not be funny, but they don't say anything that is not there. William E. Kempf wrote: 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. By your way of thinking, I might infer that you imply in the above that .NET, VB, and Java are never the right tool for any job. William E. Kempf wrote: You can only "choose them according to the job at hand" if you actually understand the pros and cons of the choices. Sounds like you don't. May be I am more ignorant than I thought. That's ok, I don't have an inflated ego as John does anyway. William E. Kempf wrote: Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf Forgive me for asking, how the hell did you get that from my comments? If we could put words into an opponent's mouth or thoughts into an opponent's head, it would be too easy, isn't it?
Black Cat wrote: William E. Kempf wrote: 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. By your way of thinking, I might infer that you imply in the above that .NET, VB, and Java are never the right tool for any job. Hardly. What I said above in no way can be taken as a criticism of the languages, while your "jokes" suggesting that any of the other languages would be better than C++ is a strong indication that you think C++ is inferior, and by implication, never the right choice. Black Cat wrote: William E. Kempf wrote: Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf Forgive me for asking, how the hell did you get that from my comments? If we could put words into an opponent's mouth or thoughts into an opponent's head, it would be too easy, isn't it? If you read what I said, I refer to the underlying implications of your "jokes", and never claim you come straight out and make such claims. Are you now saying that this was not the meaning of your jokes? If it's not, then what was? William E. Kempf
-
Black Cat wrote: William E. Kempf wrote: 3) All of the languages you list are still prone to memory leaks, and the idea that GC makes this impossible has actually lead to there being a LOT of poorly designed and implemented libraries in said languages. By your way of thinking, I might infer that you imply in the above that .NET, VB, and Java are never the right tool for any job. Hardly. What I said above in no way can be taken as a criticism of the languages, while your "jokes" suggesting that any of the other languages would be better than C++ is a strong indication that you think C++ is inferior, and by implication, never the right choice. Black Cat wrote: William E. Kempf wrote: Further, it sounds like instead of promoting the "right tool for the right job" school of thought, you prefer to at least hint that C++ is never the right tool. William E. Kempf Forgive me for asking, how the hell did you get that from my comments? If we could put words into an opponent's mouth or thoughts into an opponent's head, it would be too easy, isn't it? If you read what I said, I refer to the underlying implications of your "jokes", and never claim you come straight out and make such claims. Are you now saying that this was not the meaning of your jokes? If it's not, then what was? William E. Kempf
William E. Kempf wrote: Hardly. What I said above in no way can be taken as a criticism of the languages, while your "jokes" suggesting that any of the other languages would be better than C++ is a strong indication that you think C++ is inferior, and by implication, never the right choice. No, I just want to make fun of the religeous passion some people have with C++. Knowing that there are so many VB jokes on this site, some of them rather senseless and humourless, you would consider my jokes justified, would you? William E. Kempf wrote: If you read what I said, I refer to the underlying implications of your "jokes", and never claim you come straight out and make such claims. Are you now saying that this was not the meaning of your jokes? If it's not, then what was? Again, I categorically deny any of the underlying implications. My jokes are some kind of balance act as explained above. If someone "wants" them to imply other things, then it's not my fault. Have a nice day. :)
-
You might think you're funny, but I, for one, wish you would stop acting like a dick. To the CP old-timers - yeah I know.... "pot = kettle = black;" ------- signature starts "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001 Please review the Legal Disclaimer in my bio. ------- signature ends
John Simmons / outlaw programmer wrote: To the CP old-timers - yeah I know.... "pot = kettle = black;" Wouldn't that be "pot == kettle == black;"? Michael Martin Australia mjm68@tpg.com.au "I personally love it because I can get as down and dirty as I want on the backend, while also being able to dabble with fun scripting and presentation games on the front end." - Chris Maunder 15/07/2002