Re: sub BEGIN {}

2001-04-06 Thread pmh

On Wed, 4 Apr 2001 09:08:09 +0100 (BST), Matthew Byng-Maddick wrote:
 On Tue, 3 Apr 2001, Paul Makepeace wrote:
  Paul, whose uni got nicked in fscking cambridge. "Ooh, it's got a wheel!
  Not the usual two, but fuck it, let's steal it anyway!"
 
 Ah, but people so often have quick release front wheels... erm.

I've yet to see a unicycle with a quick release wheel, though. However, mine
does have a quick release saddle. That's to say, last time I mounted it, the
saddle snapped in two. That was over six months ago, and I still haven't got
round to fitting the new saddle I immediately bought.

-- 
Peter Haworth   [EMAIL PROTECTED]
- Real programmers like vending machine popcorn.  Coders pop it in
  the microwave oven.  Real programmers use the heat from the CPU.
  They can tell which jobs are running from the rate of popping.



RE: Grammar (was: Re: Linux.com Online Chat)

2001-04-06 Thread pmh

On Wed, 4 Apr 2001 12:16:18 +0100, Matthew Jones wrote:
  I was at school from up to 1995 and grammer, hand writing and 
  similar were only lightly touched upon. IT was another subject that we 
  never actually did (other than read about spreadsheets leading to my
  adult hatred of Excel) and as far as I'm aware none of my friends of
  the same age did any real grammer in school so you can expect a fair
  size chunk of  20-22 year olds to have no real grasp of what constitutes
  good grammar.
 
 Right, well there's the difference then. I'm 29 this year and I was schooled
 during the seventies. Was anyone else of a similar age *not* taught proper
 punctuation and grammar at school?

I'm 30, and I don't *remember* being taught grammar at all. It confused the hell out 
of me when we were all expected to know what prepositions, adverbs and the perfect 
present were when I started learning French. Although I vaguely remember apostrophes, 
I'm pretty sure I was never taught the proper uses of (semi)colons and dashes.

 Anyway, back to the point. Many of my peers and friends who were taught
 exactly the same punctuation stuff as me just ignored it and used things
 like "could'nt" and "samwich's" and so on. I reckon it's less to do with it
 being taight in schools and more to do with how much someone reads. If you
 read a lot, you see the correct forms a lot and it sinks in. Similarly with
 grammar, I reckon, although I have absolutely zero evidence to back that up.

Maybe I don't remember the grammar lessons because they were boring, or maybe they 
were taught after I left at the place I move away from, and before I arrived at the 
place I moved to.

-- 
Peter Haworth   [EMAIL PROTECTED]
"I used to recognise C64 kernel and interpreter entry
 points in car registration numbers as a game."
-- Paul Makepeace



Re: Social Meeting (fwd)

2001-04-03 Thread pmh

On Mon, 2 Apr 2001 20:59:01 +0100, Leon Brocard wrote:
 ... (A)bort (R)etry (P)ull leg (H)ot boot (S)wipe tagline!

That's a clever way to stop people swiping them. Worked on me (damn!)

-- 
Peter Haworth   [EMAIL PROTECTED]
"Sudden death may occur without warning. Call a physician immediately."
-- Warning found on a can of Freon



