Autor: Danijel Turina Datum: 2009-01-17 09:52:44 Grupe: hr.alt.magija Tema: Re: sumnja Linija: 49 Message-ID: gks68n$1c3$1@ss408.t-com.hr |
Zli_Zec wrote: > Poruke su ti NEČITLJIVE, honey-bunny. To što su nečitljive, to bi se još dalo riješiti. Ali ono što je tragično je sadržaj, koji izgleda tako da bih ga mogao bez ikakvih problema generirati skriptom, mogao bih napisati kod koji bi generirao takve felixoidne outpute na temelju jednostavne sintaktičke analize inputa, isto kao što se trashere dalo bez problema emulirati takvom skriptom toliko dobro da nitko ne bi mjesecima primjetio razliku da nije namjerno naglašena. Naprosto skripta pogleda ima li određenih ključnih riječi ili fraza u inputu, i iz baze od par sličnih mogućnosti baca generičke felixarije na output. Tu tako nema ničega, da je upravo odsutnost ono što definira stvarni sadržaj. Da vidimo kako bi to izgledalo u malo slobodnijem pseudokodu: case syntax_parse(input) is: ugrozen: echo rephrase_to_invert(input); osjeca_se_glupo: echo ("Ti si glup", "Ispran ti je mozak", "Otiso si u qrac"); spominje_se_Danijel: echo ("On je lud", "Proglasio je sebe za Boga", "Prije je bio predan Bogu a sad je sebe proglasio za Boga"); parse_failed: echo ("A da ti pocnes citat S JEBENIM RAZUMJEVANJEM sto pisem.", "Da te malo PODUCIM:"+random_generic_trivia); osjeća_se_nesigurno: echo (random_bahata_izjava + random_generic_trivia); opasno_ugrožen: echo ("Ovo je LAZ!", "LAZES!", "Astral, ovo je sve ASTRAL" ...); else fail("Drustvo, bilo je previse poruka pa sam sve pobrisao", "Imam neku guzvu s poslom, cujemo se iza prvog", "Mailer se zaigrao i pogubio poruke, daj posalji ponovo"); U osnovi, trebalo bi napisati jednostavan sintaktički parser kao funkciju koja vraća integer vrijednost na temelju koje switch determinira output. Druga funkcija koju bi trebali napisati je rephrase_to_invert, nešto kao oni botovi koji svaku frazu pretvore u pitanje, ili u ovom slučaju kad Felixu veliš "lažeš" on odgovori "ne, ti lažeš", kad mu veliš da je lud, on veli "ne, ti si lud". Ostalo su trivijalne funkcije koje dobivaju array kao parametar i daju array[random(1, count(array))] kao output. Kad je bot gotov, napravi se nntp klijentska skripta koja se svakih par sati spoji na news server, sintaktički proparsa poruke kako bi ustanovila gdje se spominje Felix u kontekstu koji ga ugrožava, ta poruka se pusti u bot kao input, i od outputa se generira poruka na newse, koja se stavi u outgoing queue, koji se pošalje na idućem eventu. -- http://www.danijel.org/ |