> PPA wrote: > Gerhard Fiedler wrote: >> For me, being able to compile the program in different versions of a >> compiler of the same vendor is the lowest level; I wouldn't even >> call this "portability", it's more like version compatibility. The >> next level is being able to compile on compilers from different >> vendors (on the same operating system); this maybe I'd start to call >> portability. Then come different operating systems and different >> target processors; here we get into what I call portability. > > My assertions were a bit simplified; I'm sometimes a bit lazy on my > keyboard... Sure that you are right on these points. > >> So how does this aspect look for Pascal? (This is not a rhetorical >> question; I really want to know from someone who uses Pascal >> portably.) >> > Is this irony? Well as I already said, you may use $ifdef constructs > in "the units that gather all portability sensitive parts" to manage > portability, say, from TP3 to Delphi (same vendor) or FPC (near > compatible one) or Acme Pascal or whatever one. > > As I said no less no more than with C. OK, there may be more $ifdef > than #ifdef due to language compatibility, but these language > differences are very tight (more than in C witch may be qualified as > nearly fully "standard"); that's not "impossible", please stop saying > that: that's just a little bit harder than with C, no more. If you > are used to do that that's not really boring. I was asking specifically about what I classified as "portability" above, and not ironically at all. But you didn't answer the question. Again: How does the portability aspect look with Pascal? Can you take your sources and compile on Linux, Windows, Solaris, Unix? Can you create executables for x86, x64, Itanium, ARM? Can you use a compiler (on a platform that's already supported by your sources) from a different vendor (that you didn't consider when writing your sources) and with little or no changes compile your sources with it? Is this possible? Is this actually being done with Pascal? If so, since when? (Again, this is not ironical. This is just not answered yet. I thought this isn't really possible, in the sense that it's commonly being done. You seem to say the contrary, but not with the clarity I'd like to have.) >> Besides some odd vendors of small micro compilers, there aren't >> really any C dialects. The few there are are really niche thingies, >> mostly restricted to the PIC world (and maybe the one or other small >> micro, but I think the PIC compilers are worse than most others in >> this respect). In the great scheme of C, they almost play no role at >> all. Every compiler that wants to be worth its money has to be >> standard compatible, and therefore allows programming in standard C >> (or C++). Which is more common as you seem to think. >> > You said "odd vendors", "niche thingies", "almost no role at all". > There is always special needs and niches; people that are there would > be upset to read your comments; some niches may be less than a few > percent of percent of all the "great scheme of C world", but this may > represent thousands of people that are NOT playing "no role"; Whoever wants to be upset about what I wrote here, be my guest :) See, I'm one of those "niche C" users when I program in C on a PIC with a not quite standard compliant C compiler. There's nothing wrong with acknowledging that this is a tiny fraction of the usage of C, so when talking about C in general, this simply doesn't count a lot. But even then (in the PIC world, for example)... there are compilers that are standard C, and there are compilers that aren't. And there are compilers that are almost standard C with a few documented differences. And there are compilers that call themselves C but are so far away from the standard that they don't even list the differences. So I have a choice... If I use one of the non-standard ones, I know that I'm not programming in standard C, but in a proprietary language with some similarity to standard C. This is different from not having a standard at all -- /very/ different, IMO. > On "has to be standard compatible" that's the point. Even if the > standard is not good enough? If the standard isn't good enough, it should be improved. This is what for example is being done with the C and C++ standards. Not to everybody's liking, of course... Some think more changes should be made, some think that other changes should be made -- it's difficult to please everybody :) And once there is a certain amount of source code out there that relies on a standard, every improvement of that standard has to take the issue of backwards compatibility into account. But it's writing standard C++, for example, that allows me to pick any old standard compliant compiler and compile my sources, and in general, it'll just work. (Repeating... I'm not saying C or C++ are good, or better than something else. But people are saying that Pascal is better than C, yet C is more popular, vastly more popular, than Pascal. There must be a reason... and it's probably /not/ business. Microsoft didn't invent C, they're not married to C, and Microsoft isn't a reason for C's popularity. The calling convention for the Win16 API is the Pascal calling convention. When they switched to the C calling convention for the Win32 API, they probably followed instead of lead. There also seems to be a consensus that Unix wasn't really commercial either.) > Do you think that in 2050 we will use the same old low level less > common denominator things? I'm not sure, but I probably won't care. And I sure don't see what this has to do with what I'm doing now. FWIW, I don't think that it'll be that different. We'll just hobble along :) > A language should evolve or die, C as any one; I think it will die > because of these too low level standards that nobody can jump off. Of course it will die, like every other language, sooner or later. But a standard is not something that is necessarily contrary to evolution. And the lack of a standard is not necessarily favorable for a language to prosper. > Other languages are born, some died; see Cobol or Fortran users that > don't want to see the cliff edge: the final fall will be hard - same > for me with my Pascal and its childs? Can be, but in a long time I > hope; there's many choices nowadays; I'm not sure, but I think Cobol is still alive and kicking. I may remember this wrongly, but not so long ago I think I read that the investment in Cobol programming is still among the top few. And I don't think that all the program packages on university computers that are in Fortran will be ported to something else any time soon. Pascal won't die any time soon, either. That's not what I have been writing about. The question is... how many shops do you know that hire Pascal programmers (and pay them well)? FWIW, I just ran a search on careerbuilder.com. Fortran: 13. Pascal: 15. Delphi: 61. Cobol: 99. Python: 276. PHP: 1083. VB: 1173. C++: 1521. C#: 1892. Java: 3901. If this isn't "dead professionally", I don't know what is. (I didn't search for C because unluckily "c" doesn't lend itself too well for a keyword in a text-based search.) > Java (a C child?) engines on chip among other not so new things... I thought those Java chips are pretty much dead. Does anybody know anything about them? Has anybody actually seen one in action? :) > You're saying nice things and you say you don't like what has happened > to it but also you say wrong things. If you gave up on Pascal, maybe > it is because your job cannot be done with it at these times; that's > not the case for everybody so far. Not for everybody, but check out the job market for programmers and tell me that there is a substantial market for Pascal programmers without blushing :) > I just don't like when people are saying that a language cannot do > something without arguments or even that it is dead without > seeing/knowing all the actual reality. This is surprising from > somebody who comes from Pascal... I have asked you, and you haven't responded. I asked about one Pascal source compiling for different target operating systems, different target processors -- and all you came up with was porting something from MS-DOS through Win3.11 to Win32, with the MS-DOS (and Win3.11?) code not having the same functionality as the Win32 code. This is not what I meant; I meant a broader scope. The other question is, and that's the real issue here, why is Pascal dead in professional programming? By "dead" I don't mean that nobody uses it, but for somebody's sake, 6 out of 8846 posted IT jobs on careerbuilder.com mention Pascal, 19 mention Delphi, whereas 672 mention C++ and 1666 mention Java... for me, that's "dead" as a general purpose language. > I may agree on discussions about why Pascal (or whatever language) > does not have found its place, I'd like to hear what you think why Pascal is so unpopular. > Note that the beginning of the thread (not the OP) was on C good and > bad behaviors, on it's poor type checking among other things, not on > if Pascal didn't make it or was dead or not... The thread has evolved, as with you answering me. > You wrote yourself some assertions that can be read as the beginnings > of another stupid language war by saying wrong things, What's wrong in what I said? > On Microsoft vs. Borland, don't forget that Borland C/C++ compilers > was far better than Microsoft ones; all new improvements came from > Borland; Microsoft has copied everything, with the power of > Microsoft, as they do with other tools and good ideas, when finally > they delivered their "revolutionary" Visual tools... This is not > technical, this is business and in this domain they will stay #1 for > a long time I guess. This is exactly what I'm saying. Borland didn't have the economic power to do it the same way as Microsoft, so they should've done it differently. Trying to be the only player (by not standardizing the language) only works well if you can do it like Microsoft and really be the only player. (And even Microsoft standardized .NET and C#, for whatever this is worth... :) > Pascal side, Borland made a nearly de facto standard (the most used I > think); I don't understand why an official standardization was not > done when Borland was on top of the wave; then Pascal activity has > decreased because they had enough concerns to make survive their > non-Pascal tools against the power of Microsoft witch makes business > on everything other than compilers. An excellent technical level is > not enough. Exactly what I'm talking about. > See what Microsoft is giving us at each new good business idea: we > need to come back to school to un-teach all what they teach us last > time, new layers that gives slower software even with a CPU power > that doubles regularly... Definitively not a good model for technical > comparison of why something is popular or not... There is no "technical comparison why something is popular". There are technical comparisons, and there is the attempt of finding out why some things are popular and others not, and how this relates to the technical comparisons. But IMO the popularity of C has not much to do with Microsoft, other than that they provide a decent compiler for Windows that's among the most popular compilers on Windows. Microsoft's compiler is probably very rarely used to compile C sources. Gerhard -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist