Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
Programovací jazyk Lua a koprogramy

atarist
atarist (neregistrovaný)
12. 5. 2009 12:45 Nový

Lua vs Generatory v Pythonu

celé vlákno
Z toho tretiho odkazu, kde se porovnavaji koprogramy v Lua a generatory Pythonu mi neni uplne jasny ten vnitrni rozdil mezi nimi. Python (resp. stackless Python) se chlubi tim, ze vlakna nemaji (?) vlastni zasobnik, ale asi se tim mysli, ze nemaji spolecny oddeleny ceckovy zasobnik (stack frame), protoze lokalni promenne prece musi byt oddelene od hlavniho vlakna ne? V Lua mi to pripadne jasne, tam je to reseno knihovni funkci, ktera vlastni zasobnik pro koprogram vytvori pomoci pole (ceho taky jineho?).
Inkvizitor
Inkvizitor (neregistrovaný)
12. 5. 2009 22:27 Nový

Re: Lua vs Generatory v Pythonu

celé vlákno
"Lokální proměnné" jsou v Pythonu (stejně jako všechny ostatní) přístupné pomocí jména v příslušném slovníku a nikoliv pomocí adresy v zásobníku.
atarist
atarist (neregistrovaný)
12. 5. 2009 22:32 Nový

Re: Lua vs Generatory v Pythonu

celé vlákno
Dobre, ale to pojmenovani tedy musi byt odvozeno i od threadu, ve kterem jsou promenne definovany ne? Predpokladejme, ze mam jednu funkci s lokalni promennou "foo", kterou spustim ve 100 threadech. Takze se vytvori 100 slovniku, kazdy s jednou polozkou s klicem "foo"?
Inkvizitor
Inkvizitor (neregistrovaný)
13. 5. 2009 0:15 Nový

Re: Lua vs Generatory v Pythonu

celé vlákno
Jak na to koukám, tak to vypadá, že tam figurují 2 kontejnery: "locals" a "fast locals". Zatímco "locals" fungují jako klasický slovník, "fast locals" jsou uloženy sekvenčně. Pokud vytvořím proměnnou pomocí exec, dostane se do locals a dá se do ní psát pomocí currentframe().f_locals, v případě, že proměnnou vytvořím "normálně", není to možné. Takže jsem to moc zjednodušil, sorry.
atarist
atarist (neregistrovaný)
13. 5. 2009 11:31 Nový

Re: Lua vs Generatory v Pythonu

celé vlákno
diky za odpoved, uz me je to jasnejsi. Podobne asi budou reseny uzavery, jak predpokladam.
Zasílat nově přidané příspěvky e-mailem