write down some design principles to get started with

This commit is contained in:
Kat Marchán 2020-12-15 18:46:32 -08:00
parent bb9562e4fc
commit b4067bdfad
No known key found for this signature in database
GPG Key ID: AEB529C08A3C7E9E
2 changed files with 15 additions and 1 deletions

View File

@ -14,6 +14,20 @@ kdl is still extremely new, and discussion about the format should happen over
on the [discussions page](https://github.com/kdoclang/kdl/discussions). Feel free
to jump in and give us your 2 cents!
## Design Principles
1. Maintainability
1. Flexibility
1. Cognitive simplicity
1. Ease of de/serialization
1. Ease of implementation
These are the guiding principles behind the design of KDL, in order of
importance. These principles will hopefully be useful in tie-breaking and
otherwise directing specific decisions when it comes down to it. They are
intentionally vague when it comes to specifics, but more concrete definitions
for each one will be settled on as the project matures.
## Implementations
* Rust: [kdl-rs](https://github.com/kdl-org/kdl-rs)

View File

@ -42,7 +42,7 @@ file/stream (an `EOF`).
When present in the list of Properties and Values, plain Values (those not
attached to a Property), each "anonymous" value should be treated as a
Property whose key is its current index among _anonymous values_ in the same
Property whose key is its current index among _values_ in the same
node, starting from 0, as a string. Named properties do not count towarrds
this index.