Crucial in the Steelman requirements were:
- A general, flexible design that adapts to satisfy the needs of embedded computer applications.
- Reliability. The language should aid the design and development of reliable programs.
- Ease of maintainability. Code should be readable and programming decisions explicit.
- Easy to produce efficient code with. Inefficient constructs should be easily identifiable.
- No unnecessary complexity. Semantic structure should be consistent and minimize the number of concepts.
- Easy to implement the language specification. All features should be easy to understand.
- Machine independence. The language shall not be bound to any hardware or OS details.
- Complete definition. All parts of the language shall be fully and unambiguously defined.