Size: a a a

2021 June 08

DG

Dmitry Grach in pro.elixir
Вероятно, все уже видели и тут обсуждали: https://github.com/lumen/lumen
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Почитай про WASI
источник

LL

Lama Lover in pro.elixir
Я насчёт этого много думал, и нет, в 99% случаев нельзя.
Единственный 1% когда можно, это когда данные пересылаются в другой процесс, а в текущем не используются, но это случается очень-очень редко. И ещё реже это можно доказать в компайле
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Короче говоря, в двух словах:

Wasm имеет только память, которую выделяет рантайм - ее можно контролировать. Доступ ко всему остальному отсутствует.
В этой памяти он себе делает хип, стек - что хочет.

Этим он похож на lua. Но! Это типа асм, то есть кто-то в него компилируется.

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

LL

Lama Lover in pro.elixir
> Все системные вызовы происходят колбэканьем взад рантайма

Что это значит?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Нету функции «запись в файл». Вместо этого Wasm просит это сделать рантайм
источник

ŹR

Źmićer Rubinštejn in pro.elixir
И рантайм может сказать «иди нафик»
источник

ММ

Максим Мартынов... in pro.elixir
идея транспиляции/компиляции в него других языков становится еще большим кактусом
источник

ММ

Максим Мартынов... in pro.elixir
это больнее простого перевода на JS
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Есть wasi - это стандартный набор коллбэков, который знают всякие компиляторы
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Например раст может компилировать в wasm таргет, а может в wasi
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Тогда File.open либо будет «или нахуй» либо соответствующий вызов в рантайме
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Вот только ты можешь написать свой таргет и ограничить то что хочешь
источник

ŹR

Źmićer Rubinštejn in pro.elixir
И вот кстати emacripten это тоже таргет
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Он в миллиард раз больше чем wasi, потому что там колбычены все js фунуции
источник

LL

Lama Lover in pro.elixir
Так оно также и в обычном ядре
Ядро ещё может сказать что-то типа: "попробуй в следующий раз"
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Только у тебя прослойка есть лично твоя
источник

LL

Lama Lover in pro.elixir
Что ты имеешь в виду?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Ты же не конфигурируешь ядро. А рантайм вазма- легко
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Как луа
источник