comp.lang.c++@googlegroups.com | Google Groups | ![]() |
Unsure why you received this message? You previously subscribed to digests from this group, but we haven't been sending them for a while. We fixed that, but if you don't want to get these messages, send an email to comp.lang.c+++unsubscribe@googlegroups.com. |
- to Tiib - 10 Updates
- size of std::istream object - 6 Updates
- size of std::istream object - 1 Update
- Any tools for "refactoring" C++ code? - 2 Updates
- Slow std integer to a string conversion (to_string/sprintf) - 1 Update
- Peculiar g++ warning ?? - 4 Updates
- Scott Meyers' new book available (as download) now - 1 Update
Paavo Helde <myfirstname@osa.pri.ee>: Nov 16 07:34AM -0600 JiiPee <no@notvalid.com> wrote in > That was a good practice for me to improve that intToString function, > although Luca has even faster version so best to use that (dont > understand that code though). Luca's code is also trading memory for speed, but this time it is the compiled code size (in my experimentation Luca's version compiled into 2564 bytes .o and your version with 200-byte lookup table compiled into 1328 bytes. And in my tests it was slower, not faster. Probably I had too old gcc version. Or it was something else. Cheers Paavo |
JiiPee <no@notvalid.com>: Nov 16 02:10PM On 16/11/2014 13:34, Paavo Helde wrote: > gcc version. Or it was something else. > Cheers > Paavo His version was slower than my first version? So the Superfast would be even faster? I think I ll do more tests of other computers. Ok, this means that this is not straigthforward at all :). It seems to depend on what which system is running that which version is the fastest. So what would be the best way to find out what version to use in which setting/computer? Run all of them and start using the one which is fastest for that computer? |
Dombo <dombo@disposable.invalid>: Nov 16 03:34PM +0100 Op 16-Nov-14 15:10, JiiPee schreef: > Ok, this means that this is not straightforward at all :). Unfortunately not. > It seems to depend on what which system is running that which version is the > fastest. Not only that; also what else is running on the system affects the speed of your function. E.g. another function may trash the cache slowing down your function if it heavily depends on memory accesses, or your function may trash the cache making the other functions slower. > So what would be the best way to find out what version to use > in which setting/computer? Run all of them and start using the one which > is fastest for that computer? Measuring on the target system is generally the best way and often the only practical way to determine which is fastest. Guessing/assuming what will be fastest is the worst way since there are too many variables, of which many are unknown in most cases, that affect the performance. |
Johann Klammer <klammerj@NOSPAM.a1.net>: Nov 16 04:07PM +0100 On 11/15/2014 03:46 PM, Jorgen Grahn wrote: > see where it came from, if I have modified it, if there are new > versions, and so on. > /Jorgen Yes, convenient... Not all of them have the same functionality... There's a list on wikipedia... <http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities> |
JiiPee <no@notvalid.com>: Nov 16 03:12PM On 16/11/2014 14:34, Dombo wrote: > what will be fastest is the worst way since there are too many > variables, of which many are unknown in most cases, that affect the > performance. in speed critical issues, I would feel the same way... the program could first test all of them and see which one fastest. To be perfect, it would need to do statistical tests during weeks or months, because the PC usage might change. |
Luca Risolia <luca.risolia@linux-projects.org>: Nov 16 04:57PM +0100 Il 16/11/2014 15:10, JiiPee ha scritto: >> Paavo > His version was slower than my first version? So the Superfast would be > even faster? I think I ll do more tests of other computers. Test the function below. It is equivalent to the code that the compiler should be able to generate from my original (and more generic) version on implementations where unsigned integer is 32-bit long. void uint_to_str(unsigned int i, char* c) { if (i < 10) { c[0] = '0' + (i % 10); c[1] = '\0'; } else if (i < 100) { c[0] = '0' + (i / 10); c[1] = '0' + (i % 10); c[2] = '\0'; } else if (i < 1000) { c[0] = '0' + (i / 100); c[1] = '0' + (i % 100) / 10; c[2] = '0' + (i % 10); c[3] = '\0'; } else if (i < 10000) { c[0] = '0' + (i / 1000); c[1] = '0' + (i % 1000) / 100; c[2] = '0' + (i % 100) / 10; c[3] = '0' + (i % 10); c[4] = '\0'; } else if (i < 100000) { c[0] = '0' + (i / 10000); c[1] = '0' + (i % 10000) / 1000; c[2] = '0' + (i % 1000) / 100; c[3] = '0' + (i % 100) / 10; c[4] = '0' + (i % 10); c[5] = '\0'; } else if (i < 1000000) { c[0] = '0' + (i / 100000); c[1] = '0' + (i % 100000) / 10000; c[2] = '0' + (i % 10000) / 1000; c[3] = '0' + (i % 1000) / 100; c[4] = '0' + (i % 100) / 10; c[5] = '0' + (i % 10); c[6] = '\0'; } else if (i < 10000000) { c[0] = '0' + (i / 1000000); c[1] = '0' + (i % 1000000) / 100000; c[2] = '0' + (i % 100000) / 10000; c[3] = '0' + (i % 10000) / 1000; c[4] = '0' + (i % 1000) / 100; c[5] = '0' + (i % 100) / 10; c[6] = '0' + (i % 10); c[7] = '\0'; } else if (i < 100000000) { c[0] = '0' + (i / 10000000); c[1] = '0' + (i % 10000000) / 1000000; c[2] = '0' + (i % 1000000) / 100000; c[3] = '0' + (i % 100000) / 10000; c[4] = '0' + (i % 10000) / 1000; c[5] = '0' + (i % 1000) / 100; c[6] = '0' + (i % 100) / 10; c[7] = '0' + (i % 10); c[8] = '\0'; } else if (i < 1000000000) { c[0] = '0' + (i / 100000000); c[1] = '0' + (i % 100000000) / 10000000; c[2] = '0' + (i % 10000000) / 1000000; c[3] = '0' + (i % 1000000) / 100000; c[4] = '0' + (i % 100000) / 10000; c[5] = '0' + (i % 10000) / 1000; c[6] = '0' + (i % 1000) / 100; c[7] = '0' + (i % 100) / 10; c[8] = '0' + (i % 10); c[9] = '\0'; } else { c[0] = '0' + (i / 1000000000); c[1] = '0' + (i % 1000000000) / 100000000; c[2] = '0' + (i % 100000000) / 10000000; c[3] = '0' + (i % 10000000) / 1000000; c[4] = '0' + (i % 1000000) / 100000; c[5] = '0' + (i % 100000) / 10000; c[6] = '0' + (i % 10000) / 1000; c[7] = '0' + (i % 1000) / 100; c[8] = '0' + (i % 100) / 10; c[9] = '0' + (i % 10); c[10] = '\0'; } } |
JiiPee <no@notvalid.com>: Nov 16 04:15PM ok, this looks more readable :). Its also very fast, so well done. But its 4% slower than your first version. On 16/11/2014 15:57, Luca Risolia wrote: |
Alain Ketterlin <alain@dpt-info.u-strasbg.fr>: Nov 16 05:16PM +0100 > long. > void uint_to_str(unsigned int i, char* c) { > if (i < 10) { [...] > } else if (i < 100) { [...] > } else if (i < 1000) { [...] > } else if (i < 10000) { [... and so on] Note that reverting the order of the tests may provide even better results in the given experimental setup (all integers multiple of 20 or something iirc). Or you could also use dichotomy, as the OP did, to ensure never doing more than 4 tests. And you could use div() to get quotient and remainder in (hopefully) a single operation. (Anyway, the C++ version was impressive.) -- Alain. |
JiiPee <no@notvalid.com>: Nov 16 04:33PM On 16/11/2014 16:16, Alain Ketterlin wrote: > quotient and remainder in (hopefully) a single operation. > (Anyway, the C++ version was impressive.) > -- Alain. no, using div() makes it 4 times slower. But the order surely matters. But in a real we normally use small integers, so I think current version is best for it. |
"Öö Tiib" <ootiib@hot.ee>: Nov 16 12:57PM -0800 On Friday, 14 November 2014 05:45:56 UTC+2, JiiPee wrote: > Ok, can you make/show a simple program where this would happen? A > program where using my conversion functions things get slow. I would > like to test it on my computer. It does not make tests simple but it makes their results more useful and reliable. First do not let processor to predict branches by using adjacent values as input. Use pseudorandom input. Also achieve that rest of the program is what takes most of the time (and so is worth most of the cache). For example collect the results of conversion into 'boost::flat_multiset' or the like. > (I have attached the full code to test my new version which uses 40000 > look up table in the main message above.) For me Luca's function feels more efficient. I haven't tested it since converting millions of ints to text feels useless. If text-based communication is too slow then I switch to binary ('htonl'/'htons'). |
Mark <ma740988@gmail.com>: Nov 16 11:19AM -0800 I'm using a library that returns an istream object. At present I do: std::istream &stream = readerObj.stream () ; std::stringstream str; str << stream.rdbuf() ; I'd like to determine the size of the istream object before extraction with rdbuf(). How can I achieve this. NOTE: If the returned object was an ifstream object then I can seek to the end and determine the size in advance but this is an 'istream' object and tellg and seek doesn't work as it does with ifstream Thanks |
Ian Collins <ian-news@hotmail.com>: Nov 17 08:25AM +1300 Mark wrote: > str << stream.rdbuf() ; > I'd like to determine the size of the istream object before > extraction with rdbuf(). How can I achieve this. Not all sources have a known size. -- Ian Collins |
Ian Collins <ian-news@hotmail.com>: Nov 17 09:00AM +1300 Stefan Ram wrote: >> Not all sources have a known size. > »sizeof stream« should be the »number of bytes in the object > representation of« »stream«. While true, that isn't how the question was phrased. -- Ian Collins |
Mark <ma740988@gmail.com>: Nov 16 12:19PM -0800 Stefan I'm not in front of a compiler right now but are you saying I should be able to do sizeof(stream) to achieve my objective? |
Luca Risolia <luca.risolia@linux-projects.org>: Nov 16 09:26PM +0100 Il 16/11/2014 20:19, Mark ha scritto: > std::stringstream str; > str << stream.rdbuf() ; > I'd like to determine the size of the istream object before extraction with rdbuf(). How can I achieve this. There is no "size" associated with streams. However, you can obtain a lower bound on the characters available in a stream buffer with std::basic_streambuf::in_avail() |
Ian Collins <ian-news@hotmail.com>: Nov 17 09:34AM +1300 Mark wrote: Please quote contest and wrap your lines! > Stefan I'm not in front of a compiler right now but are you saying I > should be able to do sizeof(stream) to achieve my objective? You need to clarify your question, do you mean the size of the object (I doubt), or the amount of data to be read? -- Ian Collins |
ram@zedat.fu-berlin.de (Stefan Ram): Nov 16 07:55PM >Not all sources have a known size. »sizeof stream« should be the »number of bytes in the object representation of« »stream«. |
David Thornley <david@thornley.net>: Nov 16 12:50PM -0600 On 11/15/2014 2:39 PM, Jorgen Grahn wrote: >> 2014 updates? Or is just a manual "do it yourself" thing? > What would be the point of automating it? You don't learn anything > from that. On the other hand, some code bases are large enough that going through and doing everything yourself is going to take a while. > On the other hand, I'd welcome practical tips -- like "these are the > areas where your C++98 code is most likely to benefit from a touchup" > or "introduce C++11 features it in this order to make the most of them". Some of the advances seem more like better ways to write the same thing, and those I suppose you can just add as you modify things, like the new for loop and "auto". I don't see any strong reason to go through and convert "boost::shared_ptr" to "std::shared_ptr". Some of them are for better correctness. We found several bugs from just adding "override" to virtual functions. Changing NULL or 0 (when used as the null pointer constant) to "nullptr" might chase out a few. I'm not real sure about "unique_ptr" vs. "auto_ptr", but you might be able to get around that with a global replace. Some of them might improve performance. Besides just compiling with a modern compiler (which will bring in the better library), you might add move constructors and assignment operators to your classes. I'm not coming up with much more off the top of my head. A lot of the new functionality is better suited to be used as you write new code rather than changing old code. |
Robert Hutchings <rm.hutchings@gmail.com>: Nov 16 01:16PM -0600 On 11/16/2014 12:50 PM, David Thornley wrote: > I'm not coming up with much more off the top of my head. A lot of > the new functionality is better suited to be used as you write > new code rather than changing old code. There is a product called "Understand" from www.scitools.com. This is more of an code-analyzer and cross-referencing type tool. Probably best to update older code as needed and then -perhaps- introduce C++ 11/14 concepts as appropriate. |
Dombo <dombo@disposable.invalid>: Nov 16 04:04PM +0100 Op 14-Nov-14 2:02, 嘱 Tiib schreef: > costs something and L1 is 64k. Platform architects say that 64k is > optimal middle ground between too lot of transistors and too few L1 > cache. The problem is not so much the number of transistors needed for the cache but the trade off between cache size and cache latency. The larger the cache the larger the latency. That is the reason why CPU have multi-level caches; a small but low latency L1 cache and a larger but slower L2 cache and nowadays typically an even larger and slower L3 cache. If it were just a matter of transistor count there would be little point in integrating multiple cache levels on the same die. Considering physics I have little hope that the size of L1 caches will grow significantly in the near future. For example the AMD Athlon (K7) introduced back in 1999 had a L1 cache of 64 kB + 64 kB (Data + Instructions), whereas the Intel Core i7 has a L1 cache of 32 kB + 32 kB (Data + Instructions). Since memory accesses can performance wise potentially be very expensive, it may make more sense to reduce the amount of memory that needs to be accessed than to reduce the number of instructions that need to be executed to accomplish a certain task. |
seeplus <gizmomaker@bigpond.com>: Nov 15 04:17PM -0800 On Saturday, November 15, 2014 1:50:13 AM UTC+11, Rick C. Hodgin wrote: > What are some other ones? > Best regards, > Rick C. Hodgin What is your rationale for producing yet another compiler and spending so much time on the endless details and complications. Is it just because your lord is holding your hand, or is it simply an academic challenge? I think you mentioned somewhere you had something against purchasing from MS. In that case MS has now dropped Visual Studio Express. In it's place there is a FREE version at the "Professional" level with all the stuff like MFC, SQL, allowed to distribute the exe for small enterprises, etc. I have now installed it across all my backup computers and it works just the same as my high $ "Ultimate" version for what I want to do. This could be a game changer. Aren't you better off letting Herb's guys worry about all this compiler stuff while you get on with writing useful apps? |
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Nov 15 05:15PM -0800 On Saturday, November 15, 2014 7:17:51 PM UTC-5, seeplus wrote: > so much time on the endless details and complications. > Is it just because your lord is holding your hand, or is it simply an > academic challenge? My goals are to create an entire hardware and software stack which is an offering unto the Lord, and to other men and women on this planet, as by the skills He has first given me, and the others who will come to work on this project. Rather than founding our pursuit on how we can make a lot of money by creating some whizz-bang thing and then selling it because it's better than our neighbor's, our goals are to create some whizz-bang thing and then give it to our neighbors so that they can then use that as a base to create even better tools, with the hope that our methodology will encourage them to then also give back unto their neighbors. Hoarding some ability or talent you possess behind a wall of "YOU HAD BETTER PAY ME BEFORE YOU USE THIS PRODUCT BECAUSE I WILL COME AND TAKE YOU TO COURT AND HAVE YOU THROWN INTO PRISON IF YOU DON'T GIVE ME MY MONEY!" is entirely wrong. God gave us our talents to improve ourselves and each other's lives, and not at a cost. The economy in Heaven operates differently than it does here. Things in Heaven do not wear out, nor are they consumed with use. We have the burning bush (fire without consuming the bush), we have Jesus demonstrating with the fishes and the loaves distributed to thousands. God operates under the model of having and sharing while still maintaining. Things in man's world do not operate this way. The physical world is separated from the spiritual world, yet God (in the bush, and Jesus distributing the fishes and the loaves), operating in the spirit, was able to manifest His power in the physical world for all to see. The closest that we have to this as a tangible thing that we can individually manipulate and then distribute is the world of the digital. We can possess a file and share a file with everyone else at the same time. We do not have consumption of that file through distribution or use. The things that I desire to setup here in this world relate back to the Lord's Prayer, "...Thy Kingdom come, Thy Will be done, on Earth as it is in Heaven..." I desire to look to the Lord and see what it was I did to achieve and attain the various gifts I possess in their measure, and it does not take me long to realize that I did nothing to achieve them. They were gifts from Him, and I have been given other worldly gifts in them that as I've gone through my life I've had this opportunity or that opportunity, and it has all been from Him. I acknowledge that as a foundation in my life and I am bringing the choices I have in my life to bear around it. The LibSF was created because I looked to those around me who are the "towering giants" of the "open source" world, Richard Stallman and his GNU and FSF, and Linus Torvalds and the Linux kernel and all of the subsequent infrastructure that's been created because of GNU/Linux, and as a Christian I asked myself: Is this what I want to be a part of? We have RMS who has publicly stated he thinks that pedophilia and necrophilia be made legal, to which I personally emailed him over several days inquiring of him if this was accurate or not to which he replied it was, and then witnessing to him about Jesus Christ and our proper course in this world, to which we ended our email exchange in a type of untenable abeyance. And next we have Linus Torvalds who seems like a nice enough guy, but then had no issues with giving the employees of Nvidia the finger on camera while using profanity. The bottom line is I serve a living God, a God who cares so much about His people that He came down here from Heaven Himself, and put on a body of flesh and lived under our laws so that He could take away the shame of our eternal sin state, that He could make a way out of no way so that we could again enter into Heaven with Him, to be where He is, because He loved us so much that He desired to save us more than He desired to judge us. I look to RMS and Torvalds, and I hold them next to Jesus Christ, and I say, "Nope. I'll go with God every day forever," and the Liberty Software Foundation was born that very day. http://www.libsf.org I have proceeded from that time desiring to build the software tools and stack to have my own OS founded completely upon this love offering of me back to God, following after the example of His Love (capital L) offering unto mankind. I desire to look to Him as my source of guidance and to use the unique and special talents I have been blessed with for His Kingdom. I desire to take these skills I possess (software development, low-level hardware interests) and put them to use for His Kingdom, and not for the kingdoms of this world (money, power, corporate entities). I have not had success in my projects so far. It is truly astounding the number of things which keep coming up against me. My wife and I look at each other in disbelief sometimes. It's as if a mind is working against me, holding me back, holding us back. It's really something to behold. Yet I persist. My offering is unto the Lord, a focused effort upon Him. I point to Him in the areas of my talents and abilities, in the areas of my model and desire, in the areas of my business and distribution. I look to my Lord and Savior to be the template by which I proceed with my life. And I realize also I must be doing something right because I encounter nothing but a seemingly unending series of nay-sayers who berate everything I stand for in this world, including your message here. > I think you mentioned somewhere you had something against purchasing > from MS. In that case MS has now dropped Visual Studio Express. I am against Microsoft as an entity. They are profit-based and they do not have genuine love interests of God as their object or focus. And it is not just Microsoft. It is all such entities which are aligned in those ways. I was recently solicited by Google. They wanted me to come out to the west coast and work for them as, the recruiter said, they would find something really intriguing for me to work on. They had seen my work on Visual FreePro, and then Visual FreePro, Jr. on GitHub and they solicited me. I wrote back and told them that my focuses in this world are not upon money, nor in serving a money interest like Google, but rather I have a desire to serve God, and my fellow man, with the talents and skills I possess. I want to make other people's lives better by the things I possess. > This could be a game changer. > Aren't you better off letting Herb's guys worry about all this > compiler stuff while you get on with writing useful apps? I will try to make this as clear as possible for you: Microsoft has no interest in giving away their products. They have no interest in helping out other corporations. They have no interests in helping you out, or anyone else out. Microsoft is moving everything they possess as a corporation, and has been since about the same time Apple came out with their iPhone, and specifically ever since the time they publicly announced Windows Azure, to an online presence. They want to be able to track you, monitor you, watch you, and I don't know why. Windows 8 routinely calls home to Redmond. The newer versions of Visual Studio have an online presence with a Microsoft account allowing wonderful sharing of features and data, but also a monitoring of who you are, where you code, what you code, when you're coding at the office, when you're coding at home, etc. Their free tools are not free. And none of the corporations of this world are releasing free tools for the sake of releasing free tools. We are fighting a battle in this world. There is an enemy spirit at work against us. That spirit is the devil, and all of his demon imps. They are operating in this world in an end-game attempt to take as many of us down with their judged selves as is possible, and they will succeed in taking down many many because most people will not hear any part of the truth about what's going on in this world because of sin and our sin nature. It's very easy for the rational mind to rationalize away any possibility that God is real, that we need Jesus Christ to take away our sin, and that there are eternal consequences to our actions, because we don't seemingly see the end result of them as they accumulate in our life. A person gets away with some sin, and nothing happens, so they continue on and get away with more, etc. In that way the wicked appear to succeed, while the ones who do right fall behind and are often even ridiculed for their desire to do what's right. All of this was foretold in scripture that in the end times it would be like this. And we are here. People like me who stand up explicitly for the Lord doing nothing other than a constant outpouring from our souls unto Him, and unto each of you, of loving kindness, of goodness, of the free offerings of the best of our selves, are the continued subject of scorn and ridicule because of it. This battle is everywhere. People will either buy into Satan's lies because of the sin nature and their desire to serve that sin nature, or they will want the truth and they will come out from that sin nature pursuit, come to the Lord, repent, ask forgiveness, and be saved, and then be born again able to see for themselves the truth of the lie of this world, and the truth of Jesus, the cross, and the eternal Kingdom of God. Jesus is our only hope in this world. He teaches us the ways of peace, of love, of sharing with one another all that we possess, rather than hoarding and creating artificial empires which need not otherwise exist. Jesus is the door. He is the key. He is the gateway out of the falseness and the lies overtaking this world, causing people to make the wrong choices, believing they are making the right choices, because the enemy has setup a system in this world to make it seem to the rational thinking person that such a choice is good, even when it flies in direct contrast to what the Lord has taught us. Microsoft, Google, Apple, Oracle, IBM, Intel, AMD, all of the big corporations, they are all moving in pursuit of this false system of the fallen empire, the one that will seemingly rule and reign in this world until the day which Jesus foretold that in one day Babylon is destroyed, and all of the commerce that goes along with Babylon is also destroyed. Jesus is our path. He is our foundation. He is our hope. He is our Life. He is our all-in-all. And the enemy of this world knows that as well as we do, and he goes out of his way to discredit Jesus by rising up all kinds of crazy things being done in His name. But the Lord calls out to men individually. He reaches into the hearts of each of us continually, knocking at the door, desiring that we will hear His knock, and invite Him in. And for all who do, He comes in an sups with us, and we with Him, and we are then together and our worries in this world are no longer worries, but reliance upon Him because He is God Almighty and can make a way out of no way. He is the everlasting, the rock of ages, the one who was, and is, and is to come, the Almighty. We seek Him because of who He is, and He is the Good Shepherd, and stronger than any enemy, and He can and does protect us from the things in this world the enemy tries to ensnare us in. We will go through hard times, but because He is with us continually, His Holy Spirit presence in our lives, we are never alone, nor are we without hope. When everything seems to be falling apart to our right, to our left, in front of us, and behind us, yet is He there to fill us with hope and peace because we know that the things here in this world are but for a tick of the clock, and then eternity begins, eternity that never ends. Jesus teaches me the right foundation. He leads them on the paths that men should pursue. He gives us cues and guidance and takes us within ourselves for a review of our lives to figure out the courses we should take. And we know that no matter which misguided direction we might originally set off on, so long as we set our focus upon the Lord, our attention upon the Lord, our sights upon the Lord, that He is capable, able, and desiring, to turn us in the right direction that we may pursue continually, and forever closer, that relationship with Him, here upon this Earth, that He may live in us, through us, and reach out to many more souls to bring them to knowledge of Him and His eternal Kingdom, that He might then also save them by His one-time sacrifice at the cross, so that all of us will go to Heaven together, entering in upon the time of our death, or upon the time of His return, whichever comes first, so that we will be forever shed of the sin nature of this world, of death, of pain, of the anguish brought about by the evil enemy who does nothing but lead the whole world astray as he waits for his own day of eternal destruction. I will advise you to avoid the large corporate things of this world and pursue the work of the Lord in small people like me. We are the ones who are not big power bases in worldly terms, but rather we focus our attention upon THE one true big power base, the Lord Himself. Our goals are His goals, our wants are His wants, our focus is upon Him continually, as He guides us in our lives continually more and more toward that focus as well because He is literally living inside of us, His Holy Spirit dwelling within us, guiding us, teaching us unseen things in this world that we might know the truth, and make us free. I pursue these goals with LibSF, and as a man, because I have tasted and seen that the Lord is good. I state in no uncertain terms that I will not have any degree of success unless the Lord allows it, and that if He ever does allow it the success I have will be owing entirely and only unto Him. I am not a self-made man. I am a man made by the living loving God, Jesus Christ. I acknowledge this in my life, and I proclaim it at the forefront of all I do. I stand up and look to Him and say, "Yes, Lord, I am here." And He continually guides me in my life. Rick the man makes mistakes. Big mistakes. Rick the man is not always making good decisions, or even right choices. But God is faithful, and when I turn to Him in prayer He guides me back to where I should be. And because He knows I have my heart truly set upon Him, He guides me even in my mistakes, even in my wrong choices. He is always there, a loving Father, a Good Shepherd, a friend closer than a brother. Why do I stand up in this world and pursue my own languages, my own kernel, my own software, and even my own hardware? Because I do not want to court the evil spirit ruler of this world who operates in those who are not born again, who is leading men falsely and in contrary ways doing only harm to themselves, and to others, in all they do continually. I want to stand up for the Lord, and acknowledge Him as my God, as my hope, as my salvation, as my true love and the focus of my inner-most desires, that I will be His upon this world, using all of the talents I possess in labor for His Kingdom. I come to forums like this and speak about the Lord, about our need of Him in our lives, in eternity, about damnation, about the reality of sin and of the evil spirit influence in this world. I am often ridiculed in so doing, yet I persist because I know who He is, and I know who the enemy is, and how the enemy is speaking through every person who is not a born again believer, and even those who |
Geoff <geoff@invalid.invalid>: Nov 15 06:17PM -0800 On Sat, 15 Nov 2014 17:15:00 -0800 (PST), "Rick C. Hodgin" <rick.c.hodgin@gmail.com> wrote: [massive screed snipped] If you spent as much time working on your projects as you just did writing this and your other posts in these news groups you would be finished already. I would also advise you to spend time with your family instead of writing code at home and preaching online. God wants you to dedicate yourself to and cherish your family and offspring, not worry about people who are not your concern. |
"Rick C. Hodgin" <rick.c.hodgin@gmail.com>: Nov 15 07:45PM -0800 On Saturday, November 15, 2014 9:17:33 PM UTC-5, Geoff wrote: > If you spent as much time working on your projects as you just did > writing this and your other posts in these news groups you would be > finished already. The projects I'm on about are comprehensive. You're free to look at the GitHub content I've posted since July, 2012. It's non-trivial. But beyond that, I have a priority list in my life: (1) Family always comes first in emergencies, but barring those: (2) Regular daily job. (3) Family. (4) Regular needs around the house / in my life. (5) Software development. > I would also advise you to spend time with your family instead of > writing code at home and preaching online. You do not know enough about me personally to make such a statement. You have never met me. You have never been to my home. You have never spoken to my family. You only see the outward appearance as through cold, written text. Your picture of me is not complete enough to assess me in any way, but only to have generalizations. From within that context, I appreciate the care you offer unto me, that you would desire me to have an improved life. Thank you. > God wants you to dedicate yourself to and cherish your family and > offspring, Absolutely He does. I'm glad you recognize that about God. :-) > not worry about people who are not your concern. There are no people who are not a Christian's concern. Whomever the Lord brings to us in our lives, these are our concerns in this world. Our work is a witness unto each of them, regarding Him. And we speak of Him because He has commanded us to, and because all of us need Him. I do not tout the things of Rick, but I do tout the things of Jesus. He has a plan for every person, and has all of the solutions to all of the questions people have, including what happens after we die. He explains who we are, who He is, why He is needed, and what it means to have Him in our life, and to not have Him in our life. His is nothing less than the greatest story ever told ... and there are not inappropriate times or places to discuss He, the author of the entire universe, and each of us. Best regards, Rick C. Hodgin |
seeplus <gizmomaker@bigpond.com>: Nov 15 04:54PM -0800 I have several readers. They suffer from a very annoying problem of when you are on a train or similar and you are holding onto the device it is easy to accidentally tap somewhere on the screen, and it goes away and does that random command. You then have to setup everything all the way back to where you were reading, not knowing what was the operation that the Ereader actually performed. They really do need a hardware finger interlock key somewhere that you need to hold down when you want to do something major. |
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page. To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com. |
No comments:
Post a Comment