Their syntax stack probably tries to do a POP operation when it hits the "else" keyword, but without the PUSH from a preceding "if" keyword they would get a stack underflow. It should be an error, but they may simply have coded it to ignore the POP on an empty stack. I am not in my modding environment right now, so can't test this, but it may be that similar code blocks would also compile.
It's also possible that they didn't compile this for release in the CS, but rather may have stored all the scripts in some sort of version control system or repository, then sent them through a batch compile system. The CS is great for us modders doing a couple dozen at a time, but it's not how I'd approach the final-release packaging of hundreds of scripts at once.
If my stack theory is correct, it's also possible that the "begin" keyword is a stack PUSH, and the unmatched "else" is a POP. In that case, the code before the "else" would execute unconditionally but the code after "else" may have been ignored and possibly not even scanned by the compiler. It would be interesting to see if this is the way it behaves in the game.
Writing language compilers is *hard*; I've done it professionally in a healthcare insurance app with an app-specific syntax. The folks at Bethesda, or their subcontractors, had a really tough challenge to make even this rather simplistic language work with the raw speed it does, across three very different hardware platforms.
Interesting easter egg find. :-)