Per-language support summaries
Some WIP docs that make it easier for users to tell what's supported the language(s) they're interested in. Looking for feedback on the general idea of these docs before I get too much further in writing them up.
Goals:
- Make language used to describe features (host bindings, guest bindings) more consistent and define them.
- Make it easier for users to get a general overview of which languages are supported
- Describe the support for each language independently of each other (e.g. go users shouldn't have to understand how Python is supported to get how go is supported)
- Provide more prose, examples, and links for each language
TODO:
- [ ] Write more prose for go
- [ ] Write more prose for C++
Thanks for the PR! This is somewhat similar to https://github.com/bytecodealliance/wit-bindgen/pull/126 in the sense that I don't really know the best way to document everything in this repository right now. I'm a bit wary of having too many language-specific docs in lots of places as it can get sort of difficult to update everything and/or remember what needs updating. Things are honestly still pretty early for wit-bindgen and I expect a fair amount will change as the component module and/or interface types matures and more concrete use cases for that continue to arise.
Basically I don't know how to balance things. This repository hasn't seen many major updates in awhile but that's because lots of work on other parts of the component model has been going on in the background (a spec, async, implementation in Wasmtime, etc). This repository sort of represents a snapshot of a "this is one trajectory we could go in" where lots still needs to be filled out but at the same time a lot of other pieces also work pretty well. I'm a bit hesistant to lock in too quickly to one trajectory when it's likely that things will alter course over time.
In that case, I'm happy to leave this here for now and revisit it when the direction becomes more clear.
I think this is relatively outdated at this point so I'm going to close this. Lots has changed in the interim about where things live and such. I have at least a rewrite of the README for this repo to push up once https://github.com/bytecodealliance/wit-bindgen/pull/463 lands which should cover some of the basics intended here.
That being said things are starting to settle nowadays and the component model is a bit more final then it was last year. The wit-bindgen repo here now hosts only guest generators which I think makes more sense to fill out documentation for perhaps. I'm still not certain that this is the final state of things but I'd hope that new-ish documentation wouldn't bitrot so quickly at this point.
I agree with closing this PR, but I do still want to carry on the spirit of what I wrote here somewhere. I think people want to know how and to what extent it's possible to use component model tooling from the guest and host side in each applicable language and that having somewhere central that provides that is useful.
wit-bindgen is no longer that central place and I think even the guest generators may split apart eventually to be incorporated into languages tooling, and what we really need is some other place in the Bytecode Alliance that documents this information.
Yep I definitely agree, although I'm not sure where such a good central location would be at this point.