On Wed, Dec 06, 2006 at 05:28:41PM +0100, NoWhereMan wrote:
> 
> ----- Original Message ----- 
> From: "Youness Alaoui" <[EMAIL PROTECTED]>
> 
> > Hi NWM!
> > Thanks again for your patches, you keep sending them, we keep forgetting 
> > them.. lol, I hope this one will get into SVN. maybe a
> > little modified.
> sure. that's a concept :)
> 
> [snip]
> > this way :
> > 1 - no more 'source' order being important
> 
> Well this a little more than what you're saying here :D gui.tcl itself has a 
> lot of instructions in its body which are not wrapped into functions.
> 

no, actually all the code from the files that aren't in procs are inside a if 
{$initialize_amsn == 1 } and that's the part 
of code I was suggesting to put outside the file in a init{} proc.

> 
> > 2 - all the initialization will be done in one place AFTER all the files 
> > were source, so after ALL procs are already made
> > available
> 
> really source'ing all those files takes 1/2 of the boot time process. If 
> there weren't inner dependencies and I could load them *after* the window 
> had been displayed, and one by one , boot time would look significatly 
> faster

nope, just try it, look at the amsn file and change the 'set initialize_amsn 1' 
to 'set initalize_amsn 0' and launch amsn, 
you'll get an error, yes, because it seems that there is some code in 
msncam.tcl that is not in an initialize_amsn wrapping, 
which is already bad and should be fixed (or we might get into trouble when we 
do a reload_files)
you'll see that it crashes on sourcing msncam.tcl and it happens really fast, 
and msncam.tcl is one of the last files being 
sourced.. 
Actually the whole bootstrap takes time because we need to load the languages, 
then load the configs, then choose the 
profile, verify the ports of the profiles in use, create our own locked port, 
then reload the config for that profile, then 
... 
that's really the long part, and that part is done inside of if 
{$initialize_amsn } code that gets called when we do the 
'source'...  if we move that code out of the files, we'll get a so much faster 
loading!

> 
> > 3 - easier to rearrange stuff since procs are all loaded
> > 4 - less error-prone.
> 
> btw, I would move away from the "amsn" script all the proc definitions, 
> tests, whatever and I would move them into a bootstrap.tcl as you suggest.
> 

I would agree.. we just never got into the refactoring cycle of the development


> [ot]
> Beside this, I would break into pieces a lot of the code in amsn (I mean all 
> of the source of amsn). There are procs of tens of lines, how can you pass 
> them through without getting mad? :P
> 
> As you're rewriting the contactlist take this as a suggestion. And don't be 
> frightened of break guicontactlist.tcl into several files if this would help 
> ;)
> I mean: you need to create a contact ? You have to write name, put the buddy 
> icon, the PSM etc
> Ok, define a proc :)
> 
> Even better, define a ContactList object, made of ContactGroups containing 
> ContactObjects which can be Print{}'ed, Create{ $id }'ed etc.
> 
> What's more OO than a GUI? ;)
> [/ot]
> 
yeah, I know, but what can I say.. you know how motivated we all are:p

> 
> > p.s.: You know the amsn team is hiring, no ? ;)
> 
> Yep I know :p but with my own project up and running (and waiting for 
> updates) and exams coming up, I would hardly be helpful :P
> 
> bye
> 

ok, then we don't need an extra inactive developer, we've got enough :p
in that case, stay helpful with all those patches, it's nice :)
take care

KKRt
> 
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys - and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Amsn-devel mailing list
> Amsn-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/amsn-devel

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Amsn-devel mailing list
Amsn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amsn-devel

Reply via email to