Skip to content

WIT should have the same expressivity power as the component model #614

@fitzgen

Description

@fitzgen

My mental model has been that WIT is "just" syntax sugar1 on top of the component model: anything expressible in a raw component model interface should also be expressible in WIT.

But this is not actually the case today. I strongly believe it should be.

The biggest counterexample I am aware of is #287.

My hopes in filing this issue are two-fold:

  1. Build consensus that "anything expressible in a raw component model interface should also be expressible in WIT" is a highly-desirable property. Does anyone disagree? Can we formalize this into one of the design docs in this repo or something?

  2. We can do a collective survey/audit of CM features and exhaustively enumerate WIT's expressivity gaps. Is anyone aware of any other counterexamples?

Footnotes

  1. Curly brackets instead of S-expressions, stuff that helps bindings generators but don't affect semantics like doc comments, a package system to spread definitions across files, etc...

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions