Envoy extension with Lua VS with WASM

We are expecting to develop api gateway on base of Istio envoy extension feature.
Per the community information, there are 3 options, as below:

We would like to learn from Community professor below concerns:

  • Whether upper comparison is exactly?
  • Any best practice on the envoy extension?
  • which one is preferred?