----- 3/1/06 ----- > Per piacere personale ho deciso di approfondire la mia conoscenza > sul linguaggio Scheme e sto leggendo il "Revised^5 Report on the > Algorithmic Language Scheme". > Avrei una domanda riguardo al sistema di input/output, > piu' precisamente riguardo alle cosidette "porte". > Ho notato che tutte le procedure che associano un file ad una porta di > output richiedono che il file non esista, altrimenti il comportamento > non e' specificato (nel caso il file esista). > Cosa fare quindi se c'e' bisogno di scrivere su un file gia' esistente? La politica di accesso ai file considerata e' puramente sequenziale, per cui un file aperto in scrittura viene trattato come un nuovo file e non come un file preesistente. Questo fu anche l'approccio "standard" del Pascal, con la precisa specifica che l'inizializzazione per scrittura (rewrite) azzera l'eventuale contenuto del file. In questo caso, se si vuole aggiornare un file occorre copiare il contenuto del file preesistente, aperto in lettura, in un nuovo file, il secondo aperto in scrittura, dove possono essere inseriti di seguito anche i nuovi dati. ----- * -----