Generating general AST syntax from Elixir app

Languages often don’t share even more basic things like supported datatypes. AST of languages is made up of datatypes supported by each individual language. Therefore ASTs usually are not sharable.

E.g. elixir uses atoms extensively, which are a concept only available on the beam. There are some languages, which have similar datatypes to atoms, but there are also many, which don’t have anything comparable.

You’re probably better sharing data (e.g. json is commonly supported) + language specific code parsing/using that data, rather than trying to abstract through some AST.