aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJF Bastien <jfb@chromium.org>2015-10-08 13:45:52 -0700
committerJF Bastien <jfb@chromium.org>2015-10-08 13:45:52 -0700
commit53b51b555c8bf85b7cfaf690e25ce159abb5e362 (patch)
treee0b72165e903694841c18d110c612c7281429d94
parent585f95efe747eea81a43b57f0f20d51129117444 (diff)
downloadnanowasm-design-53b51b555c8bf85b7cfaf690e25ce159abb5e362.tar.gz
Rationale intro.
This was slightly contended in the previous PR. Rewrite it and keep it into its own PR.
-rw-r--r--Rationale.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/Rationale.md b/Rationale.md
index 2065ff6..d77e2ab 100644
--- a/Rationale.md
+++ b/Rationale.md
@@ -1,5 +1,17 @@
# Design Rationale
+This document describes rationales for WebAssembly's design decisions, acting as
+footnotes to the main design text, keeping the main specification easier to
+read, and making it easier to revisit decisions later without having to plow
+through all the issues and pull requests. This rationale document tries to list
+how decisions were made, and where tradeoffs were made for the sake of language
+ergonomics, portability, performance, security, and Getting Things Done.
+
+WebAssembly was designed incrementally, with multiple implementations being
+pursued concurrently. Design desisions are made with a solid rationale, but as
+implementations move forward and developers start using WebAssembly it may turn
+out to that some decisions were suboptimal.
+
## Why AST?