************ Introduction ************ Crowbar: the good parts of C, with a little bit extra. **This is entirely a work-in-progress, and should not be relied upon to be stable (or even true) in any way.** Crowbar is a language that is derived from (and, wherever possible, interoperable with) C, and aims to remove as many `footguns`_ and as much needless complexity from C as possible while still being familiar to C developers. .. _footguns: https://en.wiktionary.org/wiki/footgun Ideally, a typical C codebase should be straightforward to rewrite in Crowbar, and any atypical C constructions not supported by Crowbar can be left as C. Motivation ========== * `Rust is not a good C replacement `_ Journal ======= * `Crowbar: Defining a good C replacement `_ * `Crowbar: Simplifying C's type names `_ * `Crowbar: Turns out, language development is hard `_ Comparison with C ================= The :doc:`/vs-c` is an informal overview of the places where Crowbar and C diverge. Syntax ====== :doc:`/syntax` Semantics ========= TODO Discuss ======= * `announcement mailing list `_ * `permanent discussion mailing list `_ * ephemeral discussions via IRC: #crowbar-lang on freenode (`join via irc `_, `join via web `_)