From xkruty na informatics.muni.cz Tue Aug 24 09:50:30 2004 From: xkruty na informatics.muni.cz (Peter Kruty) Date: Tue, 24 Aug 2004 09:50:30 +0200 Subject: Gtk sheet Message-ID: <20040824075030.GA15450@nymfe04.fi.muni.cz> Zdravim, neviete akym sposobom jednoducho vytvorit nieco na sposob sheetu ako v gnumeric? Jedine k comu som sa dostal je Gtk::Table a do toho navkladat napr. Gtk::Entry, ale to je pracne. regards, -- Peter Kruty, oozy -- Fingerprint = E893 658B 141D 0998 4976 EF14 905C 90D4 7B22 F749 #!/bin/bash -- require: bash gcc perl guile perl -we "\$_ =\`guile -c '(display (list->string (reverse (\ string->list \\\"\$ARGV[0]\\\"))))'\`;sub{print}->(s/zoo/alh\ \n/i)" `echo "char a[]=\"Oozy\\n\";int main(){char*i;for(i=a\ ;*i!=0;i++)putchar(0[i]);}"|cc -x c - -o $$&&./$$&&rm -f $$`; "That that is is not not that that is not is not." Jacques Derrida From xcapek1 na aurora.fi.muni.cz Wed Aug 25 13:42:11 2004 From: xcapek1 na aurora.fi.muni.cz (Tomas Capek) Date: Wed, 25 Aug 2004 13:42:11 +0200 (CEST) Subject: zrychleni casove narocnych operaci Message-ID: V Ruby pracuji s XML slovniky, ktere jsou velike radove megabajty. Na ziskavani dat z nich pouzivam libXML pro Ruby, jehoz soucasti je XPath. Ovsem i kdyz se snazim pouzivat co nejspecifictejsi XPath dotazy, hledani informace, ktera je v ramci slovniku rozeseta a odkazovana obecne zcela nahodne, se mi zda neumerne pomale, jedna se o radove jednotky az desitky sekund na vyhodnoceni jednoho Nodesetu. Slysel jsem o existenci knihovny 'memorize' pro Ruby, ktera umoznuje cachovat jednotlive tridy behem vypoctu, a chtel bych se zeptat, kde se tato knihovna da najit, jak funguje a jak se s ni zachazi. Muj druhy dotaz je podobny, jen obecnejsi, jake metody lze obecne pouzit na urychleni parsingu XML v Ruby? Je sance, ze pomuze nejaka kompilace do exe, napr. pomoci exerb? Diky za rady, Tomas Capek From xsvobod4 na fi.muni.cz Wed Aug 25 13:57:30 2004 From: xsvobod4 na fi.muni.cz (Lukas Svoboda) Date: Wed, 25 Aug 2004 13:57:30 +0200 Subject: zrychleni casove narocnych operaci In-Reply-To: References: Message-ID: <20040825115730.GA25237@didone.fi.muni.cz> On Wed, Aug 25, 2004 at 01:42:11PM +0200, Tomas Capek wrote: > > V Ruby pracuji s XML slovniky, ktere jsou velike radove megabajty. > Na ziskavani dat z nich pouzivam libXML pro Ruby, jehoz soucasti je > XPath. Ovsem i kdyz se snazim pouzivat co nejspecifictejsi XPath dotazy, > hledani informace, ktera je v ramci slovniku rozeseta a odkazovana obecne > zcela nahodne, se mi zda neumerne pomale, jedna se o radove jednotky az > desitky sekund na vyhodnoceni jednoho Nodesetu. tato knihovna je jiz soucasit (nebo alespon plne nahrazena) knihovnou AspectR (Simple aspect oriented programming module), ktrera se da najit v RAA, konkretne v sekci Library/Hacks. Knihovna by v sobe mela mit dokumentaci, a pokud se nemylim, je popsana i v knizce Ruby Developers Guide (Syngress). > > Slysel jsem o existenci knihovny 'memorize' pro Ruby, ktera umoznuje > cachovat jednotlive tridy behem vypoctu, a chtel bych se zeptat, kde se > tato knihovna da najit, jak funguje a jak se s ni zachazi. > > Muj druhy dotaz je podobny, jen obecnejsi, jake metody lze obecne pouzit > na urychleni parsingu XML v Ruby? Je sance, ze pomuze nejaka kompilace do > exe, napr. pomoci exerb? IMHO existuji dve knihovny ReXML a libXML z nichz je mnohem rychlejsi libXML (wrapper na C knihovnu), takze tu pouzvas spravne. Ze by slo kompilovat ruby to nevim (nevi nekdo o nejakem nastroji), ale IMHO to nepude pac jak by se kompiloval eval, ci treba Delegator? Mozna by stalo za to zvazit zda lze navrhnout efektivnejsi struktura pro tvoji praci nez XML a tu implementovat. Lukas > > Diky za rady, > Tomas Capek > > From xkruty na informatics.muni.cz Wed Aug 25 16:47:36 2004 From: xkruty na informatics.muni.cz (Peter Kruty) Date: Wed, 25 Aug 2004 16:47:36 +0200 Subject: ako predefinovat triedu atributu objektu Message-ID: <20040825144736.GA18494@nymfe04.fi.muni.cz> Zdravim, mam nasledujuci kod: class A attr_accessor :pole class << @pole def each_positive self.each do |item| if item > 0 then yield item end end end end end a = A.new a.pole = [1, -3, 3, -5, 0, 0] a.pole.each_positive do |i| puts i end Zaujimalo by ma preco toto nefunguje. Kde mam chybu, resp. co robim zle. Pravdepodobne som nieco zle pochopil. Akt o teda ide ako pridat do triedy atributu "pole" nejaky iterator (alebo obecne metodu ci atribut), ale iba do triedy tejto konkretnej instancie, cize akoby pridat to ibe tejto instacii. Samozrejme to mozem obist vytvorenim podtriedy, ale zaujimalo by ma ci to naznacenym sposobom. regards, -- Peter Kruty, oozy -- Fingerprint = E893 658B 141D 0998 4976 EF14 905C 90D4 7B22 F749 #!/bin/bash -- require: bash gcc perl guile perl -we "\$_ =\`guile -c '(display (list->string (reverse (\ string->list \\\"\$ARGV[0]\\\"))))'\`;sub{print}->(s/zoo/alh\ \n/i)" `echo "char a[]=\"Oozy\\n\";int main(){char*i;for(i=a\ ;*i!=0;i++)putchar(0[i]);}"|cc -x c - -o $$&&./$$&&rm -f $$`; "That that is is not not that that is not is not." Jacques Derrida From xsvobod4 na fi.muni.cz Wed Aug 25 19:28:54 2004 From: xsvobod4 na fi.muni.cz (Lukas Svoboda) Date: Wed, 25 Aug 2004 19:28:54 +0200 Subject: ako predefinovat triedu atributu objektu In-Reply-To: <20040825144736.GA18494@nymfe04.fi.muni.cz> References: <20040825144736.GA18494@nymfe04.fi.muni.cz> Message-ID: <20040825172854.GB30539@didone.fi.muni.cz> On Wed, Aug 25, 2004 at 04:47:36PM +0200, Peter Kruty wrote: > Zdravim, > > mam nasledujuci kod: > > class A > attr_accessor :pole > > class << @pole > def each_positive > self.each do |item| > if item > 0 then > yield item > end > end > end > end > end > > a = A.new > > a.pole = [1, -3, 3, -5, 0, 0] > > a.pole.each_positive do |i| > puts i > end > > Zaujimalo by ma preco toto nefunguje. Kde mam chybu, resp. co robim zle. > Pravdepodobne som nieco zle pochopil. Akt o teda ide ako pridat do triedy > atributu "pole" nejaky iterator (alebo obecne metodu ci atribut), ale iba do > triedy tejto konkretnej instancie, cize akoby pridat to ibe tejto instacii. > Samozrejme to mozem obist vytvorenim podtriedy, ale zaujimalo by ma ci to > naznacenym sposobom. je to v tom, ze "attr_accessor :pole" za tebe definuje dve metody: def pole=(t) @pole = (t) end def pole @pole end takze radek tveho kodu: a.pole = [1, -3, 3, -5, 0, 0] zrusi to co v prom. @pole bylo. Tak jak jsi to asi myslel se to da zapsat napr: cass A attr_accessor :pole def pole=(newvalue) @pole = newvalue class << @pole def each_positive self.each do |item| if item > 0 then yield item end end end end end end a = A.new a.pole = [1, -3, 3, -5, 0, 0] a.pole.each_positive do |i| puts i end Lukas