Successivo: , Precedente: , Su: Progetto delle estensioni   [Contenuti][Indice]


C.5.2 Obiettivi per un nuovo meccanismo

Alcuni obiettivi per la nuova API sono:

Alcuni ulteriori obiettivi rilevanti sono:

In fase di sviluppo, è apparso evidente che dovevano essere disponibili alle estensioni anche altre funzionalità, che sono state successivamente implementate:

Il vincolo di evitare di accedere ai simboli di gawk può parere a prima vista piuttosto difficile da rispettare.

Un tipo di architettura, apparentemente usato da Perl e Ruby e forse da altri programmi, potrebbe consistere nel mettere il codice principale di gawk in una libreria, limitando il programma di utilità gawk a una piccola funzione main() in C che richiamerebbe dinamicamente la libreria.

Questo inverte i ruoli del programma principale e della sua estensione, e complica sia la compilazione che l’installazione, trasformando la semplice copia del programma eseguibile gawk da un sistema all’altro (o da una posizione all’altra all’interno dello stesso sistema) in un’operazione ad alto rischio.

Pat Rankin ha suggerito la soluzione che è stata adottata. Vedi la sezione Una panoramica sul funzionamento ad alto livello, per maggiori dettagli.


Note a piè di pagina

(126)

I simboli sono le variabili e le funzioni definite all’interno di gawk. Accedere a questi simboli da parte di codice esterno a gawk caricato dinamicamente al momento dell’esecuzione è problematico in ambiente MS-Windows.


Successivo: , Precedente: , Su: Progetto delle estensioni   [Contenuti][Indice]