ืืืฆืืช ืืืืืืจื ืืืืืื ืืฉืืืฉืืช ืฉื ืคืจืืืงื Wasmer, ืืฉืจ ืืคืชืืช ืืื ืจืืฆื ืืืืฆืืข ืืืืืื WebAssembly ืฉื ืืชื ืืืฉืชืืฉ ืืื ืืืฆืืจืช ืืืฉืืืื ืืื ืืืจืกืืืื ืฉืืืืืื ืืคืขืื ืขื ืืขืจืืืช ืืคืขืื ืฉืื ืืช, ืืื ืื ืืืืฆืืข ืงืื ืื ืืืืื ืืืืืื. ืงืื ืืคืจืืืงื ืืชืื ื-Rust ืืืืคืฅ ืชืืช ืจืืฉืืื MIT.
ืืืืืืช ืืืคืขืื ืืคืืืงืฆืื ืืืช ืืคืืืคืืจืืืช ืฉืื ืืช ืืกืืคืงืช ืขื ืืื ืืืืืจ ืงืื ืืงืื ืืื ืืื WebAssembly ืืจืื ื ืืืื, ืฉืืืื ืืคืขืื ืืื ืืขืจืืช ืืคืขืื ืื ืืืืืช ืืืืืข ืืชืืื ืืช ืืฉืคืืช ืชืื ืืช ืืืจืืช. ืืชืืื ืืืช ืื ืืืืืื ืงืืื ืฉืืจืืฆืื ืคืกืืืืืงืื WebAssembly. ืงืื ืืืื ืจืื ืืื ืืื ื ืงืฉืืจืื ืืืขืจืืช ืืืคืขืื ืืืืืืื ืืืืื ืงืื ืฉื ืืชื ืืืงืืจ ืืื ืฉืคืช ืชืื ืืช. ื ืืชื ืืืฉืชืืฉ ืืขืจืืช ืืืืื ืฉื Emscripten ืืื ืืืืจ ื-WebAssembly. ืืื ืืชืจืื ืืช WebAssembly ืืงืื ืืืื ื ืฉื ืืคืืืคืืจืื ืื ืืืืืช, ืืื ืชืืื ืืืืืืจ ืฉื ืจืืืื ืงืืืคืืืฆืื ืฉืื ืื (Singlepass, Cranelift, LLVM) ืืื ืืขืื (ืืืืฆืขืืช JIT ืื ืืฆืืจืช ืงืื ืืืื ื).
ืืืฉืืืื ืืืืืืื ืืืืขืจืืช ืืจืืฉืืช ืืกืืืืช ืืจืื ืืื ืืืฉ ืืื ืืืฉื ืจืง ืืคืื ืงืฆืืื ืืืืช ืืืืฆืืจืช (ืื ืื ืื ืืืืื ืืืืืกืก ืขื ื ืืืื ืืืืืืช - ืืคืขืืืืช ืขื ืื ืืื ืืืืฉืืืื (ืงืืฆืื, ืกืคืจืืืช, ืฉืงืขืื, ืงืจืืืืช ืืขืจืืช ืืื'), ืืฉ ืืชืช ืืืงืฉื ืืช ืืกืืืืืืช ืืืชืืืืืช). ืืงืจืช ืืืฉื ืืืื ืืจืืงืฆืื ืขื ืืืขืจืืช ื ืืชื ืืช ืืืืฆืขืืช ื-API ืฉื WASI (WebAssembly System Interface) ืืืกืคืง ืืืฉืงื ืชืื ืืช ืืขืืืื ืขื ืงืืฆืื, ืฉืงืขืื ืืคืื ืงืฆืืืช ื ืืกืคืืช ืฉืืกืคืงืืช ืืขืจืืช ืืืคืขืื.
ืืคืืืคืืจืื ืืืคืฉืจืช ืื ืืืฉืื ืืืฆืืขื ืืืฆืืข ืืืฉืืืื ืงืจืืืื ืืืืืืืื ืืงืืืืื. ืืืืฆืขืืช Native Object Engine ืขืืืจ ืืืืื WebAssembly, ืืชื ืืืื ืืืฆืืจ ืงืื ืืืื ื ("wasmer compile -native" ืืืฆืืจืช ืงืืืฆื ืืืืืืงื .so, .dylib ื-.dll ืืืืืจืื ืืจืืฉ), ืฉืืืจืฉ ืืื ืจืืฆื ืืื ืืืื ืืืคืขืื, ืื ืฉืืืจ ืขื ืื ืืืืื ืืจืื ืืืื ืืืคืืื ืื. ืืคืฉืจ ืืกืคืง ืชืืื ืืืช ืืืืืจืืช ืืจืืฉ ืขื Wasmer ืืืื ืืช. ื-Rust API ื-Wasm-C-API ืืืฆืขืื ืืืฆืืจืช ืืจืืืืช ืืืจืืืืช.
ืืื ืืืคืขืื ืงืื ืืืื ืจ WebAssembly, ืคืฉืื ืืชืงื ืืช Wasmer ืืืขืจืืช ืืื ืืจืืฆื, ืฉืืืืขื ืืื ืชืืืช ืืืฆืื ืืช ("curl https://get.wasmer.io -sSfL | sh"), ืืืคืขื ืืช ืืงืืืฅ ืืืจืืฉ ("wasmer test.wasm" ). ืืชืืื ืืืช ืืืคืฆืืช ืืฆืืจื ืฉื ืืืืืื WebAssembly ืจืืืืื, ืืืชื ื ืืชื ืื ืื ืืืืฆืขืืช ืื ืื ืืืืืืืช WAPM. Wasmer ืืืื ืื ืืกืคืจืืื ืฉืืืืื ืืฉืืฉ ืืืืืขืช ืงืื WebAssembly ืืชืืื ืืืช Rust, C/C++, C#, D, Python, JavaScript, Go, PHP, Ruby, Elixir ื-Java.
ืฉืื ืืืื ืขืืงืจืืื ื- Wasmer 3.0:
- ื ืืกืคื ืืช ืืืืืืช ืืืฆืืจ ืงืืฆื ืืคืขืื ืืงืืจืืื ืขืืืจ ืื ืคืืืคืืจืื. ืืคืงืืื "wasmer create-exe" ืขืืฆืื ืืืืฉ ืืืืืืื ืืื ืืืืืจ ืงืืืฅ ืงืื ืืื ืืื ืฉื WebAssembly ืืงืืืฆื ืืคืขืื ืขืฆืืืืื ืขืืืจ ืคืืืคืืจืืืช Linux, Windows ื-macOS ืฉืืืืืืช ืืคืขืื ืืืื ืืืชืงืื ืืช Wasmer ืขืฆืื.
- ืืคืฉืจ ืืืคืขืื ืืืืืืช WAPM ืืืืืงืืืช ืืกืคืจืืืช wapm.io ืืืืฆืขืืช ืืคืงืืื "wasmer run". ืืืืืื, ืืคืขืืช "wasmer run python/python" ืชืืจืื ืืช ืืืืืช python ืืืืืจ wapm.io ืืชืคืขืื ืืืชื.
- ื-API ืฉื Wasmer Rust ืขืืฆื ืืืืฉ ืืืืืืื, ืืฉื ื ืืช ืกืื ืื ืืขืืืื ืขื ืืืืืจืื ืืืกืคืง ืืช ืืืืืืช ืืฉืืืจ ืืืืื ืืืืืืงืื Wasm ืืืื ื ืืื ืืช. ืืืฆืข ืืื ื MemoryView ืืืฉ ืืืืคืฉืจ ืงืจืืื ืืืชืืื ืฉื ื ืชืื ืื ืืืืืจ ืืืืจืื ืืื ืืืจื.
- ืงืืืฆื ืฉื ืจืืืื wasmer-js ืืืืืขื ืืื ืืืคืขืื ืืช Wasmer ืืืคืืคื ืืื ืืจื ื ืืืชืงืฉืจ ืืืชื ื-JavaScript ืืืืฆืขืืช ืกืคืจืืืช wasm-bindgen. ืืืืืืืชืื, wasmer-js ืืชืืื ืืจืืืื wasmer-sys ืืืืืขืืื ืืืจืืฅ ืืช Wasmer ืืืขืจืืืช ืืคืขืื ืจืืืืืช.
- ืืื ืืขืื ืืคืื ืืคืฉืืืื. ืืืงืื ืื ืืขืื ื ืคืจืืื ื-JIT, ืงืืฉืืจ ืืื ืื ืืกืืื (Universal, Dylib, StaticLib), ืืืฆืข ืืขืช ืื ืืข ืืื ืืฉืืชืฃ, ืืืืขืื ื ืืืฉืืืจื ืฉื ืืงืื ื ืฉืืืช ืืจืืช ืืืืจืช ืืคืจืืืจืื.
- ืืื ืื ืืจื ืืคืฆืื, ื ืขืฉื ืฉืืืืฉ ืืืกืืจืช rkyv, ืืืืืืื ืคืขืืื ืืืฆื ืืคืก ืืขืชืงื, ืืืืืจ. ืืฉืจ ืืื ื ืืืจืฉ ืืงืฆืืช ืืืืจืื ื ืืกืคืช ืืืืฆืข ืื-ืกืจืืืืืืฆืื ืจืง โโืืืืฆืขืืช ืืืืืจ ืฉืกืืคืง ืืชืืืื. ืืฉืืืืฉ ื-rkyv ืืขืื ืืฉืืขืืชืืช ืืช ืืืืจืืช ืืืคืขืื.
- ืืืืืจ Singlepass ืืขืืจ ืืืื ืฉืืคืจ, ืืืืกืืฃ ืชืืืื ืืคืื ืงืฆืืืช ืืจืืืืช ืขืจืืื, ืืืื ืืช ืืฉืืคืจืช ืืชืืกืคืช ืชืืืื ืืืกืืจืืช ืืืืคืื ืืืจืืืื.
- ืืืืขื ืืฉืืคืจืช ืฉื ื-API ืฉื WASI (WebAssembly System Interface). ืืขืืืช ืืืืฉืง ืชืืื ืช WASI ืืขืืืื ืขื ืืขืจืืช ืืงืืฆืื ื ืคืชืจื. ืกืืืื ืคื ืืืืื ืขืืฆืื ืืืืฉ ืืืืฆืขืืช WAI (ืืืฉืงื WebAssembly), ืืฉืจ ืืืคืฉืจื ืฉืืจื ืฉื ืชืืื ืืช ืืืฉืืช ืืขืชืื.
ืืงืืจ: OpenNet.ru