WebAssembly 2.0 เชฎเชพเชจเช• เชชเซ‚เชฐเซเชตเชพเชตเชฒเซ‹เช•เชจ เช‰เชชเชฒเชฌเซเชง เช›เซ‡

W3C เช เชจเชตเชพ เชธเซเชชเซ‡เชธเชฟเชซเชฟเช•เซ‡เชถเชจเชจเซ‹ เชกเซเชฐเชพเชซเซเชŸ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซเชฏเซ‹ เช›เซ‡ เชœเซ‡ WebAssembly 2.0 เชฎเชฟเชกเชฒเชตเซ‡เชฐ เช…เชจเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒ API เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เช‰เชšเซเชš-เชชเซเชฐเชฆเชฐเซเชถเชจ เชเชชเซเชฒเซ€เช•เซ‡เชถเชจเชจเชพ เชจเชฟเชฐเซเชฎเชพเชฃเชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เชฌเซเชฐเชพเช‰เชเชฐเซเชธ เช…เชจเซ‡ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชชเชฐ เชชเซ‹เชฐเซเชŸเซ‡เชฌเชฒ เช›เซ‡. เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชตเชฟเชตเชฟเชง เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเช“เชฎเชพเช‚เชฅเซ€ เชธเช‚เช•เชฒเชฟเชค เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชฌเซเชฐเชพเช‰เชเชฐ-เชธเซเชตเชคเช‚เชคเซเชฐ, เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช•, เชจเชฟเชฎเซเชจ-เชธเซเชคเชฐเชจเซ‹ เชฎเชงเซเชฏเชตเชฐเซเชคเซ€ เช•เซ‹เชก เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡. WebAssembly เชฎเชพเชŸเซ‡ JIT เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชคเชฎเซ‡ เชฎเซ‚เชณ เช•เซ‹เชกเชจเซ€ เชจเชœเซ€เช• เชชเชฐเชซเซ‹เชฐเซเชฎเชจเซเชธ เชฒเซ‡เชตเชฒ เชนเชพเช‚เชธเชฒ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‰เชœเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฌเซเชฐเชพเช‰เชเชฐเชฎเชพเช‚ เช‰เชšเซเชš-เชชเซเชฐเชฆเชฐเซเชถเชจ เช•เชพเชฐเซเชฏเซ‹ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ เชตเซ€เชกเชฟเชฏเซ‹ เชเชจเซเช•เซ‹เชกเชฟเช‚เช—, เช‘เชกเชฟเชฏเซ‹ เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช—, เช—เซเชฐเชพเชซเชฟเช•เซเชธ เช…เชจเซ‡ 3D เชฎเซ‡เชจเชฟเชชเซเชฏเซเชฒเซ‡เชถเชจ, เช—เซ‡เชฎ เชกเซ‡เชตเชฒเชชเชฎเซ‡เชจเซเชŸ, เช•เซเชฐเชฟเชชเซเชŸเซ‹เช—เซเชฐเชพเชซเชฟเช• เช‘เชชเชฐเซ‡เชถเชจเซเชธ เช…เชจเซ‡ เช—เชพเชฃเชฟเชคเชฟเช• เช—เชฃเชคเชฐเซ€เช“ เชœเซ‡เชฎ เช•เซ‡ C/C++ เชœเซ‡เชตเซ€ เชธเช‚เช•เชฒเชฟเชค เชญเชพเชทเชพเช“เชฎเชพเช‚ เช•เซ‹เชก เชฒเช–เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ€เชจเซ‡. .

