[hunspell-fi-devel] Lisää yhdyssanakorjauksia

Hannu Väisänen hvaisane at joyx.joensuu.fi
Fri May 5 14:41:44 EEST 2006


On Fri, May 05, 2006 at 12:58:39PM +0300, Harri Pitkänen wrote:
> > Mikä on pienin nopeuden lisäys, jonka tekstiään oikolukeva käyttäjä huomaa?
> Sainoisin, että jotain 20 prosentin luokkaa. Onko tällä perusteella järkevää 
> jättää tekemättä kaikki optiomoinnit, joilla ei yksinään ole näin suurta 
> merkitystä?

Ei tietenkään. Jos otetaan prosentti sieltä ja toinen täältä, päästään
pian johonkin, jonka käyttäjäkin huomaa.

Mutta: onko optimointi todella tärkeää? Jos se on sinulle tärkeää,
niin kyllä minä uskon, että se on tärkeää. Minulla on varmaan nopeampi
kone kuin sinulla. (-:



> Lisäesimerkki (combi_rule teonsana):
> 
>   result $vasen + <[alku: $sana] + $oikea>,
>          rules tekijämuodot, nimitavat, laatutavat,
>                liitesana, liitesana2,
>                #nimisana, laatusana, teonsana,
>                teonsanan_johdos,
>                tavuviiva, loppu;
>
> user-aikoja vertaamalla suoritusajasta hävisi 6,2 prosenttia mutta 
> tunnistettavien sanojen joukko ei muuttunut. Itse asiassa noita sääntöjä 
> tutkimalla näyttäisi siltä, että ohjelma on loogisesti täysin ekvivalentti 
> alkuperäisen version kanssa.

Auts! Jos molemmat versiot ovat loogisesti samoja, tuo on virheen
korjaus eikä koodin optimointi. Tarkoitus on, että rules-osassa on
vain niitä sääntöjä, joilla sana voi jatkua.


 
> Tietysti voi olla järkevää jättää nuo tarkistukset myös kutsuttaviin 
> jatkosääntöihin.

Ohjelman ylläpitäjälle tämä on painajainen: jos (eli käytännössä: kun)
tarkistuksessa huomataan virhe, sitä ei takuulla muista korjata joka
paikkaan, missä testiä käytetään. Jos ylläpitäjä ei ole kirjoittanut
koodia, hän ei edes tiedä, missä paikoissa testiä käytetään.



> Omasta mielestäni result-komentojen pilkkominen lisää 
> myös koodin luettavuutta koska tällöin on selvempää, miksi tiettyä 
> jatkosääntöä ylipäätään on tarpeen kutsua. Mutta koska olet näitä asioita 
> paljon pitempään miettinyt kuin minä, niin en väitä vastaan jos kokemus on 
> sinulle toisin osoittanut :)

Me ajatellaan asiaa eri tavalla. Sinä ajattelet, miten jotain tehdään,
minun mielestä on helpompi ajatella vain sitä, mitä tehdään ja jättää
"miten" koneen huoleksi.



> Siispä Suomi-Malagan pitää 
> pystyä käsittelemään noin 3000 merkkijonoa sekunnissa. Yllä olevien 
> esimerkkien mukaan se pääsee tästä vain puoleen (1,2 GHz:n prosessorilla) 

3,6 GHz:n prosessorilla pääsee noin 2500 sanaan sekunnissa.



More information about the devel mailing list