guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Benchmarks of guile-www against HB's Guile module.


From: Alejandro Forero Cuervo
Subject: Re: Benchmarks of guile-www against HB's Guile module.
Date: Tue, 12 Feb 2002 08:34:22 -0500
User-agent: Mutt/1.2.5i

Hey. :)

         (hb-register hbfile "main"
    
    style nit: decorate free var names.

What do you mean?  "Use hb-file instead of hbfile"?

By the way, I'd rather have 

    (hb-register "main" proc)

than

    (hb-register hbfile "main" proc)

(since I can't think  of any other value instead of  hbfile as the first
argument in  the first call)  but I can't figure  out how to  register a
procedure in a way  such that Guile will always pass  it a given pointer
value besides the arguments.  Something kinda like

    void callback ( void *data, SCM name, SCM proc );

    gh_new_procedure_data2_0("hb-register", &callback, user_data);

rather than

    void callback ( SCM data, SCM name, SCM proc );

    /* assignments to hb_guile_hbfile_smob with the pointer */
    gh_define("hbfile", hb_guile_hbfile_smob);
    gh_new_procedure3_0("hb-register", &callback); ,

which is what I currently do in HB.

Any suggestions?  :)

    well, to complete the square you need to also benchmark guile-www w/
    daemon...

Oh, yes! :)

And  perhaps other  setups such  as  PHP, Perl+CGI,  ModPerl, HB's  Perl
module, Zope and so on.

Does guile-www  come with code  for handling HTTP requests  directly?  I
didn't see references  to it in its guile-www.info file  so I assumed it
doesn't  (granted, I  didn't  look for  long).  If  not,  how do  people
usually interface the browsers with guile-www other than through CGI?

    then, to add dimension, you could tune up guile-comp and see what it
    can do w/ guile-www. (hb will still be the fastest, i'm sure. :-)

This could be interesting too.

    i started to look at src/broom.h but got a bad feeling when i sensed
    a custom  linked list. on the  other hand, i like  the name "broom",
    makes me think of my sweetheart for some reason. ;-)

HBBroom in  src/broom.h is just a  construction to clean up  things when
they are no  longer needed (in the Guile-related code,  for instance, it
is  used  so when  the  Guile-files  are destroyed,  the  hb-register'ed
objects are  scm_gc_unprotect_object'ed... that  way the  generic files'
destructor doesn't have to know  anything about each specific type, just
execute  the files'  clean  up  functions).  It  happens  to  be a  FIFO
implemented as a single  linked list with a pointer to  the head and one
to the tail.

So no.  Sorry.  The name  Broom has nothing to do with them.  Heh.  :)

Thanks for your reply.

Alejo.
http://bachue.com/alejo

--
The mere formulation of a problem is far more essential than its solution.
      -- Albert Einstein.

$0='!/sfldbi!yjoV0msfQ!sfiupob!utvK'x44;print map{("\e[7m \e[0m",chr ord
(chop$0)-1)[$_].("\n")[++$i%77]}split//,unpack'B*',pack'H*',($F='F'x19).
"F0F3E0607879CC1E0F0F339F3FF399C666733333CCF87F99E6133999999E67CFFCCF3".
"219CC1CCC033E7E660198CCE4E66798303873CCE60F3387$F"#Don't you love Perl?

Attachment: pgpCYgTcgVj2X.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]