|
1 |
| -<!-- START doctoc generated TOC please keep comment here to allow auto update --> |
2 |
| -<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> |
3 |
| - |
4 |
| - |
5 |
| -- [Goals](#goals) |
6 |
| - - [“Don’t break my code.”](#dont-break-my-code) |
7 |
| - - [Backward compatibility](#backward-compatibility) |
8 |
| - - [Zero runtime cost](#zero-runtime-cost) |
9 |
| - - [Forward compatibility](#forward-compatibility) |
10 |
| - - [“Don’t shoot me in the foot.”](#dont-shoot-me-in-the-foot) |
11 |
| - - [Opt-in behavior](#opt-in-behavior) |
12 |
| - - [Simple scoping](#simple-scoping) |
13 |
| - - [Static analyzability](#static-analyzability) |
14 |
| - - [“Don’t make me overthink.”](#dont-make-me-overthink) |
15 |
| - - [Syntactic locality](#syntactic-locality) |
16 |
| - - [Semantic clarity](#semantic-clarity) |
17 |
| - - [Expressive versatility](#expressive-versatility) |
18 |
| - - [Cyclomatic simplicity](#cyclomatic-simplicity) |
19 |
| - - [“Make my code easier to read.”](#make-my-code-easier-to-read) |
20 |
| - - [Untangled flow](#untangled-flow) |
21 |
| - - [Distinguishable punctuators](#distinguishable-punctuators) |
22 |
| - - [Terse parentheses](#terse-parentheses) |
23 |
| - - [Terse variables](#terse-variables) |
24 |
| - - [Terse function calls](#terse-function-calls) |
25 |
| - - [Terse composition](#terse-composition) |
26 |
| - - [Terse partial application](#terse-partial-application) |
27 |
| - - [Other Goals](#other-goals) |
28 |
| - - [Conceptual generality](#conceptual-generality) |
29 |
| - - [Human writability](#human-writability) |
30 |
| - - [Novice learnability](#novice-learnability) |
31 |
| - |
32 |
| -<!-- END doctoc generated TOC please keep comment here to allow auto update --> |
33 |
| - |
34 | 1 | # Goals
|
| 2 | +Living Document. J. S. Choi, 2018-12. |
| 3 | + |
35 | 4 | There are seventeen ordered goals that the smart step syntax tries to fulfill,
|
36 | 5 | which may be summarized,\
|
37 | 6 | “Don’t break my code,”\
|
|
0 commit comments