рдирдорд╕реНрдХрд╛рд░! рдФрд░ рдЗрд╕ рдорд╣рд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рдЖрдкрд╕реЗ https://github.com/ballercat/walt рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдБ
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХреМрди рд╕рд╛ рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЦреНрдп рдЕрдВрддрд░ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
рд╣реИрд▓реЛ @ рдПрдорд┐рд▓ 14 ,
рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл wat
рд╕реЗ рдЕрдзрд┐рдХ рдЙрдЪреНрдЪ рд╕реНрддрд░реАрдп рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪреАрдиреА рд╣реИ, рдЬреЛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрднрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╡рд╛рдж рд╣реИ рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рд╕рдордЭрд╛ рдорд╛рд▓рд┐рдХ: https://github.com/ballercat/walt/issues/11
рдореБрдЦреНрдп рдЕрдВрддрд░:
1) рдЕрд╕реЗрдВрдмрд▓реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рд▓реЗ рдкреИрджрд╛ рд╣реБрдПред рдмрд╕ рдкрд╣рд▓реЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рджреЗрдЦреЗрдВред
2) рдХреЗ рд░реВрдк рдореЗрдВ 'рдЫреЛрдЯреЗ' рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╕рдорд░реНрдерди - i8, u8, i16, u16 рдФрд░ i32 / u32, i64 / u64 рдмреЗрд╢рдХред walt
рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ i32 рдФрд░ i64 рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд╕рдХрддреЗ
3) AS рдПрдХ typescript
рд╕реБрдкрд░рд╕реЗрдЯ рд╣реИ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ javascript
tsc
рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред walt
рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ flow
рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╢реБрджреНрдз js рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред
4) AS рд░рдирдЯрд╛рдЗрдо рд╣реИ: Array
, ArrayBuffer
, рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рд╕рд░рдгрд┐рдпрд╛рдБ, String
, Map/Set
, Symbol
, рдореВрд▓ Math
, рдСрдкрд░реЗрдЯрд░ instanceof
рдФрд░ рдЖрджрд┐ walt
рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рдореВрд▓ рд╕рд╛рдорд╛рди рд╣реИред
5) рдЬреЗрдирд░рд┐рдХ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
6) AS рдХреЗ рдкрд╛рд╕ рдореЗрдореЛрд░реА рдореИрдиреЗрдЬрдореЗрдВрдЯ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдвреЗрд░ рдЖрд╡рдВрдЯрди рдХреЗ рд▓рд┐рдП рддреАрди рдкреНрд░рдХрд╛рд░: arena
, tlsf
рдФрд░ buddy
ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред walt
рдХреЛрдИ рд╕реНрдореГрддрд┐ рдкреНрд░рдмрдВрдзрди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
7) AS рдХреЛ рдХрдИ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдорд┐рд▓реЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рдмрдбрд╝реА рдФрд░ рд╕рдлрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдереА рдЬрд┐рд╕рдХрд╛ рдирд╛рдо wasmoy рдерд╛ ред
8) рдХрдИ рдЦреЗрд▓ рдХреЗ рдореИрджрд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд: WebAssembly Studio рдФрд░ Assembleash ред
9) рдХреЗ рд░реВрдк рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ binaryen
рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рддреЗрдЬреА рд╕реЗ рдХреЛрдб рдЬреЗрдирд░реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ ecriptcripten рдХреЗ рд▓реЗрдЦрдХ рдХреЗ рдХрдИ рдкрд╛рд╕ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдХреВрд▓рди рдХрд░рддреЗ рд╣реИрдВред walt
рд╕рдЯреАрдХ рдмрд┐рд▓реНрдЯ-рдЗрди рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдореГрдд рдХреЛрдб рдЙрдиреНрдореВрд▓рди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдЕрд░реЗ рд╣реЗ, рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж wasmoy @MaxGraey for
рдзрдиреНрдпрд╡рд╛рджред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдЯрд┐рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП AssemblyScript
рдмреЗрд╣рддрд░ рд╣реИ
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╣реИрд▓реЛ @ рдПрдорд┐рд▓ 14 ,
рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл
wat
рд╕реЗ рдЕрдзрд┐рдХ рдЙрдЪреНрдЪ рд╕реНрддрд░реАрдп рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪреАрдиреА рд╣реИ, рдЬреЛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрднрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╡рд╛рдж рд╣реИ рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рд╕рдордЭрд╛ рдорд╛рд▓рд┐рдХ: https://github.com/ballercat/walt/issues/11рдореБрдЦреНрдп рдЕрдВрддрд░:
1) рдЕрд╕реЗрдВрдмрд▓реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╣рд▓реЗ рдкреИрджрд╛ рд╣реБрдПред рдмрд╕ рдкрд╣рд▓реЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рджреЗрдЦреЗрдВред
2) рдХреЗ рд░реВрдк рдореЗрдВ 'рдЫреЛрдЯреЗ' рдкреВрд░реНрдгрд╛рдВрдХ рдХреА рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рд╕рдорд░реНрдерди - i8, u8, i16, u16 рдФрд░ i32 / u32, i64 / u64 рдмреЗрд╢рдХред
walt
рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ i32 рдФрд░ i64 рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд╕рдХрддреЗ3) AS рдПрдХ
typescript
рд╕реБрдкрд░рд╕реЗрдЯ рд╣реИ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗjavascript
tsc
рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИредwalt
рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕flow
рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╢реБрджреНрдз js рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред4) AS рд░рдирдЯрд╛рдЗрдо рд╣реИ:
Array
,ArrayBuffer
, рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рд╕рд░рдгрд┐рдпрд╛рдБ,String
,Map/Set
,Symbol
, рдореВрд▓Math
, рдСрдкрд░реЗрдЯрд░instanceof
рдФрд░ рдЖрджрд┐walt
рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рдореВрд▓ рд╕рд╛рдорд╛рди рд╣реИред5) рдЬреЗрдирд░рд┐рдХ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
6) AS рдХреЗ рдкрд╛рд╕ рдореЗрдореЛрд░реА рдореИрдиреЗрдЬрдореЗрдВрдЯ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдвреЗрд░ рдЖрд╡рдВрдЯрди рдХреЗ рд▓рд┐рдП рддреАрди рдкреНрд░рдХрд╛рд░:
arena
,tlsf
рдФрд░buddy
ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИредwalt
рдХреЛрдИ рд╕реНрдореГрддрд┐ рдкреНрд░рдмрдВрдзрди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред7) AS рдХреЛ рдХрдИ рдЙрджрд╛рд╣рд░рдг рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдорд┐рд▓реЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рдмрдбрд╝реА рдФрд░ рд╕рдлрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдереА рдЬрд┐рд╕рдХрд╛ рдирд╛рдо wasmoy рдерд╛ ред
8) рдХрдИ рдЦреЗрд▓ рдХреЗ рдореИрджрд╛рдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд: WebAssembly Studio рдФрд░ Assembleash ред
9) рдХреЗ рд░реВрдк рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ
binaryen
рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рддреЗрдЬреА рд╕реЗ рдХреЛрдб рдЬреЗрдирд░реЗрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ ecriptcripten рдХреЗ рд▓реЗрдЦрдХ рдХреЗ рдХрдИ рдкрд╛рд╕ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдХреВрд▓рди рдХрд░рддреЗ рд╣реИрдВредwalt
рд╕рдЯреАрдХ рдмрд┐рд▓реНрдЯ-рдЗрди рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдореГрдд рдХреЛрдб рдЙрдиреНрдореВрд▓рди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред