
Rust gets working asmjs and wasm targets - wyldfire
https://github.com/rust-lang/rust/pull/36339
======
rubber_duck
Seeing that build randomly breaking on mingw reminds me of the 'fun' I've had
dealing with cross platform/compiler development in C++, it will be a great
day when I can just do something like 'cargo build' for
asmjs/Android/iOS/Windows/OSX/Linux and this brings us one step closer :)

~~~
Manishearth
You already can, just `rustup add toolchain <triple>` and `cargo build
--target <triple>`

~~~
masklinn
On the current rustup (0.6.3) it seems to be `toolchain install`, not `add
toolchain`. Is `add toolchain` a new change with a different syntax?

~~~
Manishearth
No, my memory just sucks :)

------
paxcoder
Please someone figure out how to use Web APIs with Web Assembly so we can
finally move away from EcmaScript's madness

~~~
vmasto
Honest question. Given the vast amount of languages that compile to JavaScript
what's stopping you from moving away from EcmaScript's "madness"?

~~~
cjhanks
An outside opinion... The JavaScript world is so fractured, what would you
use? Kotlin, Dart, Elm, CoffeeScript, ClojureScript, Nim...? Which ones will
keep going?

~~~
the_duke
In my opinion, there are three big problems with coding for the web in a
language that compiles to JS:

 _) The object models from other languages range from somewhat compatible to
totally different. Mapping another language to good JS code is a challenge.

_ ) Debugging and profiling become a hassle. Even with proper sourcemaps, you
are just much further away from the native JS runtime.

*) Libraries. As soon as you want to use something like React, underscore, etc, you need a method to bring some stub definitions into your host language. This is solved in different ways, but always a burden. Often a very annoying one.

Webassembly right now is useful for cases where high perf is really needed
(games, cpu intensive tasks, ...), but there is no access to the dom.

You ultimately need Javascript to interact with the Browser.

I recommend Typescript. It's a better language than ES(2015), but tries to
remain close and compatible. It's also got enough traction and support
(enterprises/big projects love it) to not be in danger of just going away.

~~~
bobajeff
>Webassembly right now is useful for cases where high perf is really needed
(games, cpu intensive tasks, ...), but there is no access to the dom.

Just want to point out that asm.js is useful for the same thing. The initial
version will be roughly equivalent to asm.js anyway. Just with more consistent
optimizations across browsers, faster startup and shorter downloads.

------
icefox
The commit mentions that hello.rs work, anyone happen to notice if a copy of
the resulting hello.wasm is posted anywhere? Or the steps to build hello.rs to
hello.wasm?

~~~
steveklabnik

      > Or the steps to build hello.rs to hello.wasm?
    

This will get easier next week, when we get the build bots to produce the
right things.

With a little work, it should be something like

    
    
      $ rustup add toolchain some-wasm-triple
      $ cargo build --target some-wasm-triple
    

in my understanding.

