LINUX.ORG.RU

Rust, Golang, Web

 ,


0

5
  • Применение на Backend
  • Применение с WebAssembly У Go тяжелый рантайм, что делает его не пригодным для использования с wasm - это правда? Знатоки, использующие эти две технологии, что скажете? Насколько разные у них сферы?

Для фуллстека лучше взять что-то предназначенное для этого, вроде Clojure + ClojureScript или C#/F# + Blazor.

Если выбирать из двух, лучше всего компилируется в веб Rust.

commagray ★★★★★ ()

Ты лучше не язык выбирай, а сначала опреклись серверной разработкой хочешь заниматься, либо игрули (или что ты там делать собрался) под wasm писать.

WitcherGeralt ★★ ()
Ответ на: комментарий от Vit

В смысле, по сравнению с C/C++? Тогда: проще подтягивать зависимости. Хотя я в С/С++ уже много лет не смотрел. Может быть там сейчас лучше с этим делом стало.

В Rust большинство крейтов (например: работа с PNG, рассчет хешей, сериализация/десериализация, younameit) из коробки работают в wasm вообще без дополнительных «танцев». Бывают и проблемные крейты (привет, rand), но большинство из них уже полечены за прошедшие год(ы).

trex6 ★★★★★ ()
Последнее исправление: trex6 (всего исправлений: 1)

Голанг это девопс-эникеи, больше ничего там нет. Раст это лабы в пту и криптофантазии бородатых педиков. Проще говоря, денег там не заработаешь. Грядущее схлопывание пузыря IT вынесет всех этих клоунов на орбиту Юпитера.

anonymous ()
Ответ на: комментарий от Artamudo

то если не иметь ввиду исходный и бинарный код, то там всё те же s-expressions.

«там» это где? Внутри компилятора? Всё может быть.

Вообще в документации написано Instructions can be written as S-expressions by grouping them into folded form. Т.е. s-expression это просто одно из представлений.

WatchCat ★★★★★ ()
Ответ на: комментарий от Legioner

Разве Go умеет в wasm?

Умеет.

hello.go

package main

import (
    "syscall/js"
)

func main() {
    alert := js.Global().Get("alert")
    alert.Invoke("Hello Wasm!")
}
$ cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" . 
$ cp "$(go env GOROOT)/misc/wasm/wasm_exec.html" .
$ GOARCH=wasm GOOS=js go build -o test.wasm hello.go
$ python3 -m http.server

затем открываешь в браузере http://0.0.0.0:8000/wasm_exec.html

dadd ★★★ ()

Я писал несколько простых бекендов на расте just for fun. В целом понравилось, но типизация в ОРМе получается достаточно ядреной. Но зато if it compiles then it works.

provaton ★★★★★ ()