Skip to content
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

IPLD WASM tracking issue #236

Open
RangerMauve opened this issue Aug 23, 2022 · 3 comments
Open

IPLD WASM tracking issue #236

RangerMauve opened this issue Aug 23, 2022 · 3 comments
Assignees
Labels

Comments

@RangerMauve
Copy link
Contributor

This issue is to track progress of IPLD and WebAssembly integration.

Stuff to track:

  • WASM ABIs for reading IPLD nodes
  • WASM ABIs for representing IPLD nodes for ADLs
  • Signaling WASM when passing (e.g. fat pointers, ipld URLs)
  • Formalizing how WSAM ADLs get registered (based on Adin's demo)
  • Autocodec

I'll be posting updates relevant to IPLD here as more development happens enselwhere.

@RangerMauve RangerMauve self-assigned this Aug 23, 2022
@RangerMauve
Copy link
Contributor Author

One thing that Adin mentioned, is that WASI wasn't interoperating with JS very well, might be useful to look at alternatives to modules in WASM that are closer to web standards rather than C++/Rust standards. 🤷

@aschmahmann
Copy link

To clarify, I was mostly alluding to some of the string related issues brought up in https://twitter.com/AssemblyScript/status/1566702136435539968 and the linked post.

Depending on where you draw the boundaries IPLD might or might not care about WASI given that IIUC WASI is basically for I/O types of things which start looking a little more like IPFS than IPLD. However,

  1. The WASM Component Model shares perspective with WASI and so using the component model might or might not cause some friction for us depending on how we try and use it
  2. It might be useful to consider that I/O models that are needed when reading/writing IPLD data, or even things like interlinking/loading of modules that might require I/O which then start looking like things that could benefit from WASI

I also tagged that thread as an FYI about how not everyone (including people operating in JS/TS) are thrilled about UTF-8 everywhere and if there's renewed interest in the controversial topic of "what is an IPLD string" and how different it is than just a pile of bytes that there might be some lessons to be learned from this (but that's a topic for one of the other issues about this like #203)

@BigLep
Copy link
Contributor

BigLep commented Nov 15, 2022

2022-11-15 IPLD triage conversation:

Concerning WASM ABI, a note from @rvagg about a pattern in go-ipld-prime and js-ipld stack around "node builder" for spitting out instructions on on building a node. Potentially makes sense to surface at IPVM or maybe the IPLD WG.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: 🏃‍♀️ In Progress
Development

No branches or pull requests

3 participants