The guys at Mailgun are taking a very interesting approach at the ever-lasting problem of proper Email validation:

Given an arbitrary address this service validates address based off syntax checks (RFC defined grammar), DNS validation, spell checks, and if available, Email ServiceProvider (ESP) specific local-part grammar.

They’re relying on formal grammar and not on regex like the rest of us, which is perhaps the more intriguing aspect of the project. Being Email Service Providers themselves they have good knowledge of most ESPs local-part grammars (the left side of the @ symbol) so when there is a match, they’re validating local-parts too.

At the cost of a slight delay DNS, MX and A record validation adds robustness to the process (didn’t really perceive any slowness during my tests). What really shines however, at least in my eyes, is the included “correct address suggestion service”.

At the moment they are providing a free API  and a mail address validation page. Here’s the catch: consuming the API requires a free Mailgun account. According to their own statement however they are also going to open source the tool and yes, it’s going to be in Python.