[drakma-devel] Bug handling bad html?

Edi Weitz edi at agharta.de
Sun Feb 25 20:38:15 UTC 2007


On Sun, 25 Feb 2007 08:26:45 -0800, Jeffrey Cunningham <jeffrey at cunningham.net> wrote:

> If I try to access a page like that using: links, lynx, wget,
> mozilla, firefox, or any html parsing entity I can think of they
> don't stop functioning, signal an error, or whatever you want to
> call it. They give me their best approximation of the content. Seems
> like that ought be the goal here, or at least a possibility.
>
> In an automated process, signaling an error means that processing
> has stopped (or 'died'). The source of the error signal may be in
> flexi-streams (I have read the discussions in the that list), but
> its drakma that has to deal with its consequences.

You are missing two crucial points:

1. The applications you listed are just that - monolithic
   applications.  You either use them for what they are intended or
   you leave them alone.  They'd better be as permissible as possible.

   Drakma, OTOH, is a library - a tool or building block used by
   programmers to build applications.  It should do what it advertises
   to do correctly - not more and not less.  And if that's not what
   the programmer expected, he can tweak it as much as he wants.
   (That doesn't imply that he modifies the library itself, but as
   Drakma is open source he can do even that, if deemed necessary.)

2. In Common Lisp, signalling an error doesn't mean that processing
   has stopped.  If that is news to you, you might want to read, for
   example, the chapter about conditions and restarts in Peter
   Seibel's book.

> How do the above mentioned applications manage this problem?
> Certainly not by magic.

In this specific case, they're usually doing it the same way you can
do it with Drakma and FLEXI-STREAMS - they insert some kind of
replacement character.  I don't see where the problem is.

Cheers,
Edi.



More information about the Drakma-devel mailing list