doc: Tweak the wording of the memory model goals

This commit is contained in:
Patrick Walton 2012-10-09 21:39:18 -07:00
parent 6da09c3b43
commit d9317a174e

View File

@ -988,16 +988,17 @@ illuminate several of Rust's unique features as we encounter them.
Rust has three competing goals that inform its view of memory: Rust has three competing goals that inform its view of memory:
* Memory safety: memory that is managed by and is accessible to the * Memory safety: Memory that is managed by and is accessible to the
Rust language must be guaranteed to be valid; under normal Rust language must be guaranteed to be valid. Under normal
circumstances it must be impossible for Rust to trigger a circumstances it must be impossible for Rust to trigger a
segmentation fault or leak memory segmentation fault or leak memory.
* Performance: high-performance low-level code must be able to employ * Performance: High-performance low-level code must be able to employ
a number of allocation strategies; low-performance high-level code a number of allocation strategies. Tracing garbage collection must be
must be able to employ a single, garbage-collection-based, heap optional and, if it is not desired, memory safety must not be compromised.
allocation strategy Less performance-critical, high-level code should be able to employ a single,
* Concurrency: Rust must maintain memory safety guarantees, even for garbage-collection-based, heap allocation strategy.
code running in parallel * Concurrency: Rust code must be free of in-memory data races. (Note that other
types of races are still possible.)
## How performance considerations influence the memory model ## How performance considerations influence the memory model