Subject: Re: Anybody willing to share their cl-ppcre regex for validating email address
From: rpw3@rpw3.org (Rob Warnock)
Date: Sun, 06 Jan 2008 03:50:39 -0600
Newsgroups: comp.lang.lisp
Message-ID: <ccudnYvVV-DyOR3anZ2dnUVZ_gqdnZ2d@speakeasy.net>
Robert Uhl  <eadmund42@NOSPAMgmail.com> wrote:
+---------------
| If I read the pseudo-BNF in the RFC properly...
+---------------

Slight aside: What you call "pseudo-BNF" is actually called
"Augmented BNF" (ABNF), a well-known, well-defined extension
of basic BNF. As RFC 2822 "1.2.2. Syntactic notation" notes:

    ... Augmented Backus-Naur Form (ABNF) notation specified in
    [RFC2234] for the formal definitions of the syntax of messages.

RFC 2234 is a "refactoring" of earlier definitions of ABNF, which
was originally specified in RFC 733, copied in RFC 822, and used
in several other RFCs, each of which contained its own definition
of it [though they tended to be pretty much identical]. The main
difference between the ABNF of RFC 2234 and earlier versions is
that the ABNF of RFC 2234 is formally defined both in English
and again *in* ABNF, rather than in just English as in RFC 733.

[Note: RFC 4234 (in 2005) superceded RFC 2234 to correct a
number of minor typos and formatting infelicities. Also see
<http://en.wikipedia.org/wiki/Augmented_Backus-Naur_form>.]

So it's hardly "pseudo", any more than the "Modified BNF" used
in the ANSI Common Lisp Standard is:

    http://alu.org/HyperSpec/Body/sec_1-4-1-2.html


-Rob

p.s. There is a rich history of extensions to BNF, such as ISO-14977
EBNF <http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form>.

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607