First draft of a README for the principles/ directory. (#56)

* First draft of a README for the principles/ directory.

* More closely mirror the relevant section from the goals doc.

* Reword bit about excluding using chandlerc@'s suggested text.

* Link to goals doc.

* Update docs/project/principles/README.md

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>

Co-authored-by: Jon Meow <46229924+jonmeow@users.noreply.github.com>
This commit is contained in:
josh11b
2020-06-04 16:22:19 -07:00
committed by GitHub
co-authored by Jon Meow
parent 0641a7f30b
commit e8cb551d2b
+22
View File
@@ -0,0 +1,22 @@
# Principles
<!--
Part of the Carbon Language, under the Apache License v2.0 with LLVM
Exceptions. See /LICENSE for license information.
SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-->
Some language [goals](../goals.md) will have widely-applicable, high-impact, and
sometimes non-obvious corollaries. We collect concrete language design
principles in this directory as a way to document and clarify these. Principles
clarify, but do not supersede, goals and priorities. Principles should be used
as a tool in making decisions, and to clarify to contributors how descisions are
expected to be made.
A key difference between a principle and the design of a language feature is
that a principle should inform multiple designs, whereas a feature's design is
typically more focused on achieving a specific goal or set of goals. The
principle can help acheive consistency across those multiple designs.
Note that these principles seek to establish both the approaches the project
wants to pursue, as well as those we want to exclude.