Size: a a a

WebAssembly — русскоговорящее сообщество

2021 August 28

К

Константин in WebAssembly — русскоговорящее сообщество
Но не нативный же, а поверх на своем рантайме.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Да, еще в AS нету структурной типизации пока, только номинальная, а в TS наоборот есть только структурная, а номинальной нету пока
источник

PM

Pavel Mellonges® in WebAssembly — русскоговорящее сообщество
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
Например, кмк студентов можно на примере ас учить прогать даже.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ну да. Wasm GC пока не завезли в Wasm. Да и не факт что будет сильно быстро с ним, по недавним отчетам Алона пока есть проблемы с этим, по крайней мере на примере с Java
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
На примере тс я бы не стал. Это костыли.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
AS кстати строже даже чем C++ особенно вплане приведения типов. Но менее строгий чем Rust
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
А в каком месте менее строгий? Менее выразительный в части типов -- это да.
источник

К

Константин in WebAssembly — русскоговорящее сообщество
борров чекера нет :)
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
В C++ больше UB смущает, чем это.
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Так и уникального владения, передачи владения и RO-ссылок нет. При наличии GC чекер не особо нужен. 🤷‍♀
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ну напримре в Rust нельзя сделать так:

let f = 1.0_f32;
let d = f + 1; //  d <- 2.0_f32


Будет ошибка:
no implementation for f32 + {integer}

В AS все будет ок:

let f = 1.0 as f32;
let d = f + 1;
> d = 2.0 (f32)
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
Кстати, а спецификация as существует? Где она (если да)?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Пока нету. Сейчас мы работаем над кое чем интересным. Потом возможно появится. Есть что то вроде White Paper предстоящих изменений, если интересно могу скинуть лично. Но то пока очень ранний draft
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
Я пока не настолько в теме, чтобы их понять, к сожалению ).
Так что если есть сомнения, то лучше потом.
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
А почему всё с массивами такое большое?
  var a = [0]
 return a[0]
собирается в тысячу строчек wat
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Я бы не сказал, что OCaml ещё более строгий, на основании того, что там нужно вообще писать let d = f .+ 1.0. 🤷‍♀
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Потому что поддтягивается рантайм - аллокатор и GC
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Пока нету shape и escape analysis
источник

НС

Никита Сковорода... in WebAssembly — русскоговорящее сообщество
Ага
источник