Implement the basics of component model - #2695
Draft
zherczeg wants to merge 4 commits into
Draft
Conversation
zherczeg
force-pushed
the
component_basic
branch
2 times, most recently
from
February 13, 2026 09:30
d04709a to
3f2f212
Compare
zherczeg
force-pushed
the
component_basic
branch
3 times, most recently
from
February 26, 2026 10:51
f2a0b3b to
0f3bbbe
Compare
zherczeg
force-pushed
the
component_basic
branch
13 times, most recently
from
March 11, 2026 11:20
08ab8dd to
7b99f16
Compare
zherczeg
force-pushed
the
component_basic
branch
4 times, most recently
from
March 18, 2026 12:47
9ae0356 to
1279ea2
Compare
zherczeg
force-pushed
the
component_basic
branch
4 times, most recently
from
March 23, 2026 13:30
d724780 to
4f8a1ed
Compare
Collaborator
Author
|
Status summary. This patch is grown to ~7500 lines addition including an 1500 line update of lexer-keywords.txt. The wasm2wat and wat2wasm tools are extended with component support, which is capable of parsing a hello world component created by clang both in text and binary form. Validation is not implemented. Is component support useful for this project? |
Collaborator
Author
|
Note: component support is based on this document: |
zherczeg
force-pushed
the
component_basic
branch
2 times, most recently
from
March 24, 2026 13:22
e6e94ae to
e311277
Compare
zherczeg
force-pushed
the
component_basic
branch
9 times, most recently
from
April 27, 2026 11:39
55b74e9 to
b30b6a8
Compare
zherczeg
force-pushed
the
component_basic
branch
2 times, most recently
from
May 7, 2026 11:32
a9e477f to
1a81c05
Compare
zherczeg
force-pushed
the
component_basic
branch
8 times, most recently
from
June 17, 2026 09:33
2a77fe5 to
75070c9
Compare
zherczeg
force-pushed
the
component_basic
branch
3 times, most recently
from
July 6, 2026 07:30
4278aa0 to
90e816d
Compare
zherczeg
force-pushed
the
component_basic
branch
from
August 3, 2026 08:07
90e816d to
81d2d92
Compare
This patch supports parsing the new GC types - Abstract types - Recursive types - Composite types The patch also improves type comparison.
zherczeg
force-pushed
the
component_basic
branch
from
August 6, 2026 11:43
81d2d92 to
91eac05
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is an experimental (draft) patch. I don't know how much it fits into the concept of wabt. Wabt has the necessary helpers though.
Components are a layer (layer 1) above module layer (layer 0). It has no official specification, only explainers. It has a binary and text format similar to modules.