deathshadow
Veteran Member
- Joined
- Jan 4, 2011
- Messages
- 1,378
I'm seriously considering kicking Pascal to the curb. As high level languages go it's always been my first love -- the strict typecasting, the forward declarations, the verbose non-cryptic structures...
C pisses me off a LOT for being needlessly and pointlessly cryptic, letting you create code structures that should never exist in the first place, concepts like range checking being an absolute joke, the whole separate .h .c rubbish, etc, etc...
But after years of using C on other platforms (AVR, ARM, MIPS, Windows), the limitations of Pascal are far outweighing the advantages for me at this point in x86 development.
More so my recent encounters with the "modern" Pascal community via Delphi, xCode, and FPC has pretty much proven to me that the modern Pascal "developer":
1) Talks the talk but can't walk the walk
2) Guards their own efforts, codebases and "breakthroughs" like Gollum with his uncle huffing "precious".
3) Seems to actually want to actively discourage people from using the language.
The first is no surprise, I've been dealing with that on the web technologies front since I started dealing with web dev. You deal with ASP, PHP, SQL, HTML, CSS, and JS long enough, you get used to 99% of the "experts" talking out their arse!
The second is disturbing after years of working on web technologies where everything is "open by design" and communities where you ask a question, show some code, and other people will just improve it and help you because they can. Honestly the response I've gotten has me re-evaluating my low opinion of the FLOSS movement as I've not seen developer behavior this mercenary since the "paid by the KLOC" days.
The third is just... I mean I thought I was brusque and direct... the difference I think is that when I am so, I'll take the time to explain it and handhold the person on the other end to a better solution -- not vaguely mention that "there is a solution but I'm not telling you, hahahahah" which seems to be all three failings rolled into one response and then repeated nauseam.
Add in that same way, the fact that Pascal mostly remains hobbled by the compiler including things whether you use them or not, and the lack of proper "define" (since constants are just variables with a predefined value sucking down DS space) much less macro's...
... and I'm done. ME, Mr. Pascal, worshipper at the throne of all things Wirth... is DONE with Pascal.
So... reasoning aside, which C compiler would you folks recommend for DOS development with a TINY target, likely with NASM .obj files linked in? I'm looking at Borland C++ 5.0 since I have a copy AND the manuals... so a good place for me to start.
But I'm wondering if anyone has tried multiple versions or has any other recommendations for me at least to try. I'm likely going to put together a small sub-test to run across multiple compilers to see which does what I'm trying to accomplish the best... but I really don't know what's out there as I've never really used C under DOS before.
Windows? Unix? Linux? OSX? AVR? ARM? Hell, I've even done C for the Commodore 64... But plain Jane DOS? Much less with a TINY memory model? Never done it before. For the most part back in the day when that was my code target, C compilers were still considered something of a joke.
STILL not my first choice of a language, but the state of compilers may be making the choice for me -- as at least it has proper "define", some compilers offer macros, and if I omit "#include stdio.h" I can have a clean baseline for implementing my own optimized routines instead of blindly trusting some library that **** knows how "optimized" it is... or isn't... much less blindly including constants and procedures I don't even plan on using.
Wait, he's not saying that most stdio libraries aren't properly optimized, is he? Given my experience with "libraries" and "frameworks" the past decade on web technologies, I take nothing for granted anymore. See the stupid "leftpad" fiasco for node/babel where not only were people blindly including it when it could be removed from the source tree up-control from you at ANY time breaking the web when it was removed, NOBODY bothered looking at the function to see if it was well coded or not, much less if it the creator was even competent enough to be writing code for others to use!
I'm finding anew that my disgust knows no bounds.
C pisses me off a LOT for being needlessly and pointlessly cryptic, letting you create code structures that should never exist in the first place, concepts like range checking being an absolute joke, the whole separate .h .c rubbish, etc, etc...
But after years of using C on other platforms (AVR, ARM, MIPS, Windows), the limitations of Pascal are far outweighing the advantages for me at this point in x86 development.
More so my recent encounters with the "modern" Pascal community via Delphi, xCode, and FPC has pretty much proven to me that the modern Pascal "developer":
1) Talks the talk but can't walk the walk
2) Guards their own efforts, codebases and "breakthroughs" like Gollum with his uncle huffing "precious".
3) Seems to actually want to actively discourage people from using the language.
The first is no surprise, I've been dealing with that on the web technologies front since I started dealing with web dev. You deal with ASP, PHP, SQL, HTML, CSS, and JS long enough, you get used to 99% of the "experts" talking out their arse!
The second is disturbing after years of working on web technologies where everything is "open by design" and communities where you ask a question, show some code, and other people will just improve it and help you because they can. Honestly the response I've gotten has me re-evaluating my low opinion of the FLOSS movement as I've not seen developer behavior this mercenary since the "paid by the KLOC" days.
The third is just... I mean I thought I was brusque and direct... the difference I think is that when I am so, I'll take the time to explain it and handhold the person on the other end to a better solution -- not vaguely mention that "there is a solution but I'm not telling you, hahahahah" which seems to be all three failings rolled into one response and then repeated nauseam.
Add in that same way, the fact that Pascal mostly remains hobbled by the compiler including things whether you use them or not, and the lack of proper "define" (since constants are just variables with a predefined value sucking down DS space) much less macro's...
... and I'm done. ME, Mr. Pascal, worshipper at the throne of all things Wirth... is DONE with Pascal.
So... reasoning aside, which C compiler would you folks recommend for DOS development with a TINY target, likely with NASM .obj files linked in? I'm looking at Borland C++ 5.0 since I have a copy AND the manuals... so a good place for me to start.
But I'm wondering if anyone has tried multiple versions or has any other recommendations for me at least to try. I'm likely going to put together a small sub-test to run across multiple compilers to see which does what I'm trying to accomplish the best... but I really don't know what's out there as I've never really used C under DOS before.
Windows? Unix? Linux? OSX? AVR? ARM? Hell, I've even done C for the Commodore 64... But plain Jane DOS? Much less with a TINY memory model? Never done it before. For the most part back in the day when that was my code target, C compilers were still considered something of a joke.
STILL not my first choice of a language, but the state of compilers may be making the choice for me -- as at least it has proper "define", some compilers offer macros, and if I omit "#include stdio.h" I can have a clean baseline for implementing my own optimized routines instead of blindly trusting some library that **** knows how "optimized" it is... or isn't... much less blindly including constants and procedures I don't even plan on using.
Wait, he's not saying that most stdio libraries aren't properly optimized, is he? Given my experience with "libraries" and "frameworks" the past decade on web technologies, I take nothing for granted anymore. See the stupid "leftpad" fiasco for node/babel where not only were people blindly including it when it could be removed from the source tree up-control from you at ANY time breaking the web when it was removed, NOBODY bothered looking at the function to see if it was well coded or not, much less if it the creator was even competent enough to be writing code for others to use!
I'm finding anew that my disgust knows no bounds.