Low context-sensitivity principle

Pull request

Table of contents

Problem

Carbon needs a consistent policy on how willing we are to make syntax dependent on context.

Background

Rust has a statement of their ergonomic principles that talks about their approach to context dependence.

Proposal

We propose adding (docs/project/principles/low_context_sensitivity.md)[/docs/project/principles/low_context_sensitivity.md], which has the details.

Rationale based on Carbon’s goals

This proposal supports the goal of making Carbon code easy to read, understand, and write particularly prioritizing “read and understand” over “write”.

It supports software evolution by allowing code to be moved or refactored with fewer changes.

Further it supports developing performance-critical software in Carbon by making performance predictable.