WebAssembly рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 52 рдореЗрдВ рдЬрд╝реЗрди рдЧрд╛рд░реНрдбрди рдбреЗрдореЛ рдХрд╛ 3 рдбреА рдкреНрд░рддрд┐рдкрд╛рджрдирдореЛрдЬрд╝рд┐рд▓рд╛ рдиреЗ рд╡рд┐рдВрдбреЛрдЬ рдПрдХреНрд╕рдкреА рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдирд╡реАрдирддрдо рдмреНрд░рд╛рдЙрдЬрд╝рд░
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 52 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИред
рдХрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рдЧрдП рдереЗ : рд╣реЙрдЯрд╕реНрдкреЙрдЯреНрд╕ рдХрд╛ рдХрдиреЗрдХреНрд╢рди рд╕рд░рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд╣рд╛рдБ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЕрдЧрд░ рдХреЛрдИ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрдиреЗрдХреНрд╢рди (HTTPS рдирд╣реАрдВ) рдХреЗ рд▓рд┐рдП рдкреЗрдЬ рдкрд╛рд╕рд╡рд░реНрдб рдорд╛рдВрдЧрддрд╛ рд╣реИ рддреЛ рдЦрддрд░реЗ рдХреА рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦрд╛рдИ рджреА, NPAPI рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЧрд╛рдпрдм рд╣реЛ рдЧрдпрд╛ рд╣реИ (рдлреНрд▓реИрд╢ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдФрд░ рдкреВрд░реНрдг рд╕рдорд░реНрдерди ESR рдмрд┐рд▓реНрдб рдореЗрдВ рд░рд╣реЗрдЧрд╛)
28 рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рдмрдВрдж рдХрд┐рдпрд╛ред
рд▓реЗрдХрд┐рди рдореБрдЦреНрдп рдФрд░ рдореМрд▓рд┐рдХ рдирд╡рд╛рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рддреБрд▓рдирд╛ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ -
рдирд┐рдореНрди рд╕реНрддрд░ рдХреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ WebAssembly (wasm) рдЬреИрд╕реЗ рдХреЛрдбрд╛рдВрддрд░рдХ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди, рдЬрд┐рд╕реЗ рдкрд┐рдЫрд▓реЗ рджрд╢рдХ рдореЗрдВ рд╡реЗрдм рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ ред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЧрд╛рдпрдм рдерд╛ред
WebAssembly
рдбреЗрд╡рд▓рдкрд░реНрд╕ рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐
WebAssembly рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рдереАред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рд░рд▓ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣рд▓реНрдХреА рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд▓реНрдкрдирд╛ рдХреА рдЧрдИ рдереАред рдХрд┐рд╕реА рдиреЗ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХреА рдереА рдХрд┐ рдпрд╣ рдХрд┐рд╕ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдПрдХ рд╡реЗрдм рдкреЗрдЬ рдкрд░ рдлреЙрд░реНрдо рд▓рд┐рдЦрдиреЗ рдЬреИрд╕реА рд╕рд░рд▓ рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдПред
рддрдм рд╕реЗ, рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдХреЛрдб рдХреЗ рд╕рд╛рде рдЬрдЯрд┐рд▓ рдХрдВрдкреНрдпреВрдЯрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдкреНрд░рдЧрддрд┐ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рддреНрд╡рд░рд┐рдд рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдкреНрд░рднрд╛рд╡реА рдЗрдВрдЬрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рднреА рдкреНрд░рдпрд╛рд╕, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЖрдпрд╛, рдпрд╣ рдмрд╕ рд╢рд╛рд░реАрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕рдВрднрд╡ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реАрдорд╛рдПрдБ рд╣реИрдВред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗрд╡рд▓ рдЗрд╕ рдХреЛрдб рдХреЛ рдХрдо рд╕реЗ рдХрдо рдЙрддрдиреА рддреЗрдЬреА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореВрд▓ рдХреЛрдбред
рдореЛрдЬрд╝рд┐рд▓рд╛ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкрд░рд┐рдкрдХреНрд╡ рдерд╛, рдЬрд╣рд╛рдВ рдЖрдк рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдХреЛрдб рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдФрд░ рдХреБрдЫ рд╕рд╛рд▓ рдкрд╣рд▓реЗ
asm.js рдХреЛ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд░реВрдк
рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛
рдЧрдпрд╛ рдерд╛ (Google рдиреЗ
рдореВрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ API рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛)ред Asm.js рд╕рдмрд▓рдВрдЧреЗрдЬ рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рд╕рд╛рдмрд┐рдд рд╣реБрдЖ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛: рд╣рдореЗрдВ рдПрдХ рд╕рдВрдпреБрдХреНрдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╡рд┐рдХрд╛рд╕ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕реЗрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬреЛ рд╡реЗрдм рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдПрдЧреАред
рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рднрд╛рд╖рд╛ WebAssembly рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИ рдФрд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ - рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореВрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рддрд░рд╣ред
рдЕрдм рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЖрдк рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди 3 рдбреА рдЧреЗрдо, рдХрдВрдкреНрдпреВрдЯрд░-рдПрдбреЗрдб рдбрд┐рдЬрд╝рд╛рдЗрди (рд╕реАрдПрдбреА) рд╕рд┐рд╕реНрдЯрдо, рд╡реАрдбрд┐рдпреЛ рдПрдбрд┐рдЯрд░, рдЧреНрд░рд╛рдлрд┐рдХ рдПрдбрд┐рдЯрд░, рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди, рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ, рд╡реАрдбрд┐рдпреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ - рдХреБрдЫ рднреА рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдордп рдХреЗ рд╕рд╛рде, рдХрдИ рдореМрдЬреВрджрд╛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди - рдореЗрд▓, рд╕реЛрд╢рд▓ рдиреЗрдЯрд╡рд░реНрдХ, рдЯреЗрдХреНрд╕реНрдЯ рдПрдбрд┐рдЯрд░ - рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪреМрдЦрдЯреЗ WebAssembly рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЬреЛ рдбрд╛рдЙрдирд▓реЛрдб рдЧрддрд┐ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдк рд╕реЗ рд╡реГрджреНрдзрд┐ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЙрдирдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХрд░реЗрдВрдЧреЗредрдлреНрд▓реИрд╢ рдЬреИрд╕реЗ рдЕрдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬрд┐рд╕рдореЗрдВ рджреЗрд╢реА рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрддрд┐ рд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкреНрд▓рдЧ-рдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, WebAssembly рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рдирдХ рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдПрдХреАрдХреГрдд рдПрдХ рдЦреБрд▓рд╛ рдФрд░ рд╕рдВрдЧрдд рдорд╛рдирдХ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реАрдкреАрдпреВ-рдЧрд╣рди рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ (рд╕рдВрдкреАрдбрд╝рди, рдЪреЗрд╣рд░реЗ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ, рднреМрддрд┐рдХреА) рдХреЗ рд▓рд┐рдП WebAssembly рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореМрдЬреВрджрд╛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╕реАрдзреЗ рдХрд░рддреЗ рд╣реИрдВред
WebAssembly рдореЛрдЬрд╝рд┐рд▓рд╛, Google, Microsoft рдФрд░ Apple рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдПрдХ рдЦреБрд▓рд╛ рдорд╛рдирдХ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд╕рдореВрд╣ рдЪрд╛рд░ рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ wasm рдмрдирдиреЗ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Google Chrome (57) рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ WebAssembly рдХреЗ рд╕рдорд░реНрдерди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ, Microsoft рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдЬ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рднрд╛рд╖рд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдПрдХ рдкреНрд░рдХрд╛рд░ рдмрди рдЬрд╛рдПрдЧреА рдФрд░ рдЕрдВрдд рдореЗрдВ рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдЬреЗрдПрд╕ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдФрд░ Node.js. рдЬреИрд╕реЗ рд╕рднреА рд░рдирдЯрд╛рдЗрдо рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВред
WebAssembly рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХрд┐рд╕реЗ рд▓рд╛рдн рд╣реЛрдЧрд╛? рдпрд╣ рд╕рд┐рд░реНрдл wasm рдореЗрдВ рдирдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред
Emscripten рдЬреИрд╕реЗ
рдХрдВрдкрд╛рдЗрд▓рд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
, рдкреВрд░реЗ рдЧреЗрдо рдФрд░ рд░реЗрдбреА-рдореЗрдб рдореВрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╡реЗрдм рдкрд░ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕рдВрдХрд▓рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ C / C ++ рдХреЛрдб рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдореВрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд╕рдорд╛рди рдЧрддрд┐ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдЧрд╛ред C / C ++ рдХреЗ рдЕрд▓рд╛рд╡рд╛, Rust рднреА WebAssembly рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк
рдЬрд╝реЗрди рдЧрд╛рд░реНрдбрди рдбреЗрдореЛ (рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 52 рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдбреЗрд╕реНрдХрдЯреЙрдк рд╕рдВрд╕реНрдХрд░рдг рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИ) рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рдВрдХреНрд╢рдВрд╕ WebAssembly рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред рдпрд╣реА рд╣реИ, рдЖрдк рдХрд┐рд╕реА рдПрдХрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрднреА-рдХрднреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ C / C ++ / Rust рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдирд┐рдореНрди-рд╕реНрддрд░ рдХреЗ WebAssembly рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдФрд░ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЕрдм рдорд┐рдирд┐рдлрд╛рдЗрдЬреНрдб рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдореЛрдЬрд╝рд┐рд▓рд╛ рдиреЛрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд╕реНрддрд░ рд╕реЗ, рджреЗрд╢реА рдФрд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдХреА рджреАрд╡рд╛рд░ рдврд╣рдиреЗ рд▓рдЧреА рд╣реИ, рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рд╢реБрд░реБрдЖрдд рд╣реИред WebAssembly рд╕рдВрдЧрддрддрд╛, рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓, рдбреАрдмрдЧрд░ рдФрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреЗ рд░рд╣реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЛрдЬрд╝рд┐рд▓рд╛ рдХреА рдпреЛрдЬрдирд╛ рдЕрдм SIMD рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдФрд░ рдХрдВрд╕реАрдбрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред
"рдПрдХ рдЕрд░реНрде рдореЗрдВ, WebAssembly рдмрджрд▓ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдПрдХ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рдорддрд▓рдм рд╣реИ," рдбреЗрд╡рд┐рдб рдмреНрд░рд╛рдпрдВрдЯ, рдореЛрдЬрд╝рд┐рд▓рд╛ рдореЗрдВ рдордВрдЪ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдмрдВрдзрдХ рдХрд╣рддреЗ рд╣реИрдВ , "рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡реЗрдм рдХреЗ рдореВрд▓рднреВрдд рдЧреБрдгреЛрдВ рдХреЛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИред"рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрдм рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП C / C ++ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЙрди рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ - рдЬрд╛рд╡рд╛, рд╕реНрд╡рд┐рдлреНрдЯ, рд╕реА #ред рд╡реЗ рд╕рднреА рдорд╛рдирдХ рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдПрдХ рдЕрд░реНрде рдореЗрдВ, рд╕рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЕрдВрддрддрдГ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдмрди рдЬрд╛рдПрдВрдЧреЗред