Josh K tiene razón en algunos aspectos, es mejor conocer php para apuntar mejor al tiempo de ejecución de php. Sin embargo, la razón principal de esto no es que haxe sea un mal compilador, sino que php es un lenguaje tan "idiosincrásico".
Php tiene una increíble cantidad de funciones en su espacio de nombres base. Por lo tanto, hay muchas palabras clave reservadas y funciones especiales que debe conocer para evitar conflictos de nombres. Algunas personas están de acuerdo con esto, creo que es un diseño de lenguaje horrible. HaXe soluciona este problema creando su propio espacio de nombres en php.
Php convierte automáticamente un entero en un flotador en caso de desbordamiento. Esto, por supuesto, rompe la escritura estricta en la que confían lenguajes como HaXe para la seguridad de los tipos (y para habilitar cosas simples como algoritmos de hash rápidos). Creo que esta es otra característica terrible del lenguaje. Además, haXe no puede ayudar aquí, porque este comportamiento de php no se puede cambiar.
Ahí vas. Creo que haXe mejora php porque limpia algunas fallas de lenguaje (percibidas) para php. Sin embargo, hay tantas cosas raras sobre php, que terminas necesitando aprenderlo bien para corregir algunas de sus idiosincrasias.
Dicho todo esto, el lenguaje haXe es bastante sorprendente. Le permite organizar su código php en mejores espacios de nombres, tiene un sistema de tipos bastante sofisticado, tiene algunas opciones de compilación condicional para manejar problemas específicos de php y tiene algunas buenas operaciones de documentación. Solo por esas razones, no es una mala elección diseñar una biblioteca sofisticada ... incluso para algo como php.
Enlaces relevantes:
php magic:
http://haxe.org/doc/advanced/magic
(también busque "peculiaridades de la plataforma" en la sección de la comunidad del sitio principal de haxe.org)