Size: a a a

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

2021 October 22

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
или на прошлой 🤔
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
я просто почему спрашиваю, не так давно по предложению Бена Титзера для выбора системы типов для Wasm GC мы должны сделать два прототипа - с номинальной системой типов и со структурной. Для номинальной системы типов команда V8 все сделала, а вот других голосов в CG за структурный подход кроме Россберга особо нету. Вот и хотелось бы услышать людей, которые функциональные языки в wasm компилируют, чтобы понять что им надо
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
струкрурная типизация добавляет много рантайм оверхеда и ее практически никак не оптимизировать, в отличии от номинальной. В то же время структурную можно оносительно просто эмулировать поверх номинальной, а вот наоборот уже так просто не выйдет. Поэтому наверное все и были против и шли ожесточенные дебаты. В конечном итоге v8 и binaryen сейчас решили прототипировать обе системы одновременно (они будут разделены на уровне инструкций)
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
мне казалось что номинальную легко реализовать через структурную с небольшими хаками
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Так в Haskell нет структурной. 🤷‍♀️
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
там тоже номинальная? я не хаскелист)
источник

SK

Slava Kuzmich in WebAssembly — русскоговорящее сообщество
Кортежи через номинальную сделаны?
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Вот мне тоже. А как вообще в обратную сторону делать, @maxgraey ?
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Да. Откуда там структурная-то?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Имелось ввиду сделать так, что бы это было производительно. Со структурной особо не разгонишься, с номинальной поверх структурной так же
источник

SK

Slava Kuzmich in WebAssembly — русскоговорящее сообщество
Я тоже не хаскелист, но иногда кортежи с точки зрения языка - анонимные структуры, ковариантные относительно типов элементов. Можно конечно это все через Tuple1, Tuple2, Tuple3, … и универсальное представление сделать.
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
В Haskell нет подтипирования — нет и ко-/контравариантности соответственно. Структуры и туплы — разные типы. Анонимных структур вообще нет.
источник

AC

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

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Да по-разному можно. Вот не самый лучший вариант
http://whiley.org/2011/03/07/implementing-structural-types/
источник

AC

Alexander Chichigin in WebAssembly — русскоговорящее сообщество
Это статья про реализацию проверки структурных типов на языке с номинальными типами. Это понятно.
Я думал, мы говорим про пользовательские структурные типы прямо в языке с номинальными.
источник
2021 October 23

M

MaxGraey in WebAssembly — русскоговорящее сообщество
А у кого есть d8 скомпилированный с wasm disasm (v8_enable_disassembler) флагом на машине?
источник

DM

Demi Murych in WebAssembly — русскоговорящее сообщество
нужен именно d8?
какойнить wasm2wat неподойдет?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
нужно получить дизасм код турбофана для небольшого wasm файла
источник
2021 October 24

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
Буду пепесобирать V8 в понедельник, могу попробовать включить
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
было бы отлично!
источник