Ruby scripting e curiosità linguistiche
Di recente ho avuto l’esigenza lavorativa e il piacere di imparare un nuovo linguaggio di programmazione ad alto livello, Ruby, che può essere definito come un linguaggio di scripting ad oggetti. Quello che mi ha più colpito di questo linguaggio è la naturalità con la quale si possono scrivere le varie “richieste” e la flessibilità nel definire da zero qualsiasi metodo si voglia; inoltre per me che provengo da Fortran e C è stato un gran salto di qualità poter usufruire della comodità di classi e metodi già definiti, soprattutto per quanto riguarda l’elaborazione di stringhe.
Detto questo, negli ultimi giorni sto leggendo un interessantissimo e molto ben scritto volume sulla storia della crittografia tra le due guerre mondiali; nell’ambito della cifratura a sostituzione di lettera mi è venuto in mente di creare un piccolo programmino che analizzasse la distribuzione di frequenza delle varie lettere nella lingua italiana, e, sfruttando i numerosi testi di letteratura antica, comprendere come nel corso dei secoli queste frequenze si modificassero.
I risultati sono stati davvero interessanti e potete leggerli, con tanto di grafici colorati, cliccando qui. Se siete interessati anche al codice Ruby utilizzato potete scaricarlo cliccando nel link sottostante; avrete bisogno di Ruby installato sul vostro computer e del testo da analizzare (rinominato in testo.txt) posto nella stessa cartella dove metterete lo script. Non esitate a contattarmi se avete qualche particolare curiosità! Lieto come sempre di avervi portato qualcosa di nuovo…
Cerca caratteri.rb - Clicca per scaricare lo script


Giugno 4th, 2008 at 15:52
Bravo è molto interessante e anche affascinante. Se può esserti utile, mi pare che un certo Leon Battista Alberti, archittetto del 400, abbia fatto uno studio analogo al tuo, ma senza usare ruby…
Giugno 5th, 2008 at 13:19
Non per niente l’Alberti, come tanti altri maestri rinascimentali, era affascinato dalla crittografia ed era interessato a trovare una soluzione al problema della facilità di decodifica della cifratura di Cesare. La sua soluzione fu il cosiddetto Disco Cifrante (http://it.wikipedia.org/wiki/Disco_cifrante), ma un robusto sistema di crittatura fu sviluppato solo a metà del 500 dal francese Vigenère (http://it.wikipedia.org/wiki/Cifrario_di_Vigen%C3%A8re)
Giugno 5th, 2008 at 14:18
E’ sconvolgente l’uso della x in quel poema del 1600. Non sarà mica che l’eroe principale avesse la x nel nome?
Secondo me se si analizassero più libri si otterrebbero risultati più omogenei, ciò a testimoniare che la lingua italiana come la conosciamo oggi è nata all’incirca nel 1200 e da allora è cambiata poco, a parte i neologismi che ormai ci hanno invaso.
Giugno 5th, 2008 at 15:04
No no, non servono molti testi proprio per una caratteristica intrinseca di ridondanza tipica di ogni lingua. Basterebbe in realtà un solo romanzo
Giugno 6th, 2008 at 16:11
Tu non stai bene.
E forse non stava bene nemmeno Leon Battista Alberti.
Oh, sia chiaro… non sono una bionda
Giugno 10th, 2008 at 13:20
questo linguaggio non lo conoscevo,
sembra molto intuitivo, lo terrò presente!!
sarebbe interessante contare l’occorrenza delle parole e non delle lettere per sapere come abbiamo cambiato in nostro modo di costruire le frasi e quindi di parlare con gli altri.
ciao a tutti
Giugno 18th, 2008 at 02:44
Concordo con Claudius sul fatto che l’indagine potrebbe essere viziata dall’uso di un singolo testo, ad esempio nel “principe” tale parola compare spesso e si notano i picchi di p,n,i (se non ricordo male i grafici) in corrispondenza alla corrispondente data, nell’Orlando la r dei nomi propri di vari personaggi è fortemente presente (anche se in questo caso potrebbe essere una tendenza dell’epoca nella scelta dei nomi). Mi fa piacere comunque vedere che non sono l’unico che non ha bisogno di stupefacenti per farsi dei bei “trip”.
Giugno 24th, 2008 at 17:52
Molto interessante… e utile per chi è interessato alla crittografia. per questo vi segnalo un sito, www.3564020356.org, per accedere al quale bisogna risolvere un indovinello, è criptato un messaggio (dove? anche questo tocca scoprirlo, ma è facile!), … per decrittarlo serve proprio l’analisi delle frequenze delle lettere. però il testo è in inglese

fatto ciò, se andrete avanti con gli indovinelli, ne troverete molti basati sulla crittografia (e.g. fairplay), steganografia e simili, e perverrete anche ad interessantissimi testi sulla crittografia e steganografia. … per chi ha tempo e pazienza
grande irvius! io un clic te l’ho dato, e lo farò ogni volta che aprirò il browser e questo aggeggio infernale che mi fa perdere troppo tempo!