Re: Still screwing up References: (was Re: Job: I'm looking for one..)

2001-03-29 Thread pmh

On Thu, 29 Mar 2001 11:17:17 +0100 (BST), Mark Fowler wrote:
 On Thu, 29 Mar 2001, Dave Cross wrote:
 
  You're right, the referencing is a bit screwed up. I'll take a look at
  it today.

Actually, that message was OK.


 Your webmail CC is screwed up too.  On my mails there's now new line after
 the Cc: so I get a line that says 
 
 Cc: X-Mailer: foo 
 
 which my mail client (PINE) wants to reply to...

That's a bug in PINE, then. There is actually a newline after Cc:, but like some other 
parsers (including an early version of mine), PINE can't cope with an empty field.

MIME::Parser does something strange, too: with empty fields, -get_all returns either 
('') or (undef) (I can't remember which), but with non-empty fields, -get_all returns 
the contents with newlines intact, confusing things immensely for formatting code.

-- 
Peter Haworth   [EMAIL PROTECTED]
"My own writing [...] is of such high quality that it's almost a new media in
 itself. There is writing, and there is My Writing. UltraWriting. Writing++.
 Object-orientated writing with full pre-emptive multi-tasking running at
 1000 rpm with a 20ms seek time, at a reasonable price (credit available)."
-- Ashley Pomeroy



Re: Perl Auto-RPC

2001-03-29 Thread pmh

On Thu, 29 Mar 2001 00:37:38 -0800, Nathan Torkington wrote:
 Greg McCarroll wrote:
  sure it makes sense, but it still is CiP and trust me this isn't
  the only bit of CiP in here and much kudos to Paul for it ;-)
 
 I'm unsure what CiP is, but if it has anything to do with gnarliness,
 I know that Paul wrote a 1k regexp to parse XML correctly.  It only
 fails one test from a real XML parsing package, and he tracked that
 to the limitations of the new RE stuff in 5.6.0.

Here's what I use, which probably isn't what most people would think of when they hear 
"XML parser", but it does let me extract the bits I generally want. I wouldn't give 
this a CiP rating, but then I know how it works.

# xml_parse($xml,$tag)
# Return the contents of any $tags appearing in $xml
# Returns an arrayref of hashrefs of attributes, content in {__content__}
# If $tag eq '*', returns all tags, element names in {__element__}
# This is pretty simple, and assumes the following:
#attributes match \w+
#all attributes have double-quoted values
#there are no CDATA[[]] sections
#end tags don't have attributes
#$xml is otherwise well-formed
sub xml_parse{
  my($xml,$_tag)=@_;
  my $tag=$_tag eq '*' ? '[\w:-]+' : "\Q$_tag\E";

  # Remove comments
  $xml=~s/!--.*?--//gs;

  # Extract tags
  my @tags;
  pos $xml=0; # Reset /g position
  while($xml=~m#\G.*?($tag)\b#gs){
my $tag=$1;
my %tag;
$tag{__element__}=$tag if $_tag eq '*';

while($xml=~m#\G\s+(\w+)="([^"]*)"#gc){
  $tag{$1}=$2;
}
if($xml=~m#\G\s*/#gc){
  # There's no content
}else{
  # Get the content
  $xml=~m#\G\s*#gc or next; # Next means not well formed
  my $level=1;
  while(1){
if($xml=~m#\G((?:(?!/?\s*\Q$tag\E\b).)+)#gcs){
  # More content
  $tag{__content__}.=$1;
}elsif($xml=~m#\G(/\s*\Q$tag\E\s*)#gc){
  # End tag
  if(--$level){
$tag{__content__}.=$1;
  }else{
last;
  }
}elsif($xml=~m#\G(\s*\Q$tag\E\b([^]*))#gc){
  # Start tag
  $tag{__content__}.=$1;
  ++$level unless (my $tmp=$2)=~m#/\s*$#;
}else{
  # We must have reached the end of the string, so it's not well formed
  last;
}
  }
}
push @tags,\%tag;
  }

  \@tags;
}


-- 
Peter Haworth   [EMAIL PROTECTED]
 "I think there's a problem with the server power supply"
 "Why?"
 "There were flames coming out of the cooling fan until it stopped."



Re: ISO8601 [was] Re: Pointless, Badly-Written Module.

2001-03-26 Thread pmh

On Fri, 23 Mar 2001 19:07:16 +, Dave Cross wrote:
 At 17:48 23/03/2001, you wrote:
 On Fri, 23 Mar 2001, you wrote:
 
   Well, I can make a guess at what the first number represents. Those 
  expansion plans really are short-term.
 
 Peter Haworth   [EMAIL PROTECTED]
   "Put down those Windows disks Dave  Dave?  DAVE!!"
 -- HAL 9000
 
 and for a bonus half point (cos its easy) .. why was HAL called HAL?
 
 Well, Arthur C Clarke claims it's a pure coincidence, but if you take the 
 letters after each of H, A and L - you get IBM.

I vaguely recall it standing for something like "Heuristic Algorithmic Logic," but 
that doesn't really set it apart from anything.

-- 
Peter Haworth   [EMAIL PROTECTED]
Mary had a little key - she kept it in escrow.
And every thing that mary said, the feds were sure to know.
-- Sam Simpson



Re: ISO8601 [was] Re: Pointless, Badly-Written Module.

2001-03-23 Thread pmh

On Wed, 21 Mar 2001 15:46:07 +, Marty Pauley wrote:
 The
 interplanitary URL is sufficient for our short-term expansion plans.
 Unfortunatly the actual specification of the scheme is a millitary
 secret, but I can target your house with the following:
   ipbm://3/401392692/759227092/5

Well, I can make a guess at what the first number represents. Those expansion plans 
really are short-term.

-- 
Peter Haworth   [EMAIL PROTECTED]
"Put down those Windows disks Dave  Dave?  DAVE!!"
-- HAL 9000



XML One London

2001-03-15 Thread pmh

Is anyone going to XML One London next week? I'll be there until Wednesday,
but the Thursday didn't look any use to me.

-- 
Peter Haworth   [EMAIL PROTECTED]
"Ok, print the message, then put it in your shoe and put your shoe in front
 of the fireplace... then wait till Santa come and give the code to you ;-)
 Hey! this is not mod_santa list !"
