> You can choose to use it (macros) or not.
Yet both examples use macros.
I might still got ptsd from a job where literally all of the rust codebase was written as macros. Since then I avoid them at all costs.
I find the route, that gleam took, way more elegant with squirrel (sqlx-ish) and lustre (elm-like) being examples of what we could have instead. Avoiding language mixing is so important for proper/clean lsp-support - yet macros are a different language as i see it.
As for the rest of this: i also don't see how it's any different from iced, egui etc. but maybe I didn't take the time to check the details...
Uh, what? The second DSL example is just pure Rust.
> btn.finish().with_child(pipe!($read(cnt).to_string()))
That second macro isn’t for constructing UI, which is the point of the two examples.