Tintin said:
A more valid question is whether *any* programming language can check the
validity of an email address.
Not possible in most cases. You'll need to rethink your requirements.
About the closest you'll get is what's available in Email::Valid
See
http://search.cpan.org/~maurice/Email-Valid-0.15/Valid.pm
Actually, I should also mention Mail::CheckUser
See
http://search.cpan.org/~ilyam/Mail-CheckUser-1.21/CheckUser.pm
In particular, the following paragraph:
In many cases there is no way to detect the validity of email addresses with
network checks. For example, non-monolithic mail servers (such as Postfix
and qmail) often report that a user exists even if it is not so. This is
because in cases where the work of the server is split among many
components, the SMTP server may not know how to check for the existence of a
particular user. Systems like these will reject mail to unknown users, but
they do so after the SMTP conversation. In cases like these, the only
absolutely sure way to determine whether or not a user exists is to actually
send a mail and wait to see if a bounce messages comes back. Obviously, this
is not a workable strategy for this module. Does it mean that the network
checks in this module are useless? No. For one thing, just the DNS checks go
a long way towards weeding out mistyped domain parts. Also, there are still
many SMTP servers that will reject a bad address during the SMTP
conversation. Because of this, it's still a useful part of checking for a
valid email address. And this module was designed such that if there is
exists possibility (however small) that the email address is valid, it will
be treated as valid by this module.