Article Publishing
~ running away from c
Welcome to another edition of Project Idiot where comical documentation of idiots seen on planet earth is here.



Often a programmer, Linux and BSD ones especially, will write a great program in C and brag about how C is so great and wonderful and how their application proves that C is such a great language and anything still can be done in C and you don't need a higher level language. C is the application development language of Linux and BSD. Then all of a sudden hypocrite decides, whelp, my app needs an extension system so let's embed, well, Scheme or Lisp into it.. or Lua, or python plugins!

Wow idiot you just proved that:

A) C is lacking, because you aren't using C to actually add features to your app now. You chose a higher level language while you idiotically ten minutes ago bragged about how C is still great for everything. Yet now it's time (i.e. Emacs) to extend your application and you add a fucking garbage collected non C language (e-Lisp) to your program? Here's a thought you fucking moron: why don't you develop your application in E-lisp or lisp in the first place, then you don't have to maintain a C source base plus an extension system. Oh yes I know all your obnoxious excuses: well the source was originally written in C therefore, well, we're sticking with C. The code was written in 1975 we can't change it now. Oh but idiot I thought back in 1975 you were bragging about how C is so great and is good for pretty much everything, and now you paddle back and write a fucking 80 percent of your application in extensions in a non C language? You fucking tripe.

B) C doesn't have STRINGS (just pointers to chars) so you run away from C quickly as soon as you need either a reference counted or garbage collected string... no one is going to write plugins using low level pointers to chars, for example, to modify strings in a text editor which is why higher level languages like e-lisp or python or lua are used for extending editors (and photoshop, and other tools). So what pray fucking tell are you doing managing pointers to chars and other memory in the main application if the main application is larger source base than most of the plugins? I.e. once again the hypocrite brags about how he can manage his memory in C but then when he goes to write a plugin in Lua or e-Lisp, the faggot doesn't bother managing his memory, because, yes, he's a hypocrite and prefers to write in Plain C for 50 percent of the code, or 90 percent, while his one little gay 70 line plugin is all managed memory with no pointers to ch ars. I'm not understanding this faggotry: masochism? You love to manage memory in a huge major source base, but your fucking plugin is python or lua? Gay whelp yes.

C) nothing needs to be said here. This is point number C!


Windows uses C Everywhere

And then there are the windows users who basically use an entire operating system written in C with so many bloody API calls to C that at least 20 percent of those calls are going to have an incorrect parameter sent in that's going to cause an access violation, somewhere in one of the programs, because the parameter sent in to the plain C function was incorrect but an intermittent bug. Or, half of the Windows C code is dangerous security hazard because of buffer overflows and unprotected calls. Slowly microsoft is patching their operating system.. How many patches is on the counter now? One million? A few hundred thousand?

Now, what are some constructive solutions to the problem? As an example, let's say you are starting a new project. Simple. Don't use fucking C. Use a high level language that still has close performance to C, such as GoLang, then write plugins for the software in GoLang, not python or lua or other Ruby-ish cool and hip jokes. Python is okay, but what the fuck is Lua? A pascal rip off that still confuses equality with assignment and let's airplanes become birds (dynamic language)... maybe the worst of C and the worst of Pascal and the worst of Python/Ruby combined all into one cool and hip thingy that kind of looks like where TurboPascal would have gone if they confused Turbo C with Turbo Pascal at certain points in time and dipped in a little ruby to the mix? Seriously, if you're going to write an application why bother using C and then extending it with Lua? Why not just write it in Golang and extend it in GoLang?

Why are there all these needs for multifaggot languages when one can stick with a good single language for most stuff? By all means if your gay application needs multiple languages to write extensions in it then do that if you have to, but what the fuck do we need all this steaming pile of shittery for? Why can't someone just take for example a GoLang executable and extend it with more golang plugins? That's what I've done with Delphi programs, but Delphi still has the disadvantage of needing to free and create non stack objects where as GoLang has garbage collection. Languages like GoLang and Delphi have automatically managed strings so there is no need for farting around with pointers to chars, although some efforts may be needed in order to make garbage collection work across a plugin system with two different memory manager instances.

Using C if You Absolutely Have To

Even Joel Spolsky documented this running away from C behavior before... he claimed that he mostly used Basic, (basic, hahaha what a joke) because C++ was too cumbersome for most of his tasks. Basically he was saying that he would use Basic for most stuff, back when Visual Basic existed and there was no dot net, and then only use C when you had to write some strange low level tool that basic could not do. i.e. run away from C and use a high level language where possible, but use C when you need to. Okay but with GoLang is there even a need to run to C occasionally, or is the need so small now that basically everything can be done in Golang with a rare item every 20 years needing to be written in C?

Same goes for Oberon where you can escape the oberon main language by calling in the System module. But then the question is begged, why in fucks name are people still starting new projects in C these days? Are we still needing yet another fucking language? It seems like the more languages roll out, the more people use C, which is completely idiotic and shows that either our languages are pure shit that are coming out, or that people are morons. Likely a combination of the former and latter.
Copyright © War Strategists, M.G. Consequences 2009-2017    Help! Edit Page