Skip to content

Instantly share code, notes, and snippets.

@rain-1
Created November 8, 2023 14:24
Show Gist options
  • Save rain-1/20329ae349a866b29aa1a37eb8a4a88c to your computer and use it in GitHub Desktop.
Save rain-1/20329ae349a866b29aa1a37eb8a4a88c to your computer and use it in GitHub Desktop.

Revisions

  1. rain-1 created this gist Nov 8, 2023.
    9 changes: 9 additions & 0 deletions Scheme WASM Tail Call Situation.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,9 @@
    * There is a specification for a tail call instruction in wasm. [github.com/WebAssembly/tail-call](https://github.com/WebAssembly/tail-call/blob/master/proposals/tail-call/Overview.md) [https://v8.dev/blog/wasm-tail-call](https://v8.dev/blog/wasm-tail-call)
    * Browsers, e.g. Chrome, implement this. [https://webassembly.org/roadmap/](https://webassembly.org/roadmap/)
    * At least one scheme implementation called Guile-Hoot targets this [https://gitlab.com/spritely/guile-hoot](https://gitlab.com/spritely/guile-hoot) [ABI](https://gitlab.com/spritely/guile-hoot/-/blob/main/design/ABI.md#calling-convention) [spritely.institute/Status](https://spritely.institute/files/docs/guile-hoot/latest/Status.html)

    This spec seems to have gotten in thanks to work by apignotti, https://hn.algolia.com/?q=WebAssembly+tail+calls

    There is also a very interesting project for generalized effect handlers that may build on top of this platform https://wasmfx.dev/community/

    Great news for schemers with web browsers.