- From: JS Stats <info@jsstats.com>
- Date: Thu, 26 Nov 2015 18:25:45 +1100
- To: public-webassembly@w3.org
I would like to make the case to the members to consider changing the focus of this group from the development of a binary code to a source code with a binary encoding. The difference might not sound significant at first but it might make a significant difference to the intent of code deployed to the web in binary format. In the current case source code is 'compiled' or 'assembled' into the binary format and deployed in binary format. With this focus the developers might be tempted to abandon any claim to the binary encoding being related to the source, and for example move to a linear virtual machine code without expressions or structured flow control etc. While it might be possible to 'view-source' the deployed code it might be consider 'disassembly' or 'reverse engineering' which are very loaded terms for IP. I believe that although the operators being developed are primitive and close to the hardware, that these can still be used in a structured source code with expressions and local variables etc to make the code more readable and easier to write. A binary encoding would still be developed that would be a one-to-one reversible encoding of the source (basically a lossless compression of the source). I believe this could still be a good target for the use case of a compilation target which seems to be the current focus. I have been working away at trying to use type derivation to help eliminate bounds checking, and there has been another recent proposal by sunfish to use some loop analysis to help eliminate bounds checks too, and while I don't have anything concrete I suspect this will be much easier to define in structured code. For example, a common case is to define a local constant variable with a typed that can be derived such as masking a value or asserting its bounds. The new name would remove 'Assembly' and make it clear this is a source code although primitive. For example WebCore if it is not taken. The Specification language would change it's emphasis to being a source code, while still supporting the use case of being a compilation target. Would there be any support for such a re-focusing of the group, or are the majority of people wanting a web machine code binary format to compile to? Regards Douglas Crosher
Received on Thursday, 26 November 2015 13:57:49 UTC