Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Monicelli: programmare con le supercazzole

Monicelli è un linguaggio che consente di programmare con le "supercazzole" di "Amici miei"
Monicelli: programmare con le supercazzole
Monicelli è un linguaggio che consente di programmare con le "supercazzole" di "Amici miei"
Link copiato negli appunti

È disponibile su GitHub "Cofandina", la seconda milestone di Monicelli, un linguaggio di programmazione esoterico interamente basato sulle "supercazzole" e ispirato alla saga cinematografica di "Amici Miei" del Regista Mario Monicelli.

Cos'è una supercazzola

Per i pochi che non conoscono il significato di supercazzola, è possibile definire questo neologismo come una sequenza casuale di termini, in alcuni casi inventati, completamente priva di senso. Lo scopo di una supercazzola è quello di ingannare l'interlocutore che fingerà di averla capita perché pronunciata velocemente e composta anche da parole comprensibili o apparentemente tali.

Un esempio di supercazzola potrebbe essere quindi il seguente:

No, no, no, attenzione! No! Pàstene soppaltate secondo l'articolo 12, abbia pazienza, sennò... posterdati, per due, anche un pochino antani in prefettura...

Elementi di programmazione con le supercazzole

Monicelli riprende lo stile di diverse supercazzole pronunciate nel corso del film, il main, cioè l'entry point del programma (la supercazzola appunto) è infatti:

Lei ha clacsonato

mentre un valore può essere restituito tramite la seguente istruzione:

vaffanzum <expression>

Nel caso in cui non si voglia restituire alcun valore è invece sufficiente utilizzare l'espressione vaffanzum!.

Le variabili

In Monicelli, così come in altri linguaggi, un nome di variabile può contenere numeri, caratteri maiuscoli o minuscoli ma non può iniziare con un numero. È possibile utilizzare un articolo in lingua italiana per creare una frase e il compilatore non cercherà alcuna corrispondenza tra quest'ultimo e il termine utilizzato. Ciò significa che cappello e il cappello si riferiscono alla medesima variabile ma non è possibile utilizzare un articolo per il nome di una variabile.

Per dichiarare una variabile si deve utilizzare un'espressione come la seguente:

voglio <varname>, <type>

e si può introdurre un valore di inizializzazione in questo modo:

voglio <varname>, <type> come se fosse <expression>

I tipi di dato

I nomi dei tipi sono associati a quelli dei personaggi principali di "Amici miei", per cui Necchi è ad esempio int, Mascetti è char e Perozzi è float.

Un output come il seguente:

voglio antani, Necchi come se fosse 4

corrisponde quindi all'espressione

voglio <varname>, <type> come se fosse <expression>

Dove viene dichiarata una variabile antani di tipo Necchi (quindi un intero) inizializzata con il valore 4.

I cicli

La medesima variabile può poi essere utilizzata in un ciclo che riprende il do{} while(); di C in questo modo:

stuzzica
    <statements>
e brematura anche, se <condition>

Ad esempio:

voglio antani, Necchi come se fosse 10
stuzzica
    antani come fosse antani meno 1
e brematura anche, se antani maggiore di 0

Corrisponde a:

int antani = 10;
do {
    antani = antani - 1;
} while (antani > 0);

È comunque possibile sostituire brematura con prematura.

L'immagine del post è ripresa da Wikipedia.

Ti consigliamo anche