- Feature Name: dump
- Start Date: 07/12/2016
Dump of raw bytes into the bytecode.
The seek for a semantic similar to Sanny Builder's HEX...END
to embed user data in the resulting bytecode.
ID | Command Name | Command Hash | Params |
---|---|---|---|
None | DUMP | 0x39c100dd | |
None | ENDDUMP | 0x5c84a58c |
Whenever the DUMP
command is found, all the lines following it up to the ENDDUMP
should be treated as a serie of hexadecimal pairs, which should be output to the bytecode as is.
Labels, commands (except for ENDDUMP
), and literals other than the hexadecimal one shall not occur inside the dump block.
DUMP
00 01 02 03 0A 0B 0C
14 1D 90 AF F9 DD CC
F // invalid, must be a xdigit pair
141D 90919293 // valid
ENDDUMP
Why should we not do this?
What other designs have been considered? What is the impact of not doing this?
Unresolved questions.
Spaces in hex string are optional and used for readability e.g. 141D is a valid input.
In my opinion, EMIT term is somewhat opposite to the action it produces: on emit something moves outside, while in this case we are moving the data directly inside the output, are we? I'd suggest to use either old HEX..ENDHEX here, or maybe DUMP..ENDDUMP.