GNU Enterprise Log : /var/www/irc-logs/gnue-public.log.19Nov2001


 [00:04] Last message repeated 1 time(s).
 chillywilly (danielb@d34.as13.nwbl0.wi.voyager.net) left irc:
 ra3vat (~ds@195.239.64.55) joined #gnuenterprise.
<Mr_You> anyone around?
<ajmitch> yeah
<Mr_You> umm.. dumb question, how do I get python compiled with curses?
 ra3vat (ds@195.239.64.55) left irc: Ping timeout: 181 seconds
<ajmitch> umm, i've never compiled python :)
<Mr_You> doh!
<Mr_You> ok
 psu (psu@manorcon.demon.co.uk) joined #gnuenterprise.
<Mr_You> hi psu
<psu> hi Mr_You
<psu> are you up early or late?
<ajmitch> hi
 reinhard (~rm@N801P007.adsl.highway.telekom.at) joined #gnuenterprise.
<psu> reinhard is definitely up early
<ajmitch> hi reinhard
<Mr_You> hey does our stuff work with 2.2b2?
<psu> I assume most people keep an eye on slashdot anyway
<psu> but http://slashdot.org/askslashdot/01/11/15/1943223.shtml
<psu> mentions d/b & XML together
<psu> not really relevant for us,
<psu> as we are using XML as a display format for a relational d/b
<psu> rather than using XML as a d/b per se
<psu> (unless I've got the wrong end of the stick again)
<psu> ...
<psu> bbl
 psu (psu@manorcon.demon.co.uk) left #gnuenterprise.
<Mr_You> are we using an actively developed curses library?
<Mr_You> sigh
<Mr_You> will find out tommorow..
 Action: Mr_You & bed
<reinhard> hello all
<reinhard> woah getting up and already a fire waiting on the answering machine :((
<reinhard> fixed it so now i can get back to the bedroom and get dressed :)
 alexey_ (alex@techkran.vladimir.ru) joined #gnuenterprise.
 alexey_ (alex@techkran.vladimir.ru) left irc: Client Quit
 ra3vat (~ds@195.239.66.43) joined #gnuenterprise.
 Nick change: mcb30-away -> mcb30
 ra3vat (ds@195.239.66.43) left irc: Ping timeout: 181 seconds
 reinhard (rm@N801P007.adsl.highway.telekom.at) left irc: Ping timeout: 181 seconds
 reinhard (~rm@N801P007.adsl.highway.telekom.at) joined #gnuenterprise.
 alexey (alex@techkran.vladimir.ru) left irc: "[x]chat"
 alexey (alex@techkran.vladimir.ru) joined #gnuenterprise.
 Mussi (~elias@150.164.75.232) joined #gnuenterprise.
 Mussi (~elias@150.164.75.232) left #gnuenterprise ("Cliente IRC saindo").
 take (~take@catv-213-100-0-102.swipnet.se) joined #gnuenterprise.
<take> Can i make a comment on the GNUe-homepage?
<take> I really miss somewhere high upp on the first page a "what is this" button which goes to a text with some screenshots being able for a PHB to read and sortof understand.
<take> I think a lot of parts of the faq can be used for this rewritten to make the what-is-this-text buzzword compliant and some examples of succesful use.
<take> If there is some interest in this I'm willing to give this a shot.
 sevik (seva@domino-web.kiev.ua) left irc: Ping timeout: 181 seconds
<take> back to hacking mode, Ill be back some day...
 take (~take@catv-213-100-0-102.swipnet.se) left #gnuenterprise.
 alexey (alex@techkran.vladimir.ru) left irc: "[x]chat"
<mcb30> reinhard: you here?
<reinhard> barely
<reinhard> but yes :=
<reinhard> :)
<mcb30> is it reasonable to assume that all methods for a particular class that are of a particular type (e.g. glibmodule) will be implemented within the same file?
<reinhard> no
<reinhard> not at all imho
<mcb30> ah
<mcb30> are there any reasonable assumptions like that?
<reinhard> because of the thing that derek usually calls "templating"
<reinhard> say we have a class "item"
<reinhard> some of the methods of the class "item" will be defined in the sales module
<reinhard> some in supply chain
<reinhard> and some in the special local car dealer's module
<mcb30> ok. I'm thinking about dynamic loading and how to determine which methods need to be reloaded when I notice a file has been modified
<mcb30> it would be easy to just scan all methods
<mcb30> but possibly time-consuming
<mcb30> I could maintain a cache of which file provides which method
<mcb30> but this has the potential to get long and complex
<reinhard> can't you query what methods are contained in a file?
<mcb30> what happens if you remove a method from a file :-)
<mcb30> then you can't query the updated file?
<reinhard> i.e. for example for a .so file what external symbols are defined
<reinhard> oh
<reinhard> true
<mcb30> I think it might have to be the cache
 ra3vat (~ds@195.239.66.35) joined #gnuenterprise.
