They're two different things; this post is the general release announcement, that post is a deep dive on one specific feature.
That said, only one or the other should probably be on HN; it's a tough call as to which. This post is more general, but people are going to care about async/await more than anything else...
Completely agree. That ways discussion would be at one place and front page won't be hogged with possible duplicates.
Right now the other post is enjoying more attention and has meaningful engaging discussion. Requesting @dang to remove this (21473257) from front page and possibly tag the other one (21473259) with 1.39.0 release.
Time to give this lang a try. Been wanting to build a web assembly large data table mechanism for a while, and rust appears to be an idea candidate from what i read (speed and reliability). Although it could be done using SQLite, i think could be a nice little project for learning Rust.
Why target WebAssembly instead of straight native? I know that Rust is one of the "ideal" languages for WebAssembly but I thought the main point was systems level programming, not for writing code that runs in a web browser.
My primary interest in Rust is for gamedev, as an alternative to C++. The library ecosystem is a bit weak right now, although there's a lot of interest and people working to fix that, and I think the fundamental language is a great fit.
WASM lets me reuse the same codebase to host demos/previews/simpler games directly inside of a website, without needing to convince the user it's trustworthy and worth their time to download/install/grant permissions to first.
Hmm well, what I had in mind was something more of and array of arrays, where each array is a row and at each index there is a column. What I had in mind is a download of such arrays, inject them to wasm, and then access them using an external interface. Was thinking about using basic array methods as I am pretty much non experienced in Rust, and would be a good learning exercise. A relational language tho might be interesting.
Well, I'm not far from it. The original plan was base all on top a ndarray. I backed off when see how problematic was to do CRUD operations and JOINS.
Now I support: Scalars, Vectors, Tables (Vectors of Row vectors) and Indexed tables (Table alike on top of BTree). Now i'm trying to solve how incorporate iterators (https://www.reddit.com/r/rust/comments/dnhzo1/for_a_interpre...). Solving this the lang is ready to go for a MPV.
I plan to use for real for my projects, so is not just a exercise for fun.
It's a pleasant suprise how easy targeting wasm is from Rust. Just pass on the right `--target` flag to `cargo build` if you have the toolchain installed.
Rustc would generate (unrelated) warnings for the generated code but before the bugfix it'd print the entire line, hitting the maximum log size limit on CI and causing the build to fail because of that.
Another fix (one mentioned in detailed release notes) is where asinh(-0.0) used to return 0.0
These unexpected behaviours are tough to nail down when one is trying to get the code/setup working. Really appreciate the time these fixes potentially save for future users. The complex nature probably also hints at maturity of Rust codebase.
As someone who uses rust a fair amount, I can say that the syntax looks pretty normal to me. It's saying "only define this field if we're compiling on windows." I parsed that out immediately.
Maybe it just takes a bit of familiarity with the language, but everything does fit together really well after the initial learning phases.
23 comments
[ 0.29 ms ] story [ 63.8 ms ] threadThat said, only one or the other should probably be on HN; it's a tough call as to which. This post is more general, but people are going to care about async/await more than anything else...
Right now the other post is enjoying more attention and has meaningful engaging discussion. Requesting @dang to remove this (21473257) from front page and possibly tag the other one (21473259) with 1.39.0 release.
WASM lets me reuse the same codebase to host demos/previews/simpler games directly inside of a website, without needing to convince the user it's trustworthy and worth their time to download/install/grant permissions to first.
I'm sure other SPAs could also see benefits...
P.D: I'm building a relational language (not engine, but could be part of it)
Now I support: Scalars, Vectors, Tables (Vectors of Row vectors) and Indexed tables (Table alike on top of BTree). Now i'm trying to solve how incorporate iterators (https://www.reddit.com/r/rust/comments/dnhzo1/for_a_interpre...). Solving this the lang is ready to go for a MPV.
I plan to use for real for my projects, so is not just a exercise for fun.
It's important because unless rustfmt is available, bindgen would put everything onto one line: https://github.com/rust-lang/rust-bindgen/issues/1600
Rustc would generate (unrelated) warnings for the generated code but before the bugfix it'd print the entire line, hitting the maximum log size limit on CI and causing the build to fail because of that.
These unexpected behaviours are tough to nail down when one is trying to get the code/setup working. Really appreciate the time these fixes potentially save for future users. The complex nature probably also hints at maturity of Rust codebase.
Maybe it just takes a bit of familiarity with the language, but everything does fit together really well after the initial learning phases.