WebAssembly เชจเชพ เชฎเซเช–เซเชฏ เชงเซเชฏเซ‡เชฏเซ‹ เชชเซˆเช•เซ€ เชชเซ‹เชฐเซเชŸเซ‡เชฌเชฟเชฒเชฟเชŸเซ€, เช…เชจเซเชฎเชพเชจเชฟเชค เชตเชฐเซเชคเชจ เช…เชจเซ‡ เชตเชฟเชตเชฟเชง เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชชเชฐ เชธเชฎเชพเชจ เช•เซ‹เชก เชเช•เซเชเชฟเช•เซเชฏเซเชถเชจเชจเซ€ เช–เชพเชคเชฐเซ€ เช•เชฐเชตเซ€ เช›เซ‡. เชคเชพเชœเซ‡เชคเชฐเชฎเชพเช‚, WebAssembly เชจเซ‡ เช•เซ‹เชˆเชชเชฃ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ, เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎ เช…เชจเซ‡ เช‰เชชเช•เชฐเชฃ เชชเชฐ เชธเซเชฐเช•เซเชทเชฟเชค เชฐเซ€เชคเซ‡ เช•เซ‹เชก เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชคเชฐเซ€เช•เซ‡ เชชเชฃ เชชเซเชฐเชฎเซ‹เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชฌเซเชฐเชพเช‰เชเชฐ เชธเซเชงเซ€ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชจเชฅเซ€.

W3C เช เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ 2.0 เชฎเชพเชŸเซ‡ เชคเซเชฐเชฃ เชกเซเชฐเชพเชซเซเชŸ เชธเซเชชเชทเซเชŸเซ€เช•เชฐเชฃเซ‹ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซเชฏเชพ เช›เซ‡:

  • เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เช•เซ‹เชฐ - เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เช‡เชจเซเชŸเชฐเชฎเซ€เชกเชฟเชฏเซ‡เชŸ เช•เซ‹เชก เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชจเชฟเชฎเซเชจ-เชธเซเชคเชฐเชจเซ€ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจเชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเซ‡ เช›เซ‡. WebAssembly เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒ เชธเช‚เชธเชพเชงเชจเซ‹ เชœเชพเชตเชพเชฎเชพเช‚ ".class" เชซเชพเชˆเชฒเซ‹เชจเซ€ เชœเซ‡เชฎ ".wasm" เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เชตเชฟเชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡เชฎเชพเช‚ เชคเซ‡ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชŸเซ‡เชŸเชฟเช• เชกเซ‡เชŸเชพ เช…เชจเซ‡ เช•เซ‹เชก เชธเซ‡เช—เชฎเซ‡เชจเซเชŸเซเชธ เชนเซ‹เชฏ เช›เซ‡.
  • WebAssembly JavaScript เชˆเชจเซเชŸเชฐเชซเซ‡เชธ - JavaScript เชธเชพเชฅเซ‡ เชเช•เซ€เช•เชฐเชฃ เชฎเชพเชŸเซ‡ API เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡. เชคเชฎเชจเซ‡ เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เช•เชพเชฐเซเชฏเซ‹เชฎเชพเช‚ เชฎเซ‚เชฒเซเชฏเซ‹ เชฎเซ‡เชณเชตเชตเชพ เช…เชจเซ‡ เชชเชฐเชฟเชฎเชพเชฃเซ‹ เชชเชธเชพเชฐ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€เชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ JavaScript เชธเซเชฐเช•เซเชทเชพ เชฎเซ‹เชกเชฒเชจเซ‡ เช…เชจเซเชธเชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชฎเซเช–เซเชฏ เชธเชฟเชธเซเชŸเชฎ เชธเชพเชฅเซ‡เชจเซ€ เชคเชฎเชพเชฎ เช•เซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเช•เซเชฐเชฟเชฏเชพ JavaScript เช•เซ‹เชกเชจเซ‡ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเชตเชพ เชœเซ‡เชตเซ€ เชœ เชฐเซ€เชคเซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.
  • WebAssembly เชตเซ‡เชฌ API - ".wasm" เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเชตเชพ เช…เชจเซ‡ เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชชเซเชฐเซ‹เชฎเชฟเชธ เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เช‡เชจเซเชŸเชฐเชซเซ‡เชธเชจเซ‡ เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชธเช‚เชธเชพเชงเชจ เชซเซ‹เชฐเซเชฎเซ‡เชŸ เชซเชพเช‡เชฒเชจเชพ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฒเซ‹เชก เชฅเชตเชพเชจเซ€ เชฐเชพเชน เชœเซ‹เชฏเชพ เชตเชฟเชจเชพ เช…เชฎเชฒ เชถเชฐเซ‚ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชตเซ‡เชฌ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธเชจเซ€ เชชเซเชฐเชคเชฟเชญเชพเชตเชฎเชพเช‚ เชธเซเชงเชพเชฐเซ‹ เช•เชฐเซ‡ เช›เซ‡.

