libk  Update of "libk"

Overview

Artifact ID: d7f014f62b56680d7c008eedc6f224bd108d17eecbc1e55e51c802c104304012
Page Name:libk
Date: 2019-10-23 10:27:16
Original User: lexi
Parent: 02602102c6b65a1d746d576faf8a92a654908465704512608401c79d08c8ced6 (diff)
Next d4847387e285fc6ff80232ea85b0a137a7e383b923bbe5c4b8baabf83eb34c29
Content

libk

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 old and ailing thing, marked by idioms that otherwise would easily earn any CS student an F, replete with 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 long since been pushed out of the field.

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.

for an in-depth look at the project's aims, structure, and basic strategy, take a look at the libk manifesto.

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.

while not yet suitable for application development, a sub-project exists to build a working text editor, ked, with no dependencies besides libk. it is our hope that this project will help us to improve libk's API and keep the developers from abstracting ourselves away from real-world needs. unlike libk itself, ked development is open and anyone can sign up to participate.

please note that we place a very high importance on maintaining a mutually supportive, compassionate, and productive environment where our contributors can feel valued regardless of their background, identity, or level of skill; behavior that threatens this environment will not be tolerated.