From aba8764322293860de6e5d5b8c63bc33561bcf89 Mon Sep 17 00:00:00 2001 From: Melody Horn Date: Wed, 28 Oct 2020 18:10:18 -0600 Subject: rebalance introductory material --- index.rst | 52 ++++++++++++++++++++++++++++++++++++++++++++++------ intro.rst | 47 ----------------------------------------------- 2 files changed, 46 insertions(+), 53 deletions(-) delete mode 100644 intro.rst diff --git a/index.rst b/index.rst index c3fa323..5749559 100644 --- a/index.rst +++ b/index.rst @@ -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 `_ + +Journal +======= + +* `Crowbar: Defining a good C replacement `_ +* `Crowbar: Simplifying C's type names `_ +* `Crowbar: Turns out, language development is hard `_ + +Discuss +======= + +* `announcement mailing list `_ +* `permanent discussion mailing list `_ +* ephemeral discussions via IRC: #crowbar-lang on freenode (`join via irc `_, `join via web `_) + +Specification +============= .. toctree:: :maxdepth: 2 - :caption: Contents: - intro vs-c tagged-unions types diff --git a/intro.rst b/intro.rst deleted file mode 100644 index c77b2c7..0000000 --- a/intro.rst +++ /dev/null @@ -1,47 +0,0 @@ -************ -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 `_) -- cgit v1.2.3