Концепции Webassembly
sergey shishkinText format and AST, Ядро - синтаксис, Почему Rust *, Mach-O, mozilla.org, https://github.com/WebAssembly/WASI
- Модуль : представляет двоичный файл WebAssembly, который компилируется браузером в исполняемый машинный код. Модуль не имеет состояния и поэтому, как и
Blob, может быть явно разделен между окнами и рабочими процессами (черезpostMessage()). Модуль объявляет импорт и экспорт так же, как модуль ES. - Память : ArrayBuffer с изменяемым размером, который содержит линейный массив байтов, прочитанных и записанных низкоуровневыми инструкциями доступа к памяти WebAssembly.
- Таблица : Типизированный массив ссылок с изменяемым размером (например, на функции), который иначе нельзя было бы сохранить в виде необработанных байтов в памяти (по соображениям безопасности и переносимости).
- Экземпляр : модуль в паре со всем состоянием, которое он использует во время выполнения, включая память, таблицу и набор импортированных значений. Экземпляр похож на модуль ES, который загружается в глобал с определенным набором импортов.
Values, Instructions *, Traps, Linear Memory, Modules, Embedder, Structure (Types *), Semantic Rules (Semantic Phases), Text Format
Symbols | A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | R | S | T | U | V | W
abbreviations, abstract syntax, active, address, administrative instructions, allocation, binary format, block, block context, block type, bottom type, branch, byte, call, changes, character, code section, comment, configuration, context, control instruction, custom section, data, data count section, data index, data instance, data section, declarative, default value, element, element index, element instance, element mode, element section, embedder, embedding, evaluation context, execution, export, export instance, export section, expression, external type, external value, floating-point, folded instruction, frame, function, function index, function instance, function section, function type, global, global index, global instance, global section, global type, grammar notation, host address, host function, identifier context, identifiers, implementation limitations, import, import section, index, index space, instance, instantiation, instruction, integer, invocation, keyword, label, label index, limits, local, local index, matching, memory, memory index, memory instance, memory instruction, memory section, memory type, module, mutability, name, name map, name section, NaN, number type, numeric instruction, numeric vectors, opcode, page size, parametric instruction, passive, polimorphism, preservation,
progress, reduction rules, reference instruction, reference type, result, result type, runtime, section, security, signed integer, soundness, source text, stack, start function, start section, store, store extension, string, structured control, table, table index, table instance, table instruction, table section, table type, text format, thread, token, type, type definition, type index, type section, type system, typing rules, uninterpreted integer, unsigned integer, unwinding, UTF-8, validation, value, value type, variable instruction, vector, vector instruction, vector type, white space