Page 37

turai mente alcune definizioni si limiteranno ad una sola parola (che quindi non ha anagrammi) mentre altre comprenderanno più parole (ad esempio amor che corrisponde a armo, mora, orma, ramo, Roma). Disponendo di un dizionario di questo tipo è immediato trovare tutti gli anagrammi di qualsiasi parola: basta ricavarne la firma e cercare i vocaboli che le corrispondono. Nell'articolo di Dewdney si spiega anche come questo dizionario possa essere utilizzato per ricercare anagrammi partendo non da una sola ma da più parole: il procedimento è più lungo, ma concettualmente non troppo complicato. In sintesi si genera la firma dell'intera frase da anagrammare e quindi la si confronta con ogni firma del dizionario, eliminando di volta in volta le lettere in comune che ovviamente vanno a formare una delle parole dell'anagramma in formazione. Alla fine ci si ritrova ad aver adoperato tutte le lettere della frase oppure con alcune lettere d'avanzo; nel primo caso l'anagramma è riuscito (anche se non è detto che abbia un senso compiuto) nel secondo si deve ritentare, «restituendo» una delle parole alla frase e continuano do la scansione. Ma questo è un argomento che non vorrei trattare ora; è invece il caso di rimanere nel camo po degli anagrammi di una parola sola per tornare al· l'intervento di Michele Giordano. Egli infatti, di fronte ai problemi posti dalla realizzazione di un dizionario degli anagrammi ha pensato bene di ... fame a meno. Ha quindi aggirato il problema realizzando un programma per C64 in grado di filtrare le sole parole plausibili dall'insieme di tutte le permutazioni di una parola data. Come filtro sono state scelte ovviamente le regole di ortografia della lingua italiana, in base alle quali si può decidere se una

MCmicrocomputer

data successione di lettere è una parola (ossia può essere pronunciata) oppure no. Ma lascio direttamente la parola a Michele. Vorrei dire subito che la strada esaminata dalla rivista (Le Scienze, n.d.r.) e sperimentata in quel d'America si è dimostrata del tutto impraticabile per il solitario digitatore perdigiorno come spiegherò immediatamente. L'algoritmo sul quale poggia l'anagrammatore automatico di cui si parla nella rivista consiste nel confrontare la sequenza di lettere che compongono la parola da anagrammare, opportunamente ordinata alfabeticamente, con un vocabolario della lingua (ovviamente senza definizioni), rimaneggiato per lo scopo in anagrammi alfabetici. In tal modo (...) in pochi secondi si identificano quelle parole la cui natura gemella è celata dal diverso ordine in cui sono disposte le lettere che le compongono. Parola d'onore, è incredibile e banale, ma assolutamente vero. Chi non crede può leggere a pago 45 dell'aureo fascicolo che la Zanichelli ha pubblicato come promozione della undicesima edizione del celebre Zingarelli. Nella nominata pagina si apprende infatti che è proprio questo il sistema che l'Honeywell 64/60 della Redazione lessicografica Zanichelli impiega (tra l'altro) per giocare a «Paroliamo» nella trasmissione Rai J «Tandem». Nel gioco «Paroliamo» ci si accontenta di trovare un solo anagrammafra le dieci lettere sorteggiate ma, come spiega Le Scienze, nulla impedisce di sfruttare il «vocabolario in linea» per anagrammare intere frasi o nomi. Ecco allora Donald Ervin Knuth, noto studioso di scienze del calcolatore, diventare Hunt, Drinki And Love (caccia, bevi e ama). O se preferite, il nostro Girolamo Savonarola che Saliva al Rogo Romano (quest'ultimo anagramma nostrano, è il caso di dirlo, non è frutto di

n. 48 - gennaio 1986

una spremuta di byte, ma di pura applicazione meningea e non del sottoscritto, purtroppo). Come raccogliere dunque la sfida dell'anagramma automatico nel campo del nostro «si dolce idioma» come dice il poeta? Le questioni che si presentano al volenteroso sono essenzialmente le seguenti: a) necessità di tempo a iosa e di dita molto agili per battere qualcosa come almeno (stima modestissima) 15.000 parole da memorizzare; e questo s'intende, prima di scrivere una sola linea di programma; b) necessità di memorie di massa di adeguata capacità (almeno almeno almeno 400 Kbyte). E non basta. Bisogna an-

che considerare che l'italiano è una lingua bizantina (non per nascita, ma per vocazione), con una straordinaria propensione alle sottigliezze, a difffrenza di un idioma grezzone, ma praticissimo come l'inglese. Un esempio? Ecco: con quattro paroline (LO VE, LO VES, LOVED, LOVJNG) in inglese si può esaurire tutto il Kamasutra verbale, mentre vengono i brividi solo a pensare di cimentarsi in una analoga impresa in italiano, ingolfandosi nell'intrico degli ASSERO, ASSIMO, ERESTE e compagnia bella, che fanno ricco, ma anche spratico (??? C. G.) e un po' rischioso il nostro parlare. Questo vuoi dire infatti che per ogni verbo immesso nel vocabolario occorrerebbe immettere anche

A8COEFGHIJKLMNOPQRSTUVWXYZ '00000000000000000000000000' ;A '01000000000201000200000000' ;8 '00100002000200001200000000' ;C '00010000000000000200000000' ;0 '00000000000000000000000000' ;E '00000100000200000200000000' ;F '00000012000201000200000000' ;G '00000000000000000000000000' ;H '00000000000000000000000000' ;1 '00000000000000000000000000' ;J '00000000000000000000000000' ;K '01110110000111011011010001' ;L '01000000000010010000000000' ;M ,00 110 11000000 100 10 110 10001 ~ ;N '00000000000000000000000000' ;0 '00000000000200010200000000' ;P '00000000000000001000000000' ;Q '01110110000111011111010001' ;R '03330330000333033013030000' ;5 '00000000000100000201000000' ;T '00000000000000000000000000' ;U '00000000000000000000010000' ;V '00000000000000000000000000' ;W '00000000000000000000000000' ;X '00000000000000000000000000' ;Y '00000000000000000000000001' ;Z

.

I

Figura l • Questa tabella definisce la possibilità di accordo fra due consonanti. per poter decidere quali accoppiamenti sono validi oppure no.

37

048 MCmicrocomputer  
048 MCmicrocomputer  

Gennaio 1986

Advertisement