Thread: Which language?

  1. #31
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MK27 View Post
    Why would I stop there? I'd label the pen and paper C, an old electric typewriter C++ (which, thankfully, I never had to use), and the computer perl. I still think nothing beats pen and paper for some things, btw. Like composing on a typewriter (the more modern technology) is definitely not a desire most sane people possess. But this is a very crass analogy.
    I think this is a splendid example.
    You prefer the pen and paper, but you also know that it will take longer to get things done with the pen and paper (and maybe even harder to organize)!
    That is not to say things cannot be done with pen and paper, it might just take a bit longer.
    Excellent point!

    It has been a focus of low level developers concerned with hardware, that is not "it's focus". C and C++ are the same thing in this regard anyway. It has also been a focus of many developers who write high level APIs. You are now using modern == high level, which is just dumb. There is a modern low level and a modern high level, high and low do not refer to a progressive evolution from one to the other.
    Shall we redefine it as modern high-level and modern low-level then?
    C is good for modern low-level (as C++ should also be), while C++ and higher a good for modern high-level?

    Even after a bunch of posts here (and previous threads) I still have not seen you define what you mean by "modern challanges", which is why I responded to this as simply meaning "is a standard OO interface available"? If you want to keep redefining it until the question is "Is it the programming language known and loved by Elysia? Is the language one Elysia is highly efficient, productive, and proficient at?" then I think I understand what those modern challanges are about (a tishload of expensive and stubborn developers ).
    Meh. It's about creating software as Office (I mentioned that, didn't I?). Office is obviously so big and complex I imagine it's a nightmare to hold it together!
    This must then be an excellent point about what modern high-level languages must be designed to solve, then?

    My point about repeatedly bringing up countless examples of "big modern applications" written in C is not to prove that C is the best language in the world, it's just to demonstrate that many highly capable people besides Elysia have chosen in to work in C, and by some coincidence it is their work (and not somebody else's) which came to occupy that place. So while it may be more efficient and productive for many people (including Elysia) to work in C++, this is a subjective and not a universal truth. There is nothing about C which makes it "inappropriate" for big modern projects; plenty of very successful big modern projects are done using C.
    Of course, they used the pen and paper instead of the computer. So where does that leave us? Well, it probably took them a lot longer to build the software and get it stable. And if they have rushed the schedule, it will probably be buggier or less well built than a similar application in another high-level language in the same time frame.
    That is not to say it couldn't be done. It just goes to say that it probably took a lot longer and that it was probably a bigger challenge than if they had used a more suitable tool (and suitable developers for the task), don't you think? Subjective, I think, but I do still think the general principle holds true.

    As for the rest...
    ZzZzZzZzZzZzZz
    I rest my case.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  2. #32
    Deprecated Dae's Avatar
    Join Date
    Oct 2004
    Location
    Canada
    Posts
    1,034
    Quote Originally Posted by MK27 View Post
    I'd would love to see you get started on the Google search engine (clearly a moronic assemblage of Lego) and make it work even 1/1000th as well. They deserve like a Nobel prize in data handling or something for that.
    Google certainly utilizes many languages. The back-end programs that actually handle the data directly are C++; then it's interfaced to Java, Python, and more. It's true some web dev can be just as complex as your standard C++ library, not mathematically or algorithmically but thinking at a higher level. As far as algorithms in web dev, it can be complex but only because it should probably be interfaced to a more suited language such as C/C++, Java, etc. Which is what Google, Facebook, etc. do obviously. People who code BIOS and OS are trained and experienced with that task. It's hardly as complex for them as it is for you and me. Even so, I would never say any web dev is as complex as that, and if it is, they are doing something wrong. Of course, does creating the back-end for your website in C++ count as web dev? I would say no, but you can see you can't blanket statement web dev versus other programming.

    I do enjoy seeing native programmers attempt transitions like using XHTML, CSS, jQuery, the many different libraries and your choice of web language together effectively. Producing valid, reusable, cross-compatible, simple and effective code. As simple as they are usually you'll end up with awful code. It's like watching a programmer try to design graphics, it usually doesn't end well, as most simply don't think well on both levels. Then there's the jack of all trades.

    Quote Originally Posted by woody_294 View Post
    Good god do all posts end up like this?
    I must say it doesn't help having fanatic quotes in our signatures or avatars (ahem Elysia, you ooze C++ fanboi). Then we got people here who exclusively use C, or C++, but never both. Personally, not only do I see both their merit, but would consider both as options for projects until omitted. Many people here will just jump straight to one language. Fanaticism, fanboyism, whatever you want to call it.

    All I meant was don't be a masochist, like that guy in in the job section developing Wagrold. Don't go and start reading NeHe thinking you're going to code some custom graphics engine. There's really no purpose unless you plan on making that a career choice (3d engine developer). Even then I'd probably start at a higher level. There's really nothing wrong with C for this project other than libraries. Your project will never be scaled higher than many successful C games, such as open sourced Quake 3. Nowadays you're going to want the options C++ provide for games. There's a good chance you'll just end up writing C with classes style code anyway (meaning you don't fully understand how to utilize C++, which takes time, and the further you go along the more you favor metaprogramming over OO). You could always just ignore templates or classes, or both, if the style fits you better. In many cases I don't see any reason to go fully down to C for games, applications, etc.

    If I were just starting, I would be looking into the recently released Unreal Development Kit, or the good ol Source Engine. Start at a high level. Actually achieve something. Start a team or join a team (there's plenty ranging from mods, to professional). If you disagree, well, revert back to previous suggestions.
    Warning: Have doubt in anything I post.

    GCC 4.5, Boost 1.40, Code::Blocks 8.02, Ubuntu 9.10 010001000110000101100101

  3. #33
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by Dae
    Of course, does creating the back-end for your website in C++ count as web dev? I would say no, but you can see you can't blanket statement web dev versus other programming.
    Heheh, I read a blog post on this recently: The ambiguity of “web developer”.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  4. #34
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    I think this is a splendid example.
    You prefer the pen and paper, but you also know that it will take longer to get things done with the pen and paper (and maybe even harder to organize)!
    That is not to say things cannot be done with pen and paper, it might just take a bit longer.
    Excellent point!
    No, in fact what I am saying is that when I write long polished material (like a story or an essay), I find it faster and easier to compose it on paper, then type it out and do some editing and formatting on the computer. That's completely normal, many if not most professional writers work that way (probably most WRT to books).

    A naive person who has not done much such composition might say, "Well wouldn't it be better and faster if you just composed on the computer?" No -- for me the transfer phase (from paper to screen) is a very significant editing and revising stage which would only take longer and be less effective done another way, and so also the composition phase.

    C is good for modern low-level (as C++ should also be), while C++ and higher a good for modern high-level?
    How about modern low level "C++" would be more or less "modern low level C", whereas "modern high level C" would be quite different from "modern high level C++", which sticks a little better to the facts and avoids your subjective politicising.

    Meh. It's about creating software as Office (I mentioned that, didn't I?). Office is obviously so big and complex I imagine it's a nightmare to hold it together!
    This must then be an excellent point about what modern high-level languages must be designed to solve, then?
    Right, and OO is one way to deal with this if it is a very serious problem for you. And it's nice. But if you have enough experience working on big projects without formal classes, then it may not be such a big problem. Not that I'm such a wizard, I'm just extrapolating from these aforementioned fools who think they could not have accomplished "hello world" without defining a new class. After 30 years, they'll still think the same thing about whatever it is they are doing, maybe.

    I will admit it is easier to get a handle on an unfamiliar piece of code if it is heavily OO based, because you do not have to squint too hard to discern the logic (which may be even harder to do if everything you work on is heavily OO -- you are stuck flapping your hands around going "but how"?). Once you are familiar with it I don't think this is such a big issue.

    It just goes to say that it probably took a lot longer and that it was probably a bigger challenge than if they had used a more suitable tool (and suitable developers for the task), don't you think?
    What I meant before and what your statements boils down to is that the tool needs to match the pool of available developers -- if you have a plentiful supply of people who's forte is C++ and C++ satisfies the business model (closed source), why look any further? But you are a little delusional to believe that this state of affairs reflects "the best of all possible worlds".

    But I'm not knocking it. I just think you have been misled about "what C is good for" and are passing that mistake on to others.

    Quote Originally Posted by Dae View Post
    As far as algorithms in web dev, it can be complex but only because it should probably be interfaced to a more suited language such as C/C++, Java, etc.
    Only in your mind are those languages "more suited" to complex tasks than interpreted ones. As a rule they are built on a C/C++ foundation and are capable of accomplishing more high level activity in a more compressed fashion == greater complexity.

    As for a lot of web infrastructure being C or C++, yeah, and just as well, BUT the reason for this is pragmatic (you have lots of highly skilled programmers available, you can depend on the standards used, and, most importantly, you can close the source*). The only other factor is that compiled executables will still outperform interpreted programs to a degree. But there is no C code left in the executable, this has exactly nothing to do with the nature of the language.

    * I'm sorry to bruise your developer's ego this way, but the people who sign your check did not choose C++ because it's so wonderful, they chose it because they must use a compiled language.
    Last edited by MK27; 02-07-2010 at 01:50 PM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  5. #35
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by woody_294 View Post
    Good god do all posts end up like this?
    Like how exactly? You mean people debating heatedly about something, instead of being paragons of suave manners and consequently boring and uninteresting?

    Yeah. Many threads are like that. No one here is angrily arguing at anyone. It's ok.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  6. #36
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by MK27 View Post
    >>This is like saying pumpkins are one of the biggest kind of squash.
    No. It's like saying "payroll software is one of the most complex business applications you can develop".

    But because you never done any payroll software and don't even know the requirements for such software, you estimate WRONGLY that you can produce an usually accepted argument about generalizations. Problem is, there's no generalization.

    I'll say it again just in case your head is still up your arse: Payroll software is one of the most complex business applications there is.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  7. #37
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Mario F. View Post
    I'll say it again just in case your head is still up your arse: Payroll software is one of the most complex business applications there is.
    I was not contradicting you, pumpkins are the biggest form of squash. No question!
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  8. #38
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Ah. Now we're getting somewhere.
    We're beginning to form the definition of the right tool for the job.

    Quote Originally Posted by MK27 View Post
    No, in fact what I am saying is that when I write long polished material (like a story or an essay), I find it faster and easier to compose it on paper, then type it out and do some editing and formatting on the computer. That's completely normal, many if not most professional writers work that way (probably most WRT to books).

    A naive person who has no done much such composition might say, "Well wouldn't it be better and faster if you just composed on the computer?" No -- for me the transfer phase (from paper to screen) is a very significant editing and revising stage which would only take longer and be less effective done another way.
    And to me, that would be a lot slower.
    Nevertheless, if you would properly learn (and prefer) to do it on computer instead of paper, it would be faster because I guarantee you can type faster on the keyboard than you can write on paper!

    How about modern low level "C++" would be more or less "modern low level C", whereas "modern high level C" would be quite different from "modern high level C++", which sticks a little better to the facts and avoids your subjective politicising.
    Ah, but I would class modern low level C++ at least as C++ + C, because you would (or at least I would) use a lot of high-level elements and hide the low-level C stuff in the code!
    But sure, I think if we modify that fact, those definitions are cool.

    Right, and OO is one way to deal with this if it is a very serious problem for you. And it's nice. But if you have enough experience working on big projects without formal classes, then it may not be such a big problem. Not that I'm such a wizard, I'm just extrapolating from these aforementioned fools who think they could not have accomplished "hello world" without defining a new class. After 30 years, they'll still think the same thing about whatever it is they are doing, maybe.
    I think this boils down to the right tool for the job and the right people for the job.
    Obviously, it is difficult even for one used to pen and paper to write a story as quick as one used to computers in the same time frame purely because it takes longer to write or type each letter, even if everything else was the same!

    I like to classify it as this:
    If it's a high-level application, use C++, Java, C#, whichever you know best. If you know C best, think twice. Consider the possibility of learning a higher-level language. If not, use C.
    If it's a low-level application, use C or C++, whichever you know best. If it's Java, C#, etc, learn C++ or C.
    If it's a simple application, use whatever language you know best.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  9. #39
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    Nevertheless, if you would properly learn (and prefer) to do it on computer instead of paper, it would be faster because I guarantee you can type faster on the keyboard than you can write on paper!
    Yep, which is part of the reason it is better to compose on paper. So in this sense, there is no point in learning to do it on a computer, because "dictation speed" is not the issue, and sitting with a keyboard is much more awkward than sitting with a paper and pen. I also prefer to read books than the screen. I think trying to contradict this one will be like trying to claim you prefer a phone booth to a couch -- maybe, but if so your head is really screwed up.

    Obviously, it is difficult even for one used to pen and paper to write a story as quick as one used to computers in the same time frame purely because it takes longer to write or type each letter, even if everything else was the same!
    Not if story A is actually enjoyable whereas story B was a piece of half thought out crap. Writing skills are completely different than typing skills. IMO "typing skills" or "computer skills" are a completely irrelevant distraction there. Going with the KISS philosophy, it is important to consider what the nature of your task is. It does not involve a computer, and the computer cannot help you do it better, so the computer amounts to an unnecessary complication. A lot of very famous and/or successful writers cannot type at all. No doubt, a lot of untalented hacks churn out ad copy, PR material, and bland reportage quickly at a keyboard. They might as well, since there is no point wasting time on the activity, which is also true when reading the product.

    I can type just fine and think at the computer -- I (almost) never use paper for anything programming related. Except learning, in which case again I'd rather read a book (and the iWhatever will never ever possibly change that, despite the feelings of gadget fetishists, the paperback is a far more miraculous piece of technology). Newspapers would be better on line tho, the news does not require paper.

    If composing human language material on a computer made the task easier in the sense that it is easier to do it better (as opposed to faster) we'd all be that much closer to Shakespeare now, but that is very definitely NOT the case.
    Last edited by MK27; 02-07-2010 at 02:21 PM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  10. #40
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by MK27 View Post
    As for a lot of web infrastructure being C or C++, yeah, and just as well, BUT the reason for this is pragmatic (you have lots of highly skilled programmers available, you can depend on the standards used, and, most importantly, you can close the source*)

    * I'm sorry to bruise your developer's ego this way, but the people who sign your check did not choose C++ because it's so wonderful, they chose it because they must use a compiled language.
    I honestly don't understand what you mean by this. Could you elaborate. Seems to be at the center of your argument, but I'm not sure what you mean by closing the source in the context of C and C++ as opposed to interpreted languages.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  11. #41
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MK27 View Post
    ...and sitting with a keyboard is much more awkward than sitting with a paper and pen.

    ...


    I think trying to contradict this one will be like trying to claim you prefer a phone booth to a couch -- maybe, but if so your head is really screwed up.
    Erm, I like to sit at a keyboard when writing the stories, you know...
    Pen and paper makes my hand hurt and it just takes so long time -_-

    Not if story A is actually enjoyable whereas story B was a piece of half thought out crap. Writing skills are completely different than typing skills. IMO "typing skills" or "computer skills" are a completely irrelevant distraction there. Going with the KISS philosophy, it is important to consider what the nature of your task is. It does not involve a computer, and the computer cannot help you do it better, so the computer amounts to an unnecessary complication. A lot of very famous and/or successful writers cannot type at all. No doubt, a lot of untalented hacks churn out ad copy, PR material, and bland reportage quickly at a keyboard. They might as well, since there is no point wasting time on the activity.
    This discussion is only about typing speed. Let all other factors be the same. Skill, the story, etc. Only the typing speed.
    Like if I would write with a pen and paper instead of a computer. It just wouldn't be as fast (not to mention my wrist would hurt if I had to write down all that text on paper with a pen)!
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #42
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    I see debates about C vs C++ and C++ vs C and they are all equally as ignorant. Use what works. However my language of choice is C++ and I have no reason to look elsewhere. It fulfills all the requirements that I need and I have a lot of experience with it. Plus it is my personal preference so all in all it works for me.

    I find people that are 'language hookers' if you will and pick up this or that new language all the time. The problem I have with those types is that while they have an impressive resume they usually suck in all of the languages. Point being you cannot be an expert at every language - it's just not possible. And although core computer science can be applied to any language it still does not flesh itself out as to be so black and white in the real world. I'm a fairly decent C++ programmer and I also know C#. However, I would not say I'm a professional level C# programmer even though I have done C# professionally. My skill level in C# is not where I think it should be for a C# dev. Now perhaps I am underestimating myself or perhaps it is because I'm comparing my C# experience to the time it took me to become what I would call 'decent' at C++. And I'm not just talking code here or technical stuff b/c that is first or second year stuff. Being good at a language to me means knowing how and when to apply it to solve real world problems. Any monkey can learn syntax but it takes a programmer to apply the language effectively. That skill is not something you learn overnight and usually is the result of many previous failed design attempts.

    My advice is to learn languages but pick one, perhaps two, as your core language. You can't and won't be great at all of them but you can focus your efforts on a few of them and come out looking pretty good. Programming is a lot more than just writing code in this language or that.
    Last edited by VirtualAce; 02-07-2010 at 02:28 PM.

  13. #43
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    This discussion is only about typing speed. Let all other factors be the same. Skill, the story, etc. Only the typing speed.
    You are now saying, "Let's just presume I am actually an awesome cook, so I know how to make great food, and now reconsider my argument about how the microwave is much more convenient and I make my best food thanks to the ease and convenience of the microwave. Then we can prove only losers cook with gas."

    I'm afraid I can't give you that, Elysia. It makes much more sense for me to believe that you have little or no interest in cooking (which is totally fine) but are fascinated with technology (also fine) so you would be a great candidate to do authentically enthusiastic infomercials about microwave ovens.

    Quote Originally Posted by Mario F.
    Seems to be at the center of your argument, but I'm not sure what you mean by closing the source in the context of C and C++ as opposed to interpreted languages.
    Consider web technology: since server side interpreted programs remain on the server and are not exposed to the public, the source can remain secure. And lo and behold, the biggest realm for interpreted language programming is server side programming!

    Why don't they continue to use C/C++ or some other compiled language? Because they don't have to. Otherwise PHP, etc, would not even exist. That stuff could be completely replaced with C/C++. Hold your breath. DAE's argument that the quality of the code is worse has nothing to do with the language, as we know, and everything to do with inexperienced developers.

    The REAL reason you need to use a compiled language with commercial software is so you can distribute product with no source code. That is not possible in perl or python -- the program is the source code. All this stuff about performance and my favourite syntax is tripe, or 80-90% so.

    Another big reason is this one:
    Quote Originally Posted by Bubba View Post
    you cannot be an expert at every language -- my language of choice is C++ and I have no reason to look elsewhere.
    And it is totally a good reason, but this does not make C/C++ (or any compiled language) the ultimate omega language. Compiled languages and their experts are a necessity, and I don't think anyone is in a big rush to create a new one.

    But, while the realm for compiled language programming will (by necessity) always exist, it is shrinking, just like the realm for assembly did. As DAE points out, Google loves python and it is rapidly replacing C++ in a lot of other areas too, me thinks -- like a lot of new projects that once upon a time would have been C++ are now python, but of course they are generally open source (and probably pre-empt or replace closed source alternatives). This is precisely because of the "development advantages" Elysia has been plugging. They are simply much more pronounced in python, so people who like to program in C++ often enough end up liking python even better. Or else they skip C++ (skip C!) and go straight into that new niche.
    Last edited by MK27; 02-07-2010 at 02:51 PM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  14. #44
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    ...compiled language with commercial software is so you can distribute product with no source code
    That's not entirely accurate when it comes to C#. It is compiled but into MSIL which is very simple to reverse engineer since there is a 1 to 1 translation from C# to MSIL. In order to get a true binary C# must be compiled into native machine code and then you lose most of the size and speed benefits of C#. At that point it looks pretty much like C/C++ does when it is compiled to machine code and it must bring in all the libs it relies on - which is usually far more than C/C++ relies on.

  15. #45
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by MK27
    But the REAL reason you need to use a compiled language with commercial software is so you can distribute product with no source code. That is not possible in perl or python -- the program is the source code.
    Possible inconsistencies in the exact version of the Python interpreter aside, it is possible to distribute a Python program without distributing the source code, i.e., by distributing the compiled bytecode. It is also possible to embed a Python interpreter in order to avoid an interpreter incompatibility. In theory, there is no reason why the same cannot be done for Perl.

    Consider also why a product like Zend Guard exists for PHP: server side scripts are distributed, and the developer may wish to avoid giving out the source code.

    EDIT:
    Oh, and then there are tools available to translate Python code into native executables rather than just Python bytecode. Again, this could be applied to any language whose programs are otherwise normally interpreted from source at run time.
    Last edited by laserlight; 02-07-2010 at 02:51 PM.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 3
    Last Post: 01-21-2010, 04:40 PM
  2. What language did they make Java in?
    By jverkoey in forum A Brief History of Cprogramming.com
    Replies: 17
    Last Post: 07-03-2005, 04:18 PM
  3. Strange loop
    By D@rk_force in forum C++ Programming
    Replies: 22
    Last Post: 12-18-2004, 02:40 PM
  4. Language of choice after C++
    By gandalf_bar in forum A Brief History of Cprogramming.com
    Replies: 47
    Last Post: 06-15-2004, 01:20 AM
  5. Language Script..
    By vasanth in forum A Brief History of Cprogramming.com
    Replies: 12
    Last Post: 03-30-2003, 06:48 AM