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

8 Responses to “Ruby scripting e curiosità linguistiche”

  1. Federico Says:

    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…

  2. Gil-galad Says:

    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)

  3. Claudius Says:

    E’ sconvolgente l’uso della x in quel poema del 1600. Non sarà mica che l’eroe principale avesse la x nel nome? :-D
    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.

  4. Irvius Says:

    No no, non servono molti testi proprio per una caratteristica intrinseca di ridondanza tipica di ogni lingua. Basterebbe in realtà un solo romanzo

  5. ThePine Says:

    Tu non stai bene.

    E forse non stava bene nemmeno Leon Battista Alberti.

    Oh, sia chiaro… non sono una bionda :D

  6. emiliano Says:

    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

  7. Sandro Says:

    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”.

  8. shinmen mauro takezou Says:

    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 :D
    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!

Leave a Reply