Re: early peek at a bit of fun

2001-06-18 Thread Peter Haworth

On Fri, 15 Jun 2001 21:39:31 +0100, Greg McCarroll wrote:
 If i haven't got your CPAN id included in the list at the
 bottom please email me off list, i just skipped through
 the who's who very quickly getting a decent list of people
 who looked london.pm-ish to test it.

Please include PMH on that list. Thanks

-- 
Peter Haworth   [EMAIL PROTECTED]
Everyone is a genius.
 It's just that some people are too stupid to realize it.



Re: early peek at a bit of fun

2001-06-18 Thread Peter Haworth

On Mon, 18 Jun 2001 10:58:09 +0100, Peter Haworth wrote:
 On Fri, 15 Jun 2001 21:39:31 +0100, Greg McCarroll wrote:
  If i haven't got your CPAN id included in the list at the
  bottom please email me off list, i just skipped through
  the who's who very quickly getting a decent list of people
  who looked london.pm-ish to test it.
 
 Please include PMH on that list. Thanks

Damn, damn and thrice, damn! This was, of course, supposed to be off-list.

Incidentally, I sent a request to the modules list over a week ago, and I haven't had 
any response yet, nor is my module in the list. I'm sure it was quicker for the other 
two requests I submitted.


-- 
Peter Haworth   [EMAIL PROTECTED]
If we do not hang together, we shall surely all hang separately.



Re: Upcoming technical meeting

2001-06-12 Thread Peter Haworth

On Fri, 8 Jun 2001 19:14:41 +0100, Dave Cross wrote:
 On Fri, Jun 08, 2001 at 03:34:28PM +0100, Peter Haworth
 ([EMAIL PROTECTED]) wrote:
  Can someone please remind me about the technical meeting on the 21st? Now 
  that it looks like I might be in London at the time, I find I've deleted 
  all the relevant messages and can't remember if there's an archive.
 
 Well, er..., there will be a meeting on the 21st. I spoke to Alex last 
 night and he said we could hold it at State 51.

Sadly, I can't make it to the meeting after all, even though I'll be in London the 
next day.

-- 
Peter Haworth   [EMAIL PROTECTED]
I just looked at the HTTP 1.1 spec (RFC 2616).  It's too fscking big.
 It's a Request For Comments, goddamnit,
 not a Request For An Epic Of Homeric Proportions!
-- David Cantrell



Re: Upcoming technical meeting

2001-06-12 Thread Peter Haworth

On Tue, 12 Jun 2001 16:26:08 +0100, David Cantrell wrote:
 On Tue, Jun 12, 2001 at 04:10:01PM +0100, Peter Haworth wrote:
  On Fri, 8 Jun 2001 19:14:41 +0100, Dave Cross wrote:
   Well, er..., there will be a meeting on the 21st. I spoke to Alex last 
   night and he said we could hold it at State 51.
  
  Sadly, I can't make it to the meeting after all, even though I'll be in
  London the next day.
 
 If this is because you don't have somewhere to stay on the Thursday night,
 I'm sure we can collectively find a way around that.  If you bring your
 passport, we'll even let you south of the river and my sofa is very
 comfortable and has a well-stocked booze cabinet next to it.

Well, it was partly due to having nowhere to stay, but I've requested the train ticket 
now, so it's too late to change my mind. Thanks for the offer, though.

  -- 
  Peter Haworth   [EMAIL PROTECTED]
  I just looked at the HTTP 1.1 spec (RFC 2616).  It's too fscking big.
   It's a Request For Comments, goddamnit,
   not a Request For An Epic Of Homeric Proportions!
  -- David Cantrell
 
 /me feels weird

Most of the regular posters on this list (and the others I frequent) are in my sig 
file somewhere. Look, here's another one:

-- 
Peter Haworth   [EMAIL PROTECTED]
'Are you *really* willing to deal with hundreds of newbies who don't
 understand why $a . $b isn't the same as $a .$b and isn't the same as
 $a. $b and isn't the same as $a.$b? And do you realise what the only
 good answer we can possibly give them is? Because Ed said so.'
-- Simon Cozens



Upcoming technical meeting

2001-06-08 Thread Peter Haworth

Can someone please remind me about the technical meeting on the 21st? Now that it 
looks like I might be in London at the time, I find I've deleted all the relevant 
messages and can't remember if there's an archive.

-- 
Peter Haworth   [EMAIL PROTECTED]
... You're in a maze of twisty little Java VMs, all different



Re: Religion

2001-06-06 Thread Peter Haworth

On Sat, 2 Jun 2001 19:54:04 +0100, Robin Szemeti wrote:
 however Sir Arnold Bax [1] got slightly closer to the truth:
 
 One should try everything once, except incest and folk dancing
 
 nuff said.
 
 [1] oft, incorrectly, attributed to George Bernard Shaw (who said it also,
 but later)