<mcb30> The provider list would have one entry for each method,
<mcb30> entry contains information like which implementor to delegate it to (glibmodule, python) and some kind of "source" marker which would describe the file it came from
<mcb30> then when a file is modified, I have to scan through the list and update entries for all the methods that have that file as a provider,
<mcb30> but I also maintain a separate data structure for each "source" file which lists all the entries in the provider list that refer to it?
<mcb30> so I can quickly find all the entries that need updating.
<mcb30> How does this sound?
<mcb30> (apart from long-winded :-)
<reinhard> just a sec 10 phone calls
<mcb30> ok
<reinhard> at the same time :(
<reinhard> ok back
<reinhard> sounds good
<mcb30> unfortunately it would be much easier in an OO language :-(
<mcb30> damn C!
<mcb30> never mind
<reinhard> for those lists you might want to look at glib's GList implementation
<reinhard> we already use it throughout the code actually
<mcb30> I was thinking about using a GHash instead, to make the dispatcher faster
<reinhard> uh oh
<mcb30> what?
<reinhard> ok possible :)
<mcb30> are there known probs with GHash?
<reinhard> yes
<mcb30> oh dear
<mcb30> such as?
<reinhard> there is no easy way to iterate through all elements
<reinhard> i.e. there is no g_hash_first () and g_hash_next ()
<reinhard> like there is for lists
<reinhard> you have to use g_hash_foreach
<mcb30> http://developer.gnome.org/doc/API/2.0/glib/glib-hash-tables.html#G-HASH-TABLE-FOREACH
<reinhard> we want to use glib 1.2
<reinhard> if possible
<mcb30> didn't see the version number - just foudn it via google
<reinhard> ah yes and it is the foreach
<mcb30> will check that it is available in 1.2
<reinhard> you have to write a function
<reinhard> foreach is available in 1.2
<mcb30> I'm used to using foreach anyway - I'm a Perl guy!
<reinhard> ah
<reinhard> with first and next you can have constructs like
<reinhard> l = g_list_foreach (list)
<reinhard> while (l)
<reinhard> {
<reinhard> dosoemthing_with(l)
<reinhard> l = g_list_next (l)
<reinhard> }
<reinhard> of course first line is
<reinhard> l = g_list_first (list)
<reinhard> not foreach :)
<mcb30> :-)
<mcb30> I'll see how it looks as though it would work out with a GHash
<mcb30> the motivation is speed: doing on average (n/2) string comparisons in order to dispatch one of n methods is not very scalable
<mcb30> and it should make the code simpler where I am only looking for a single entry
<mcb30> phone call
<reinhard> i am not _that_ afraid about performance in this point
<reinhard> i guess no class will have more than 400 methods in average
<reinhard> and the time needed to scan the list of 200 strings in memory
<reinhard> will not be too much compared to just the time needed to reload a single code file from the disk
<reinhard> i found that things running in local memory are never performance critical
<reinhard> most critical are things running over network
<reinhard> second most are things having to read from disk
<mcb30> no, but method dispatch potentially happens a lot more frequently than reloading the file...
<mcb30> (still on phone)
<mcb30> back now
 Mussi (~elias@gramos.copeve.reitoria.ufmg.br) joined #gnuenterprise.
 Mussi (~elias@gramos.copeve.reitoria.ufmg.br) left #gnuenterprise ("Cliente IRC saindo").
<reinhard> mcb30: true
<reinhard> mcb30: i leave it up to you :)
 jcater (~jason@w202.z065105010.mem-tn.dsl.cnc.net) joined #gnuenterprise.
 jamest (~jamest@hobbes.math.ksu.edu) joined #gnuenterprise.
<jcater> howdy
<jamest> hi
<jamest> you're at work early today
<jcater> yip
<jcater> sigh
 ra3vat (ds@195.239.66.35) left irc: Ping timeout: 181 seconds
 ToyMan (~stuq@c5300-2-ip42.albany.thebiz.net) joined #gnuenterprise.
 Maniac-yawa (darryl@h24-82-132-209.wp.shawcable.net) left irc:
 ra3vat (~ds@195.239.66.35) joined #gnuenterprise.
 ToyMan (stuq@c5300-2-ip42.albany.thebiz.net) left irc: Remote closed the connection
 ToyMan (~stuq@c5300-2-ip42.albany.thebiz.net) joined #gnuenterprise.
 mdean (~mdean@mkc-65-28-73-63.kc.rr.com) joined #gnuenterprise.
 jbailey (~jbailey@Toronto-HSE-ppp3639287.sympatico.ca) joined #gnuenterprise.
<derek> bbl
 ToyMan (~stuq@c5300-2-ip42.albany.thebiz.net) left #gnuenterprise ("Client Exiting").
 dneighbo (dneighbo@mail.libertydistribution.com) joined #gnuenterprise.
 alexey (~alexey@195.151.214.34) joined #gnuenterprise.
 Maniac-yawa (darryl@h24-82-132-209.wp.shawcable.net) joined #gnuenterprise.
 ToyMan (~stuq@c5300-2-ip42.albany.thebiz.net) joined #gnuenterprise.


Converted by log2html
(c) 2001 Derek Neighbors
Licensed under the GNU GPL