Size: a a a

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

2020 August 06

MP

Michael Pavlovsky in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Писать ответы для FAQ — это hard skill, но для Developer Advocate, а не Software Engineer. 😊
1) Спосибность четко сформулировать ответ а не первести в дискуссию это важно для девелоперов всех уровней. 2) Архитектурные traidoffs проекта должны быть четко обозначены и поняты всему team - иначе один маленький вопрос и все дискутируют часами <EOF>
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
@maxgraey кстати говоря, то что с https://www.assemblyscript.org/ нет ссылки Docs — немного озадачивает. Да, Get Started ведёт куда надо, но это не очевидно.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
@maxgraey кстати говоря, то что с https://www.assemblyscript.org/ нет ссылки Docs — немного озадачивает. Да, Get Started ведёт куда надо, но это не очевидно.
Да тоже так считаю
источник

N

Nikolay in WebAssembly — русскоговорящее сообщество
Michael Pavlovsky
1) Спосибность четко сформулировать ответ а не первести в дискуссию это важно для девелоперов всех уровней. 2) Архитектурные traidoffs проекта должны быть четко обозначены и поняты всему team - иначе один маленький вопрос и все дискутируют часами <EOF>
Зачем столько английских слов? Такие вещи как скилл или команда, можно было и по русски написать
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Nikolay
Зачем столько английских слов? Такие вещи как скилл или команда, можно было и по русски написать
Ну Вы ещё вспомните, что tradeoff — это компромисс! 😂
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
MaxGraey
Да тоже так считаю
Но так ктсати у большинства сайтов посвященных какому либо языку. Мейнстрим)
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
MaxGraey
Но так ктсати у большинства сайтов посвященных какому либо языку. Мейнстрим)
Большинство сайтов — говно, это широко известный факт. 😂
источник

MP

Michael Pavlovsky in WebAssembly — русскоговорящее сообщество
Nikolay
Зачем столько английских слов? Такие вещи как скилл или команда, можно было и по русски написать
Извини, я очень стараюсь. Я закончил только 8 классов в Советской школе и не писал на русском больше 30 лет. :)
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Michael Pavlovsky
Извини, я очень стараюсь. Я закончил только 8 классов в Советской школе и не писал на русском больше 30 лет. :)
Тогда в копилку: skill = умение. 😉
источник

N

Nikolay in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Ну Вы ещё вспомните, что tradeoff — это компромисс! 😂
Просто выглядит очень плохо, сложно информацию воспринимать всерьез
источник

N

Nikolay in WebAssembly — русскоговорящее сообщество
Michael Pavlovsky
Извини, я очень стараюсь. Я закончил только 8 классов в Советской школе и не писал на русском больше 30 лет. :)
А, тогда понятно) не хотел обидеть)
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Nikolay
Просто выглядит очень плохо, сложно информацию воспринимать всерьез
Тогда просто не воспринимайте всерьёз — никто же не заставляет. 🤷‍♀️
источник

c

cevek in WebAssembly — русскоговорящее сообщество
MaxGraey
На самом деле я бы действительно очень развернуто ответил на вопрос почему не LLVM. Но вопрос сформулирован иначе, я бы даже сказал с неким упреком) Хотя может и нет
мне вот интересно про проблемы транспиляции в llvm
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
cevek
мне вот интересно про проблемы транспиляции в llvm
У Дмитрия Патцюры автора StaticScript есть отличный доклад на эту тему. Хотя там ничего не сказано про то, что LLVM еще и очень медленный и чертовкий прожерливый к ОЗУ, именно поэтому Роб Пайк и ко не стали его использовать для Go.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
И после всего этого что emscripten (который использует binaryen), что Rust (использующий binaryen через wasm-pack) вынуждены все равно использовать binaryen в качестве финализирующего шага для webassembly
источник

Г

Георгий in WebAssembly — русскоговорящее сообщество
почему вынуждены?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
потому что binaryen обычно убирает от 15-40% кода сгенерированного LLVM даже максимальным уровнем lto и стрипнутыми секциями. Binaryen заточен оптимизировать именно стековый байткод, в то время как LLVM проводит в основном оптимизации на регистровым IR. Кроме того LLVM делает очень много вещей, которые имеют смысл для нативных целей. Binaryen это потом вынужден иправлять / оптимизировать
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Еще очень приятный бонус с Binaryen в том, что если ты хочешь скомпилировать максимально быстро и без оптимизаций (-O0) то binaryen будет мапить 1-в-1 и код выйдет всего лишь ы 2-3 раза медленее и столько же раз больше чем скажем полностью опимизированная версия той же программы с -O3
источник

c

cevek in WebAssembly — русскоговорящее сообщество
а почему binaryen не имеет компиляции в wasm? в смысле сам компилятор чтобы был в васме, будет ведь явно быстрее комплиляция в браузере чем результат от ecmscripten
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
С LLVM все иначе. Если скомпилировать c -O0 без оптимизаций то LLVM будет делать преобразование в SSA-форму а это в десятки раз раз больше кода и намного более сильная пропасть между -O0 и -O3 в плане производительности
источник