Bah, I had it in my sig file (now amended) as Sir Thomas Beecham. However, see the 
bottom of http://www.paston.co.uk/ukppg/kempsmen.html for a bit of investigation.

Incidentally, why won't AltaVista find any pages containing arnold bax? (or 
arnold, or bax, for that matter)

-- 
Peter Haworth   [EMAIL PROTECTED]
Even VB programmers ridicule VB programmers.
-- Simon Wistow



Re: Email::Valid

2001-06-01 Thread Peter Haworth

On Wed, 30 May 2001 17:14:15 +0100, Matthew Robinson wrote:
 RFC822 will allow all of the following (taken from CGI Programming with
 Perl) and was designed to accept all the addresses in use in 1982:
 
 Alfred Neuman Neuman@BBN-TENEXA
 :sysmail@ Some-Group. Some-Org
 Muhammed.(I am the greatest) Ali @(the)vegas.WBA

Attached is the address parser from my mail client (which I might eventually release). 
It returns an arrayref of hashrefs, containing:
  addr = The actual address (minus comments)
  comment = All the comments
  text = The whole text of the address
  name = The name

If I parse q(Alfred Neuman Neuman@BBN-TENEXA, :sysmail@ Some-Group. Some-Org, 
Muhammed.(I am the greatest) Ali @(the)vegas.WBA) with it, I get this back:

$VAR1 = [
  {
'text' = 'Alfred Neuman Neuman@BBN-TENEXA',
'comment' = undef,
'addr' = 'Neuman@BBN-TENEXA',
'name' = 'Alfred Neuman'
  },
  {
'text' = ' :sysmail@ Some-Group. Some-Org ',
'comment' = undef,
'addr' = ':[EMAIL PROTECTED]',
'name' = 'Alfred Neuman'
  },
  {
'text' = 'Muhammed.(I am the greatest) Ali @(the)vegas.WBA',
'comment' = ' (I am the greatest) (the)',
'addr' = '[EMAIL PROTECTED]',
'name' = 'Alfred Neuman'
  }
];

Oooh, look! It's broken! Oh well, back to the drawing board.

-- 
Peter Haworth   [EMAIL PROTECTED]
``Shall we have perl yell if the string Matt Wright
  is found in a comment when running under -w too?''
-- Dan Sugalski

# $Revision: 1.8 $

%token tComma tColon tSemi
%token tAngLeft tAngRight
%token tAt tDot
%token tAtom tQuotedString tQuotedPair

%%

addresses:
  address
{ [ $_[1] ] }
| addresses tComma address
{ [ @{$_[1]},$_[3] ] }
;

address:
  address_
{ 
  $_[0]-ParseComments;
  my $data=$_[0]-YYData;

  my $addr={
addr = $_[1],
comment = $data-{COMMENT},
text = $data-{TEXT},
name = $data-{NAME},
  };
  delete $data-{COMMENT};
  delete $data-{TEXT};
  $addr-{name}=~s/^\s+//s;
  $addr;
}
;

address_:
  group
| mailbox
;

group:
  phrase tColon mailboxes tSemi
;

mailboxes:
  mailbox
| mailboxes tComma mailbox
;

mailbox:
  addr_spec
| opt_phrase route_addr
{ $_[0]-YYData-{NAME}.= $_[1]; $_[2] }
;

addr_spec:
  local_part tAt domain
{ $_[1]$_[2]$_[3] }
;

opt_phrase:
| phrase
;

phrase:
  word
| phrase word
{ $_[1] $_[2] }
;

route_addr:
  tAngLeft opt_route addr_spec tAngRight
{ $_[3] } # XXX Ignore route for now
;

opt_route:
  routes tColon
|
;

routes:
  routes tAt domain
| tAt domain
;

local_part:
  local_part tDot word
{ $_[1]$_[2]$_[3] }
| word
;

domain:
  domain tDot sub_domain
{ $_[1]$_[2]$_[3] }
| sub_domain
;

sub_domain:
  domain_ref
/* | domain_literal */
;

domain_ref:
  tAtom
;

word:
  tAtom
| tQuotedString
;


%%

my %tokens=reverse(
  tComma = ',',
  tColon = ':',
  tSemi = ';',
  tAngLeft = '',
  tAngRight = '',
  tParLeft = '(',
  tParRight = ')',
  tBraLeft = '[',
  tBraRight = ']',
  tAt = '@',
  tDot = '.',
);
my $tokens=join '',keys %tokens;

