In the JSX article, there is a quote:
Angular, Ember and Knockout put “JS” in your HTML.
React puts “HTML” in your JS.
The analogy here is:
ElixirScript puts “JS” in your Elixir.
What I have proposed puts “Elixir” in your JSX.
I.e. Yes, Elixir is more powerful than JS–that’s why we’re replacing it. But, I hope you’d agree that JSX is a better DSL for the frontend.
From an implementation standpoint, this may mean creating a JSX DSL for Elixir (like Phoenix’s Ecto is for SQL queries).
I.e. Keep React’s design patterns and JSX. Replace JavaScript’s syntax with Elixir’s.
Actually, you don’t even need to handroll the DSL. You can just have a special render macro which accepts a do: block with JSX as its last argument.


