เชฎเชพเชจเช•เชจเชพ เชชเซเชฐเชฅเชฎ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ€ เชคเซเชฒเชจเชพเชฎเชพเช‚ WebAssembly 2.0 เชฎเชพเช‚ เชฎเซเช–เซเชฏ เชซเซ‡เชฐเชซเชพเชฐเซ‹:

  • v128 เชตเซ‡เช•เซเชŸเชฐ เชชเซเชฐเช•เชพเชฐ เช…เชจเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค เชตเซ‡เช•เซเชŸเชฐ เชธเซ‚เชšเชจเชพเช“ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ เชœเซ‡ เชคเชฎเชจเซ‡ เชธเชฎเชพเช‚เชคเชฐเชฎเชพเช‚ เชฌเชนเซเชตเชฟเชง เช†เช‚เช•เชกเชพเช•เซ€เชฏ เชฎเซ‚เชฒเซเชฏเซ‹ เชชเชฐ เช•เซเชฐเชฟเชฏเชพเช“ เช•เชฐเชตเชพ เชฆเซ‡ เช›เซ‡ (SIMD, เชธเชฟเช‚เช—เชฒ เช‡เชจเซเชธเซเชŸเซเชฐเช•เซเชถเชจ เชฎเชฒเซเชŸเชฟเชชเชฒ เชกเซ‡เชŸเชพ).
  • C++ เชฎเชพเช‚ เชธเซเชŸเซ‡เช• เชชเซ‹เช‡เชจเซเชŸเชฐ เชœเซ‡เชตเชพ เชฎเซ‚เชฒเซเชฏเซ‹ เชฎเชพเชŸเซ‡ เชตเซˆเชถเซเชตเชฟเช• เชฌเช‚เชงเชจเช•เชฐเซเชคเชพเชจเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชคเชพ เชชเชฐเชฟเชตเชฐเซเชคเชจเซ€เชฏ เชตเซˆเชถเซเชตเชฟเช• เชšเชฒเซ‹เชจเซ€ เช†เชฏเชพเชค เช…เชจเซ‡ เชจเชฟเช•เชพเชธ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ.
  • เช‡เชจเซเชŸ เช•เชจเซเชตเชฐเซเชเชจ เชธเซ‚เชšเชจเชพเช“ เชฎเชพเชŸเซ‡ เชจเชตเซ‹ เชซเซเชฒเซ‹เชŸ เช•เซ‡, เชœเซเชฏเชพเชฐเซ‡ เชชเชฐเชฟเชฃเชพเชฎ เช“เชตเชฐเชซเซเชฒเซ‹ เชฅเชพเชฏ เชคเซเชฏเชพเชฐเซ‡ เช…เชชเชตเชพเชฆ เชซเซ‡เช‚เช•เชตเชพเชจเซ‡ เชฌเชฆเชฒเซ‡, เชฒเช˜เซเชคเซเชคเชฎ เช…เชฅเชตเชพ เชฎเชนเชคเซเชคเชฎ เชถเช•เซเชฏ เชฎเซ‚เชฒเซเชฏ (SIMD เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐเซ€) เชชเชฐเชค เช•เชฐเซ‹.
  • เชชเซ‚เชฐเซเชฃเชพเช‚เช•เซ‹เชจเชพ เชšเชฟเชนเซเชจ เชตเชฟเชธเซเชคเชฐเชฃ เชฎเชพเชŸเซ‡เชจเซ€ เชธเซ‚เชšเชจเชพเช“ (เชšเชฟเชนเซเชจ เช…เชจเซ‡ เชฎเซ‚เชฒเซเชฏ เชœเชพเชณเชตเซ€ เชฐเชพเช–เชคเซ€ เชตเช–เชคเซ‡ เชธเช‚เช–เซเชฏเชพเชจเซ€ เชฌเซ€เชŸ เชŠเช‚เชกเชพเชˆ เชตเชงเชพเชฐเชตเซ€).
  • เชฌเชนเซเชตเชฟเชง เชฎเซ‚เชฒเซเชฏเซ‹ เชชเชฐเชค เช•เชฐเชคเชพ เชฌเซเชฒเซ‹เช•เซเชธ เช…เชจเซ‡ เชซเช‚เช•เซเชถเชจเซเชธ เชฎเชพเชŸเซ‡ เชธเชชเซ‹เชฐเซเชŸ (เชซเช‚เช•เซเชถเชจเซเชธเชฎเชพเช‚ เชฌเชนเซเชตเชฟเชง เชชเชฐเชฟเชฎเชพเชฃเซ‹ เชชเชธเชพเชฐ เช•เชฐเชตเชพ เช‰เชชเชฐเชพเช‚เชค).
  • BigInt JavaScript เชชเซเชฐเช•เชพเชฐ เช…เชจเซ‡ 64-เชฌเซ€เชŸ เชชเซ‚เชฐเซเชฃเชพเช‚เช•เซ‹เชจเซ€ เชตเซ‡เชฌ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชฐเชœเซ‚เช†เชค เชตเชšเซเชšเซ‡ เช•เชจเซเชตเชฐเซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ BigInt64Array เช…เชจเซ‡ BigUint64Array JavaScript เชซเช‚เช•เซเชถเชจเซเชธเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ.
  • เชธเช‚เชฆเชฐเซเชญ เชชเซเชฐเช•เชพเชฐเซ‹ (funcref เช…เชจเซ‡ externref) เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ€ เชธเช‚เชฌเช‚เชงเชฟเชค เชธเซ‚เชšเชจเชพเช“ (เชชเชธเช‚เชฆ เช•เชฐเซ‹, ref.null, ref.func เช…เชจเซ‡ ref.is_null) เชฎเชพเชŸเซ‡ เชธเชฎเชฐเซเชฅเชจ.
  • Memory.copy, memory.fill, memory.init, เช…เชจเซ‡ data.drop เชฎเซ‡เชฎเชฐเซ€ เชชเซเชฐเชฆเซ‡เชถเซ‹ เชตเชšเซเชšเซ‡ เชกเซ‡เชŸเชพเชจเซ€ เชจเช•เชฒ เช•เชฐเชตเชพ เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชชเซเชฐเชฆเซ‡เชถเซ‹เชจเซ‡ เชธเชพเชซ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เชธเซ‚เชšเชจเชพเช“.
  • เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ€ เชธเซ€เชงเซ€ เชเช•เซเชธเซ‡เชธ เช…เชจเซ‡ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เชธเซ‚เชšเชจเชพเช“ (table.set, table.get, table.size, table.grow). เชเช• เชฎเซ‹เชกเซเชฏเซเชฒเชฎเชพเช‚ เชฌเชนเซเชตเชฟเชง เช•เซ‹เชทเซเชŸเช•เซ‹ เชฌเชจเชพเชตเชตเชพ, เช†เชฏเชพเชค เช…เชจเซ‡ เชจเชฟเช•เชพเชธ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ. เชฌเซ‡เชš เชฎเซ‹เชก (table.copy, table.init เช…เชจเซ‡ elem.drop) เชฎเชพเช‚ เช•เซ‹เชทเซเชŸเช•เซ‹เชจเซ€ เชจเช•เชฒ/เชญเชฐเชฃ เชฎเชพเชŸเซ‡เชจเชพเช‚ เช•เชพเชฐเซเชฏเซ‹.

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