# Remove whitespace and comments
# This is done outside the lexer, since we call it before the first token
sub ParseComments{
  my($parser)=@_;
  my $data=$parser-YYData;

  for($data-{INPUT}){
while(s/^(\s+)// || /^\(/){
  $data-{TEXT}.=$1;
  if(s/^\(//){
my $level=1;
my $ctext='(';
while($level){
  s/^([^()\\]+)//
and $ctext.=$1;
  s/^((?:\\.)+)//
and $ctext.=$1;
  s/^\(//
and $ctext.='(' and ++$level;
  if(s/^\)//){
$ctext.=')';
last unless --$level;
  }
}
$data-{COMMENT}.= $ctext;
$data-{TEXT}.=$ctext;
  }
}
  }
}

# Debugging version
sub __Lexer{
  my($parser)=@_;
  my @ret=_Lexer;

  local $=',';
  warn Lex returned: (@ret)\n;
  @ret;
}

sub _Lexer{
  my($parser)=@_;
  my $data=$parser-YYData;

  # Remove whitespace and comments
  $parser-ParseComments;

  # Determine next token
  for($data-{INPUT}){
return ('',undef) if $_ eq '';

if(s/^([\Q$tokens\E])//o){
  $data-{TEXT}.=$1 unless $1 eq ',';
  return ($tokens{$1},$1);
}
if(s/^//){
  my $str;
  while(1){
if(s/^//){
  $data-{TEXT}.=qq($str);
  return (tQuotedString = $str);
}elsif(s/^\\(.)//s){
  $str.=$1;
}elsif(s/^([^\\]+)//){
  $str.=$1;
}else{
  $data-{TEXT}.=qq($str);
  return (tQuotedString = $str);
}
  }
}
if(s/^\\(.)//s){
  $data-{TEXT}.=\\$1;
  return (tQuotedPair = $1);
}
if(s/^([^\s\000-\037()\@,;\\.\[\]]+)//){
  $data-{TEXT}.=$1;
  return (tAtom = $1);
}
  }
  if(s/^(.)//s){
$data-{TEXT}.=$1;
return (tUnknown = $1);
  }
}

sub _Error{
  my($self)=@_;

  # XXX

Re: (Chief) Wizard for hire...

2001-05-30 Thread Peter Haworth

On Tue, 29 May 2001 21:55:18 +0100, Paul Sharpe wrote:
 Jonathan Stowe wrote:
  On Tue, 29 May 2001, Paul Sharpe wrote:
   Doesn't PostgreSQL carry on the Illustra tradition?
  
  It went to Informix most recently and then of course to IBM.
 
 But didn't it come *from* Postgres?

Yes, Illustra and PostgreSQL both have their roots in the Postgres DBMS. Illustra 
[...] picked up the code and commercialized it in 1992 (from 
http://www.postgresql.org/idocs/index.php?history.html)

-- 
Peter Haworth   [EMAIL PROTECTED]
During my service in the United States Congress,
 I took the initiative in creating the Internet.
-- Al Gore



Re: (Chief) Wizard for hire...

2001-05-29 Thread Peter Haworth

On Tue, 29 May 2001 15:43:49 +0100, James Powell wrote:
 Also, I see you've worked with the devil known as Illustra!
 
 Me too, condolences!

Me too. I even wrote DBD::Illustra for it, although by the time I got permission to 
release it, no one else in the World appeared to want it.

-- 
Peter Haworth   [EMAIL PROTECTED]
Remember: Perl abhors a naked circularity
-- Tom Christiansen



Re: TPC Quiz Team

2001-05-17 Thread Peter Haworth

On Thu, 17 May 2001 09:17:04 +0100, Cross David - dcross wrote:
 I need three volunteers to join me in the london.pm team for Jon Orwant's
 Internet Quiz at The Perl Conference.

Count me in!


 This is our big chance to get revenge for the injustices of last year.

I'm finding it more annoying now because I've managed to convince myself that the same 
question was asked the previous year.


 [1] Note to self: find out if Dubya has any pets.

... whose name he's used in an Internet context.
Come to think of it, if Buddy was the password, how come we all know what it is 
(now, at least). Aren't passwords supposed to be secret?

-- 
Peter Haworth   [EMAIL PROTECTED]
The boy stood on the burning deck
 Whence all but he had fled -
 Twit. -- Spike Milligan



Re: see attachment

2001-05-14 Thread Peter Haworth

On Sat, 12 May 2001 16:38:08 +0100, Simon Cozens wrote:
 diff: usage diff [whatever] etc.
 - plan9 has a bad day

I keep meaning to ask, where do all these plan9 bad day quotes come from?


-- 
Peter Haworth   [EMAIL PROTECTED]
[Unicycling] in the mud is good for you. It builds character. Riding
 over slippery wet roots is also something everyone should experience.
-- John Childs



Re: putting escape characters in files

2001-05-11 Thread Peter Haworth

On Thu, 10 May 2001 22:25:00 +0100, Nicholas Clark wrote:
 (Someone has a quote about the only safe thing to send down a serial line
 being a break, because emacs interprets every character)

You mean this?
On a normal ascii line, the only safe condition to detect is a 'BREAK'
 - everything else having been assigned functions by Gnu EMACS.
-- Tarl Neustaedter

I find that having an enormous sig file is extremely useful on occasions like this.

-- 
Peter Haworth   [EMAIL PROTECTED]
The network had broken because someone had snipped out
 40 cm of cable, apparently to tie something together.
-- Alex McLean