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.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update GC-05-16.md #1279
Update GC-05-16.md #1279
Changes from 1 commit
eafccec
1b4369b
b4a486a
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think 'LT' was actually IoT, but I don't remember how that lead to the next sentence. @xujuntwt95329 if you remember, fell free to suggest edits.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @penzn , yes the 'LT' was
IoT (Internet of Things)
, I have submitted a commentThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rossberg Sorry for missing this question in the meeting, a quick reply here:
struct.get/set_indirect
is not related to reflection, it's all about getting field index from operand rather than immediateinterface description table
may be something like reflection, but that's not what we want to bring to the core wasm spec, it's just a feasible usage of the proposed opcodeI'll prepare an issue in
WebAssembly/gc
repo and list some benefits as well as impacts of this opcode for further discussion.BTW, thanks for your professional questions and suggestions in the meeting, which let me realize there are more things to be considered for the type system
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xujuntwt95329, since these operations have to inspect and dispatch on (the structure of) the runtime type of the object, they represent a form of type reflection. They would be the Wasm equivalent to
struct.getClass().getField(x).get/set(struct)
, the only difference being thatx
is numeric, not a string, because fields are accessed by number in Wasm. This idea further assumes that every heap object carries sufficient runtime information to perform such reflection, which is not an assumption I'd like to build into Wasm itself.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rossberg Sorry for the late reply because I didn't notice the update on this thread. Since this PR has been merged, I've created an issue WebAssembly/gc#397 for further discussion