Portál AbcLinuxu, 18. května 2024 06:19


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
23.7.2009 13:45 CEST
Rozbalit Rozbalit vše Re: Python deterministický
Odpovědět | Sbalit | Link | Blokovat | Admin
Tak a ted uz jenom zajistit, aby tenhle python nepouzivalo nic jinyho, a aby pripadneho budouciho programatora toho programu vzdycky nekdo zaskolil, ze ma pred sebou pozmenenou verzi pythonu a tudiz se tohle nechova tak, jako original.

Tim samozrejme chci rict, ze se mi tohle nezda jako dobry reseni.
23.7.2009 14:15 paskma | skóre: 13 | blog: Paskmův blog
Rozbalit Rozbalit vše Re: Python deterministický
V případě, že by s tím měl pracovat ještě někdo jiný než já, by to už dobré řešení nebylo.

Ono ty výstupy jsou korektní v každém případě, jenom trochu jiné (liší se očíslování nějakých interních polí). Determiničnost jsem potřeboval jenom kvůli ladění.
23.7.2009 14:20 Tomáš
Rozbalit Rozbalit vše Re: Python deterministický
Odpovědět | Sbalit | Link | Blokovat | Admin
To není dobrý nápad. Ohýbat kód interpretru kvůli ladění je fakt blbý nápad. Jak si můžeš být jistý, že to bude fungovat správně na jiné mašině se standardním Pythonem? Projdou Ti tam vůbec unittesty? Pokud potřebuješ deterministický výstup, tak si ty položky setřiď.
23.7.2009 21:20 paskma | skóre: 13 | blog: Paskmův blog
Rozbalit Rozbalit vše Re: Python deterministický
Máš špatný úhel pohledu:-). Byl to dobrý nápad, protože mi ušetřil spoustu práce. Prostě hack. Já neřeším udržovatelnost té obludy, používám ji jenom ke svým vlastním experimentům. Btw ano, funguje to i se standardním Pythonem, protože ta nedeterminističnost (to je slovo) se projeví jenom interním očíslováním nějakých položek.

Unittesty jsem nezkoušel (dobrý nápad), ale jelikož jsem neudělal nic jiného než že jsem "mírně" zhoršil vlastnost hashovací funkce, projít by to mělo.
23.7.2009 14:55 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Python deterministický
Odpovědět | Sbalit | Link | Blokovat | Admin
Není jednodušší použít nějaký slovník s pořadím? Třeba Recipe 107747, nebo se podívat na stav PEP 0372? Případně si seznam klíčů před iterací, ve které na pořadí záleží, seřadit?
When your hammer is C++, everything begins to look like a thumb.
23.7.2009 15:22 ::: | skóre: 14 | blog: e_lama
Rozbalit Rozbalit vše Re: Python deterministický
presne tak, kdyz to potrebuju prochazet v urcitym poradi tak si to predem seradim. Menit kvuli tomu interpreter je pekna zvrhlost...
23.7.2009 21:04 paskma | skóre: 13 | blog: Paskmův blog
Rozbalit Rozbalit vše Re: Python deterministický
Já myslel, že to bude z mého postu patrné. Pochopitelně existuje X čistších způsobů, jak dosáhnout cíle. Ale všechny jsou mnohem pracnější. Ten program má 90k řádek (v C by to bylo půl mega:-) a je složitý jak cukrovar, než bych přišel na to, kde všude ten slovník vyměnit/kde všude seřadit, tak bych zešedivěl (na pár místech jsem to zkoušel, ale s nevalným úspěchem).

Je to hack, proto se zde tím chlubím:-)
28.7.2009 11:55 zde | skóre: 9 | blog: Linuch | Brno
Rozbalit Rozbalit vše Re: Python deterministický
A nebylo by lepší zvětšit PyObject o jeden const long inicializovný counterem, a ten pak použít jako hash value? Nebyl by to jednořádkový patch ale 3-řádkový, ale aspoň by nebyl problém s výkonem. To tvoje řešení mě bolí už když se na něj podívám.
Táto, ty de byl? V práci, já debil.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.