{"id":15557701,"url":"https://github.com/fgasper/p5-wasm-wasmer","last_synced_at":"2026-05-20T16:37:16.574Z","repository":{"id":65021749,"uuid":"459802407","full_name":"FGasper/p5-Wasm-Wasmer","owner":"FGasper","description":"CPAN’s Wasm::Wasmer","archived":false,"fork":false,"pushed_at":"2024-04-12T04:08:29.000Z","size":262,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-03T13:45:12.906Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FGasper.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-16T00:53:26.000Z","updated_at":"2023-03-25T01:10:44.000Z","dependencies_parsed_at":"2024-10-02T15:20:28.743Z","dependency_job_id":null,"html_url":"https://github.com/FGasper/p5-Wasm-Wasmer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FGasper%2Fp5-Wasm-Wasmer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FGasper%2Fp5-Wasm-Wasmer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FGasper%2Fp5-Wasm-Wasmer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FGasper%2Fp5-Wasm-Wasmer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FGasper","download_url":"https://codeload.github.com/FGasper/p5-Wasm-Wasmer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246135739,"owners_count":20729056,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-02T15:20:25.660Z","updated_at":"2025-12-12T02:43:53.001Z","avatar_url":"https://github.com/FGasper.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NAME\n\nWasm::Wasmer - [WebAssembly](https://webassembly.org) in Perl via\n[Wasmer](https://wasmer.io)\n\n# SYNOPSIS\n\n    use Wasm::Wasmer;\n\n    my $wasm = Wasm::Wasmer::wat2wasm( \u003c\u003cEND );\n    (module\n        (type (func (param i32 i32) (result i32)))\n        (func $add (type 0)\n            local.get 0\n            local.get 1\n            i32.add)\n        (export \"sum\" (func $add))\n    )\n    END\n\n    my $instance = Wasm::Wasmer::Module-\u003enew($wasm)-\u003ecreate_instance();\n\n    # Prints 7:\n    print $instance-\u003ecall('sum', 2, 5) . $/;\n\n# DESCRIPTION\n\nThis distribution provides an XS binding for Wasmer.\nThis provides a simple, fast way to run WebAssembly (WASM) in Perl.\n\n# MODULE RELATIONSHIPS\n\nWe mostly follow the relationships from\n[Wasmer’s C API](https://docs.rs/wasmer-c-api):\n\n- [Wasm::Wasmer::Store](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AStore) manages Wasmer’s state, including\nstorage of any imports \u0026 exports. It contains compiler \u0026 engine\nconfiguration as well. This object can be auto-created by default\nor manually instantiated.\n- [Wasm::Wasmer::Module](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AModule) uses a [Wasm::Wasmer::Store](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AStore) instance\nto represent a parsed WASM module. This one you always instantiate\nmanually.\n- [Wasm::Wasmer::Instance](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AInstance) uses a [Wasm::Wasmer::Module](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AModule) instance\nto represent an in-progress WASM program. You’ll instantiate these\nvia methods on the [Wasm::Wasmer::Module](https://metacpan.org/pod/Wasm%3A%3AWasmer%3A%3AModule) object.\n\n# CHARACTER ENCODING\n\nGenerally speaking, strings that in common usage are human-readable\n(e.g., names of imports \u0026 exports) are character strings. Ensure\nthat you’ve properly character-decoded such strings, or any non-ASCII\ncharacters will cause encoding bugs.\n\n(TIP: Always incorporate code points 128-255 into your testing.)\n\nBinary payloads (e.g., memory contents) are byte strings.\n\n# PLATFORM SUPPORT\n\nAs of this writing, Wasmer’s platform support constrains this module\nto supporting Linux and macOS only. (Windows might also work?)\n\n# SEE ALSO\n\n[Wasm::Wasm3](https://metacpan.org/pod/Wasm%3A%3AWasm3) is an XS binding to [wasm3](https://github.com/wasm3/wasm3),\na broadly-portable WebAssembly interpreter. Try it if you need to run WASM\nand don’t have Wasmer (or Wasmtime).\n\n[Wasm::Wasmtime](https://metacpan.org/pod/Wasm%3A%3AWasmtime) is an FFI binding to\n[https://wasmtime.dev](https://wasmtime.dev), a similar project to Wasmer.\n\n[Wasm](https://metacpan.org/pod/Wasm) provides syntactic sugar around Wasm::Wasmtime.\n\n# FUNCTIONS\n\nThis namespace defines the following:\n\n## $bin = wat2wasm( $TEXT )\n\nConverts WASM text format to its binary-format equivalent. $TEXT\nshould be (character-decoded) text.\n\n# LICENSE \u0026 COPYRIGHT\n\nCopyright 2022 Gasper Software Consulting. All rights reserved.\n\nThis library is licensed under the same terms as Perl itself.\nSee [perlartistic](https://metacpan.org/pod/perlartistic).\n\nThis library was originally a research project at\n[cPanel, L.L.C.](https://cpanel.net).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffgasper%2Fp5-wasm-wasmer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffgasper%2Fp5-wasm-wasmer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffgasper%2Fp5-wasm-wasmer/lists"}