diff --git a/docs/bytecode.md b/docs/bytecode.md index e69de29..b12bd34 100644 --- a/docs/bytecode.md +++ b/docs/bytecode.md @@ -0,0 +1,17 @@ +# NimVM - Bytecode Serialization Standard + +## Rationale +This document aims to lay down a simple, extensible and linear format for serializing and deserializing +compiled NimVM's code to a buffer (be it an actual OS file or an in-memory stream). + +## Disclaimer +---------------------------------------------- +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and +"OPTIONAL" in this document are to be interpreted as described in [RFC2119](https://datatracker.ietf.org/doc/html/rfc2119). + +Literals in this document will be often surrounded by double quotes to make it obvious they're not part of a sentence. To +avoid ambiguity, this document will always specify explicitly if double quotes need to be considered as part of a term or not, +which means that if it is not otherwise stated they are to be considered part of said term. In addition to quotes, literals +may be formatted in monospace to make them stand out more in the document. + +TODO \ No newline at end of file