@katyucha Elm compiles to JS whereas Grain compiles to wasm. Grain doesn't need any JS besides the Node.js runtime necessary to manipulate DOM. (wasm cannot handle DOM right now.)
Other than those, it's pretty similar in that it's functional, and statically and strongly typed.
Note that unlike Elm, Grain is still WIP and isn't production ready.