diff options
author | Melody Horn <melody@boringcactus.com> | 2020-10-28 18:10:18 -0600 |
---|---|---|
committer | Melody Horn <melody@boringcactus.com> | 2020-10-28 18:10:18 -0600 |
commit | aba8764322293860de6e5d5b8c63bc33561bcf89 (patch) | |
tree | 76b47b2c4dfae621f50bad97f2e17bdb3e4fdc5f /index.rst | |
parent | 7fc5a0d31d617477607c043987d621fac8d48952 (diff) | |
download | spec-aba8764322293860de6e5d5b8c63bc33561bcf89.tar.gz spec-aba8764322293860de6e5d5b8c63bc33561bcf89.zip |
rebalance introductory material
Diffstat (limited to 'index.rst')
-rw-r--r-- | index.rst | 52 |
1 files changed, 46 insertions, 6 deletions
@@ -3,18 +3,58 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -.. include:: README.md +******* +Crowbar +******* -Crowbar Specification -===================== +Crowbar: the good parts of C, with a little bit extra. -Version |version| +**This is entirely a work-in-progress, and should not be relied upon to be stable (or even accurate) 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. + +This site hosts the Crowbar specification. +Additional resources you may be interested in: + +* `sr.ht project hub`_ +* `specification PDF`_ +* `specification EPUB`_ +* `reference compiler`_ + +.. _sr.ht project hub: https://sr.ht/~boringcactus/crowbar-lang/ +.. _specification PDF: /crowbar-spec.pdf +.. _specification EPUB: /crowbar-spec.epub +.. _reference compiler: https://git.sr.ht/~boringcactus/crowbar-reference-compiler + +Motivation +========== + +* `Rust is not a good C replacement <https://drewdevault.com/2019/03/25/Rust-is-not-a-good-C-replacement.html>`_ + +Journal +======= + +* `Crowbar: Defining a good C replacement <https://www.boringcactus.com/2020/09/28/crowbar-1-defining-a-c-replacement.html>`_ +* `Crowbar: Simplifying C's type names <https://www.boringcactus.com/2020/10/13/crowbar-2-simplifying-c-type-names.html>`_ +* `Crowbar: Turns out, language development is hard <https://www.boringcactus.com/2020/10/19/crowbar-3-this-is-tough.html>`_ + +Discuss +======= + +* `announcement mailing list <https://lists.sr.ht/~boringcactus/crowbar-lang-announce>`_ +* `permanent discussion mailing list <https://lists.sr.ht/~boringcactus/crowbar-lang-devel>`_ +* ephemeral discussions via IRC: #crowbar-lang on freenode (`join via irc <ircs://chat.freenode.net/#crowbar-lang>`_, `join via web <https://webchat.freenode.net/#crowbar-lang>`_) + +Specification +============= .. toctree:: :maxdepth: 2 - :caption: Contents: - intro vs-c tagged-unions types |