libk  Changes To libk

Initial version of "libk"

            1  +<h1>libk</h1>
            2  +<table><tr>
            3  +<td width="200pt" valign="top">
            4  +  *  [/doc/tip/libk.md|libk manifesto]
            5  +  *  [rules|rules and guidelines]
            6  +  *  [roster|project personnel]
            7  +  *  [ports|porting progress]
            8  +</td>
            9  +<td>
           10  +libk is an (admittedly ambitious) project to create a reasonably cross-platform replacement for libc that uses and encourages modern coding techniques and idiomatic, efficient use of C. the existing standard library, libc, is an [http://man7.org/linux/man-pages/man3/errno.3.html|old and ailing thing], marked by idioms that otherwise would easily earn any CS student an F, replete with [http://man7.org/linux/man-pages/man3/srand.3.html|potholes and traps] for the unwary and novice alike, and was designed at a point in history where computers were still very new and anyone who knew what they were doing had [https://timeline.com/women-pioneered-computer-programming-then-men-took-their-industry-over-c2959b822523|long since been pushed out of the field].
           11  +
           12  +in short, libc is simultaneously a nonviable, inflexible, dangerous basis for nontrivial new projects, and obligatory for all but the most low-level work in C, forcing coders to spend a great many hours writing blast shields around its entry points. it is our aim to wash away this stain on the CS field, and hopefully make C a great deal more pleasant to write by giving coders a standard library that doesn't fight them every step of the way.
           13  +
           14  +for an in-depth look at the project's aims, structure, and basic strategy, take a look at the <strong>libk manifesto</strong>.
           15  +
           16  +libk is still a very new project, and we're very much looking for new contributors, whether in the role of developer, reviewer, tester, technical writer, or sponsor - in particular, those who would take on the monumental task of porting libk to windows and maintaining a windows build chain; we currently have nothing in the way of a windows team. however, even if you're new to low-level programming, you can still play an important part and meaningfully influence the shape libk ultimately takes, and if you can learn, we can teach.
           17  +
           18  +<em>please note however we place a very high importance on maintaining a mutually supportive, compassionate, and productive environment where our contributors can feel valued </em>regardless<em> of their background, identity, or level of skill; behavior that threatens this environment will not be tolerated.</em>
           19  +</td>
           20  +</tr></table>