-- Fabrice Scemama on the mod_perl list



RE: Descrambling CSS w/ 7 Lines Of Perl

2001-03-08 Thread pmh

On Wed, 7 Mar 2001 17:02:39 -0800, Simon Batistoni wrote:
 Anyway, the guy who originally posted the perl code to the web is archiving
 as many copies of DeCSS as he can get his hands on, going as far as the rock
 song which uses the code as the lyrics:
 
 http://www.cs.cmu.edu/~dst/DeCSS/Gallery/

This includes the new way to get the source via the DNS, which still works, and 
doesn't use zone transfers:

for DVDs in Linux screw the MPAA and ; do dig $DVDs.z.zoy.org ; done | \
perl -ne 's/\.//g; print pack("H224",$1) if(/^x([^z]*)/)' | gunzip

-- 
Peter Haworth   [EMAIL PROTECTED]
Signature lost in transit.  We apologise for any inconvenience caused.



Re: Graphical Documentation

2001-03-06 Thread pmh

On Tue, 6 Mar 2001 10:40:35 + (GMT), Mark Fowler wrote:
 Oh, there seems to be something odd with that server set up.  Because
 my copy of Gnome-Terminal does url catching I can Ctrl-Click on any url
 and it pops up in netscape.  However, being a good url catcher it matches
 the '.' at the end of the url (as it should do.)  Now this is really odd,
 as 'http://www.codewerk.com./' does not show the same thing as 
 'http://www.codewerk.com/' (which it should do as
 'www.codewerk.com.profero.com' or 'www.codewerk.com.loc0.profero.com'
 doesn't exist on our network.) This is most odd.  I've tried it from other
 locations (via the wonders of ssh tunnelling) and I get the same thing.

I'd blame their virtual host recognition, although the web server here handles it 
properly, and we're running an even earlier version of Apache.


-- 
Peter Haworth   [EMAIL PROTECTED]
"Let the sickos get their kicks on USENET, not in the mass media."
-- Adam Rice



Re: DMP Availability

2001-02-26 Thread pmh

On Sat, 24 Feb 2001 12:51:08 +0100, Philip Newton wrote:
 I see your whois graffiti and raise you the domain where you can do a zone
 transfer, chop off the first bit, sort, MIME-decode and get a program. (Or
 something like that.)
 
 Unfortunately, I don't remember the domain. I think it was in France
 somewhere.

You mean this? Unfortunately, it doesn't work anymore, but when it did, you ended up 
with DeCSS code:

dig @138.195.138.195 goret.org. axfr | grep '^c..\..*A' | sort \
  | cut -b5-36 | perl -e 'while(){print pack("H32",$_)}' | gzip -d

-- 
Peter Haworth   [EMAIL PROTECTED]
"Perl should only be studied as a second language.
 A good first language would be English."
-- Larry Wall



Re: DMP Availability

2001-02-23 Thread pmh

On Thu, 22 Feb 2001 09:54:50 -0500 (EST), Dave Cross wrote:
 Unfortunately, as it's a very primitive webmail (written by me) it
 doesn't store the outgoing mails, so I can't see what I'm doing 
 wrong.

Why call it "ms-webmail"? Makes it sound like MicroSoft wrote it.

Also, you're just copying the References: header from the message you're
replying to, when you should be appending its Message-id: too. If you're not
going to do that, then at least stick an In-reply-to: header in, so threading
algorithms work properly. (Well, threading algorithms which aren't broken,
like mine, which manages to put the same message in the thread tree multiple
times under conditions known only to itself)

-- 
Peter Haworth   [EMAIL PROTECTED]
"I washed a sock.  Then I put it in the dryer.
 When I took it out, it was gone."
-- Steven Wright



Re: DMP Availability

2001-02-23 Thread pmh

On Fri, 23 Feb 2001 11:53:24 +, Dominic Mitchell wrote:
 JWZ has a good discussion on threading algorithms:
 
 http://www.jwz.org/doc/threading.html

Thanks very much. From a quick skim, that looks somewhat similar to the scheme I've 
come up with through trial and error. However, I currently allow empty containers at 
any point in the tree which isn't a leaf, and which doesn't only have one empty 
container child. I'll look through it in detail when I haven't just been getting 
annoyed with my own algorithm so much.

Actually, the biggest problem I have with threading is Gtk's behaviour. When you 
double click on a CTree branch, it toggles the expansion state, which is highly 
annoying. I can untoggle it in most cases, but that can result in strange scrolling, 
leading to weird selections being left behind. Also, if it's an empty container being 
double clicked, I want to display the first real message, but that prevents me from 
untoggling the branch, somehow.

I guess it would be a good idea to word-wrap message bodies, too...

-- 
Peter Haworth   [EMAIL PROTECTED]
Vagueness is one of those things...



Re: DMP Availability

2001-02-23 Thread pmh

On Fri, 23 Feb 2001 07:01:31 -0500 (EST), Dave Cross wrote:
 At Fri, 23 Feb 11:50:37 2001 +, [EMAIL PROTECTED] wrote:
  On Thu, 22 Feb 2001 09:54:50 -0500 (EST), Dave Cross wrote:
   Unfortunately, as it's a very primitive webmail (written by me) it
   doesn't store the outgoing mails, so I can't see what I'm doing 
   wrong.
  
  Why call it "ms-webmail"? Makes it sound like MicroSoft wrote it.
 
 That's semi-intentional. My company is called Magnum Solutions so we
 have as much right to use the initials as Microsoft. It amuses me that
 my Perl doodlings might be mistaken for Microsoft software.

I'd forgotten the name of your company. Makes sense now, and I appreciate the joke.

  If you're not going to do that, then at least stick an In-reply-to: 
  header in, so threading algorithms work properly. (Well, threading 
  algorithms which aren't broken, like mine, which manages to put the 
  same message in the thread tree multiple times under conditions known 
  only to itself)
 
 Or, I suppose, I could do both. OR would that break stuff?

Of course not, that's what you're supposed to do. I just stick In-reply-to: on the end 
of References: unless it was already there.

All I need is some decent (ie. existent) documentation, and I might be ready to 
release this thing.

-- 
Peter Haworth   [EMAIL PROTECTED]
I did Modula-2 at university but I didn't inhale



Re: London.pm List Weekly Summary 2001-02-12

2001-02-16 Thread pmh

On Wed, 14 Feb 2001 17:02:36 +, Leon Brocard wrote:
 And finally, dumrats used naughty words and got attacked by a daemon:
 http://www.mail-archive.com/london-pm%40lists.dircon.co.uk/msg02186.html

Finally, due to this and other contextual clues, I've figured out who some of
these IRC names apply to.

 This london-list weekly summary has been brought to you with IRC
 nicknames instead of, err, real names. This is just an experiment - we
 reckon it's a bit silly and more confusing. What do you reckon?

For someone who's never used IRC at all, it's particularly annoying. I'm no
Luddite though, I was using Cheeseplant's house over a decade ago, and wrote
my own chat system, but just never got round to IRC.

-- 
Peter Haworth   [EMAIL PROTECTED]
``Sarathy was concerned by the use of a "whole bit" for this task''
-- Simon Cozens



Re: the list

2001-02-01 Thread pmh

On Wed, 31 Jan 2001 12:21:47 +, Dominic Mitchell wrote:
 On Wed, Jan 31, 2001 at 12:04:54PM +, Greg McCarroll wrote:
  everyone is probably reading up on ruby in preparation for it
  taking over the world
 
 Well, there's a good article on it in the "25th anniversary" Dr Dobbs
 magazine.  But there's also a Perl/Tk article, so don't feel left out.

Bah! It's not a Perl/Tk article. It's a totally shit perl symbol table article which 
is unfocussed and chock full of hideous errors and misconceptions.

No, hang on, that's the perl article in the next issue, which keeps mentioning 
Tk::Browser like it's relevant. I don't remember what the article you refer to was 
like, but it didn't have me shouting at the magazine.

-- 
Peter Haworth   [EMAIL PROTECTED]
"Please keep in mind that you have come up against a KNOWN BUG in the
 C library, and Perl can't fix *everything* that is broken by other people."
-- Chip Salzenberg