Both sides previous revision
Previous revision
Next revision
|
Previous revision
Next revision
Both sides next revision
|
user:zeman:interset:to-do [2014/06/18 22:01] zeman Changes přejmenováno na Changes.txt. |
user:zeman:interset:to-do [2014/06/24 20:32] zeman Odbourat boolovské používání grepu. |
===== Interset 2.0 ===== | ===== Interset 2.0 ===== |
| |
* Udělat pořádek v metodách ''set()'' a ''get()'' třídy ''FeatureStructure''. Metoda, která vrací podle nálady buď skalár, nebo odkaz na pole, asi vůbec nemá smysl. Asi chci mít jeden get, který vrací vždy skaláry (v případě více hodnot seřazené podle abecedy a slepené svislítkem), a jiný get, který vrací vždy seznamy (v případě jedné hodnoty to bude jednoprvkový seznam). A možná ještě třetí, který vrací skaláry, ale bez svislítek, v případě více hodnot vrátí tu první nebo nejbezpříznakovější nebo tak něco. Naopak set by asi stačil jeden, který sám pozná, jestli má na vstupu jednu hodnotu, několik hodnot, svislítka, nebo odkaz(y) na pole. A pokud odkazy, tak ještě zkontroluje, zda to cílové pole není náhodou jen jednoprvkové. | * Metody FeatureStructure->is_...(), ve kterých se používá boolovský ''grep'', předělat tak, aby se v nich používalo ''MoreUtils::List::any''. |
* Opravit chybu: Jestliže mám hodnoty rysů pro ''decode()'' nachystané v tabulce a jestliže se mezi nimi vyskytne např. odkaz na pole, potom všechny struktury rysů, které ''decode()'' vrátí, budou toto pole sdílet, protože budou obsahovat stejný odkaz. Bylo by lepší místo toho dělat hloubkové kopie, aby si uživatel mohl obsah struktury bez obav měnit. Tohle by se dalo zařídit uvnitř metody ''multiset()''. | * Do FeatureStructure přidat nějaký protějšek treexové metody ''match_iset()''. Mj. na ni čeká Martin! |
* Přesunout ovladače konkrétních sad značek o patro níž, např. z ''Lingua::Interset::EN::Penn'' se stane ''Lingua::Interset::Tagset::EN::Penn''. Je to sice nechutně dlouhé, ale od toho nás stejně odstíní obecné funkce v hlavním modulu Intersetu. Naopak kdybychom to takhle nechali, tak máme zaděláno na problém s rozpoznáním, který modul je ovladač a který je něco jiného. A ten problém může s plnou silou udeřit později, až už budeme mít třeba 20 ovladačů a bude mnohem obtížnější to předělat. Třeba pokud se rozhodnu mít ještě nějakou další předem neohraničenou množinu modulů, které se budou třídit podle jazyka. | |
* Projít ''###!!!'', zejména ve FeatureStructure: | * Projít ''###!!!'', zejména ve FeatureStructure: |
* Nemohli bychom zrušit rys synpos? | * Nemohli bychom zrušit rys synpos? Mám spočítáno, že se používá v 21 sadách, ale nevyplývá z toho, zda by se bez něj tyto sady obešly. |
* Co s číslovkami? | * Co s číslovkami? |
* Přenést všechny ovladače, které vznikly v Treexu a do SVN Intersetu se zatím nedostaly. | * Přenést všechny ovladače, které vznikly v Treexu a do SVN Intersetu se zatím nedostaly. |