[dev] Announcement: Backporting the fun into C

From: Martti Kühne <mysatyre_AT_gmail.com>
Date: Sun, 22 Nov 2015 11:21:13 +0100

Hello community

From the perspective of someone who started off with the fairy-tale
technologies in web development, I find working with C proves as quite
an interesting experiment. I used to slip into rewriting more or less
the same things for different code bases and it really irks me that
there are virtually no interfaces that depict flows and
transformations that are used all the time when writing code. So I
started working on my own "STL", a library which I use as my main code
pivot [0].

With the techniques applied by the two central data types/interfaces,
bulk.{c,h} and buffer.{c,h}, my code becomes more or less memory safe
and fun to work with, as if I was using one of those fancy languages
that take all that work away from me, without having to leave the
realms of standard C. This might partially be the case because these
data types are of my own design and I have their details in the back
of my mind, but I think it does go further than just that. I coded up
a few more projects [1], [2] based on the prospects this has added to
my programming capacities and they enabled me to catch up with my own
webserver [3] as well.

My experience with suckless software has shown me pretty clearly that
the tradeoffs in code quality around here are not really acceptable
for code that I wanted both to release or work on myself, and let's
face it, it doesn't help to just pretend these issues don't exist.
That also means, no, I won't cut corners like to leave the releasing
of resources and file descriptors to the operating system or use die()
in what is supposed to be library code where error handling must
clearly be up to the caller. Other people should actually be able to
write programs with it, too, as that's a legitimate aspect of the term

Really, thanks for getting me into C, but no thanks for the dragons
that I started to recognize learning it.


[0] https://github.com/mar77i/bulk77i/
[1] https://github.com/mar77i/calc77i/
[2] https://github.com/mar77i/ccheck/
[3] https://github.com/mar77i/web77i/
Received on Sun Nov 22 2015 - 11:21:13 CET

This archive was generated by hypermail 2.3.0 : Sun Nov 22 2015 - 11:24:09 CET