PHP is adding union types, and even has a 'false' type to clarify the possible return values from built in functions!
miniblog.
Related Posts
I've released difftastic 0.62! In this release:
* Updated parsers for Bash, C, C++, C#, CSS, Go, Haskell, HTML, Java, JavaScript, JSON, Julia, Lua, Objective-C, OCaml, PHP, Python, Ruby, Scala, TOML, TypeScript and XML.
* Obligatory crash fixes.
Microsoft is writing a PHP parser that handles error recovery well, and the internals docs are really accessible.
It includes a discussion of handling trivia and even some sample parsing code.
A wonderful article explaining how compiler drivers work, clarifying the relationship between the preprocessor, the compiler proper, and the linker:

