• Non ci sono risultati.

6.3 Considerazioni conclusive

N/A
N/A
Protected

Academic year: 2021

Condividi "6.3 Considerazioni conclusive"

Copied!
1
0
0

Testo completo

(1)

82

6.3 Considerazioni conclusive

Ormai alla fine, è arrivato il momento di tirare le somme. Sono stati introdotti i linguaggi ad oggetti, descritte le loro proprietà, in primis la riusabilità. È stato additato Smalltalk, non me ne voglia Simula, come archetipo della programmazione OO, e da questo ci si è spostati verso un calcolo ad oggetti puro, Sigma, fino ad arrivare alla sua estensione Sigma_X. Si è parlato di tipi e sistemi di tipi, fornendo alcuni spunti di riflessione (non risposte complete di sicuro troppo intricate) per affrontare domande quali: “Perché i miei programmi crashano?”, “Perché il computer si rifiuta di eseguirli?” (safety e type soundness). Sostituzioni ed unificazione completano la parte puramente teorica della trattazione.

Per quanto riguarda la parte implementativa vorrei incentrare queste ultime considerazioni sul linguaggio usato per sviluppare Sigma_X, il suo Type System e gli strumenti di verifica: Java.

Java (versione 1.5) ben si è prestato per modellare termini del calcolo e sistema dei

tipi: il fatto di essere un linguaggio Object Oriented built-in ha permesso di definire in modo rigoroso e pulito la struttura di ogni singola componente, conferendo a termini e tipi la familiare struttura ad albero (vedere le considerazioni sull’albero della sintassi astratta). Ma questo “rapporto” non è stato tutto rose e fuori. Infatti la sua smodata visione OO mi ha a volte costretto a forzare il codice, rendendolo in taluni casi molto intricato (notare gestione dei tipi inseriti nei vettori). Sicuramente dipenderà anche dalla progettazione ma penso che ci sia dietro un problema più profondo: Java è nato di certo per scopi il più possibile legati al mondo del Web e del

multimedia e quando ci si trova ad affrontare problemi di una certa complessità non

Riferimenti

Documenti correlati

My methodological approach combines both descriptive and normative perspectives. Regarding the descriptive approach, it explains in detail the main EU instruments for

Hence high future liquidity begets present liquidity since then, buyers are more likely to offer a price at which high quality assets trade.. Dynamics can be more intricate,

The emphasis laid on market integration, it was feared, would gradually compel Member States to lower their regulatory protection in a growing number of areas,

It it is only with the Single European Act that the protection of the environment has been given unambiguous recognition in the EEC treaty and that its main objectives

L’enquête 2010 sur la main d’œuvre étrangère révèle que 74,6% des immigrés enquêtés étaient engagés dans un emploi avant de venir en Mauritanie, la proportion

– Consente di avere versioni con valori solo positivi (unsigned) o sia positivi che negativi (signed). – int si assume sempre signed (non

double reali virgola mobile in doppia precisione reali virgola mobile in doppia precisione 8 byte 8 byte Intervallo. Intervallo ±10 ±10 308 308 , , 15 15 cifre significative

` e: void maxSeq(int a[], int n, int* i, int* l), dove si suppone di ca- ricare nel parametro i il punto di inizio e in l la lunghezza della sequenza pi` u lunga. Scrivere una