Size: a a a

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

2020 December 07

DB

Dmitry Bubnenkov in WebAssembly — русскоговорящее сообщество
А что за Ребол машина?
источник

DB

Dmitry Bubnenkov in WebAssembly — русскоговорящее сообщество
Чем он машины лисп отличается?
источник

IP

Iaroslav Postovalov in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Но я согласен в том плане, что в идеальном мире Wasm должен был бы быть чем-то в духе переносимой софтварной Лисп-машины. Ещё лучше -- "Rebol машины". Но имеем то, что имеем.
можно не надо
источник

IP

Iaroslav Postovalov in WebAssembly — русскоговорящее сообщество
лучше бы интероп подешевле сделали, честно
источник

SK

Slava Kuzmich in WebAssembly — русскоговорящее сообщество
MaxGraey
В том то и дело что нет) Кроме того, не факт что GC быстро появиться в standalone рантаймах, с браузерами там все ясно, он там уже есть)
Если нет хостового GC с которым нужно интеропиться, то и в Wasm GC не особо нужен. Можно написать конвертор из Wasm+GC в Wasm-MVP, и не нужно на всех рантаймах поддерживать.
источник
2020 December 08

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Dmitry Bubnenkov
А что за Ребол машина?
Нет такой машины, есть (был?) такой язык.
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Блин, такой момент хотел прояснить..
У  GoLang есть офигенно удобная кросс-компиляция.. я на нем пишу всякие мелкие тулзы и собираю их на все платформы
Хотелось бы такого для Rust, но у раста уже сложнее и без гемора не собрать бинарь под маком для винды например.. или наоборот

Но раст, как и кучу всего другого, можно собрать в wasm на любой платформе
теперь бы как-то сконвертить wasm в Go или запустить этот wasm на виртуальной машине реализованной в Go, то получились бы бинарники для всех платформ без зависимостей

для Go есть wasmer-go, но я так понял это на базе растовского рантайма и лего такое уже не собрать
остальне виртуалки wasm на go заброшены или не поддерживают wasi
Может я что-то упустил касательно golang? Есть ли сейчас реализация с wasi на чистом Go?

Требует CGO
https://github.com/wasmerio/wasmer-go

Последний коммит год назад, WASI не поддерживает вроде бы
https://github.com/perlin-network/life

https://github.com/mathetake/gasm
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
mAX
Блин, такой момент хотел прояснить..
У  GoLang есть офигенно удобная кросс-компиляция.. я на нем пишу всякие мелкие тулзы и собираю их на все платформы
Хотелось бы такого для Rust, но у раста уже сложнее и без гемора не собрать бинарь под маком для винды например.. или наоборот

Но раст, как и кучу всего другого, можно собрать в wasm на любой платформе
теперь бы как-то сконвертить wasm в Go или запустить этот wasm на виртуальной машине реализованной в Go, то получились бы бинарники для всех платформ без зависимостей

для Go есть wasmer-go, но я так понял это на базе растовского рантайма и лего такое уже не собрать
остальне виртуалки wasm на go заброшены или не поддерживают wasi
Может я что-то упустил касательно golang? Есть ли сейчас реализация с wasi на чистом Go?

Требует CGO
https://github.com/wasmerio/wasmer-go

Последний коммит год назад, WASI не поддерживает вроде бы
https://github.com/perlin-network/life

https://github.com/mathetake/gasm
Может, проще в Rust-чате спросить как кросс-компилировать? Xargo, там и всякое такое?
источник

MG

Musлим Guseinov in WebAssembly — русскоговорящее сообщество
А что значит для всех платформ без зависимостей? Вы ведь не компилите wasm под конкретную платформу. Я наверное суть задачи не уловил
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Или Wasm в C++ конвертировать, Вы удивитесь, но C++ тоже можно кросс-компилировать.
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Может, проще в Rust-чате спросить как кросс-компилировать? Xargo, там и всякое такое?
я разбирался использую кросскомпиляцию для некоторых платформ, но это все же не настолько удобно) с Golang более универсальное решение было бы, в том числе и для C++ и других языков
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Или Wasm в C++ конвертировать, Вы удивитесь, но C++ тоже можно кросс-компилировать.
все равно это тулчейны всякие mingw и прочее.. c go просто строчка в конфиге
для всяких утилит где неважна скорость и размер бинаря это просто суперудобно!
источник

MG

Musлим Guseinov in WebAssembly — русскоговорящее сообщество
Musлим Guseinov
А что значит для всех платформ без зависимостей? Вы ведь не компилите wasm под конкретную платформу. Я наверное суть задачи не уловил
Вопрос снимается
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
mAX
все равно это тулчейны всякие mingw и прочее.. c go просто строчка в конфиге
для всяких утилит где неважна скорость и размер бинаря это просто суперудобно!
Как насчёт поставить бинарный Wasmtime на все нужные платформы и тупо собирать Wasm вообще без конфигов? 😂
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Musлим Guseinov
А что значит для всех платформ без зависимостей? Вы ведь не компилите wasm под конкретную платформу. Я наверное суть задачи не уловил
мы можем wasm файл сконвертить в бинарный массив golang
и дальше загрузить его в виртуалку на "pure Golang")
тогда весь исходный код вместе с данными wasm на Go и удобство сборки получаем автоматически
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Как насчёт поставить бинарный Wasmtime на все нужные платформы и тупо собирать Wasm вообще без конфигов? 😂
это из разряда собрать rust на маке под винду
нужно будет тулчейн для линковки
возможно, конечно, но не так просто как было бы с Go)
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
mAX
это из разряда собрать rust на маке под винду
нужно будет тулчейн для линковки
возможно, конечно, но не так просто как было бы с Go)
источник

m

mAX in WebAssembly — русскоговорящее сообщество
Тогда наверное я не разобрался до конца..
Там есть тулза которая сделает из wasm бинарник для любой платформы?
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
mAX
Тогда наверное я не разобрался до конца..
Там есть тулза которая сделает из wasm бинарник для любой платформы?
Бинарник-то зачем?
источник

m

mAX in WebAssembly — русскоговорящее сообщество
mingw кстати можно ли статически слинковать?
если оно зависимости начнет требовать это неудобно
источник