Differenze tra le versioni di "Continuazione"

m
tag obsoleti
m (→‎Collegamenti esterni: Bot: fix citazione web (v. discussione))
m (tag obsoleti)
*[[C (linguaggio)|C]]: <code>setcontext</code> et al. ([[UNIX System V]] e [[GNU]] libc)
*[[Ruby]]: <code>callcc</code>
*[[Stackless Python|Python]]: (vedi oltre) possedeva il modulo <ttcode>continuation</ttcode> ma è stato rimosso.
*[[Haskell (linguaggio)|Haskell]]: Monade di continuazione
La continuazione si utilizza per "saltare" da una parte del programma all'altra a seconda delle necessità. Funziona in modo analogo al comando goto presente nel [[BASIC]] con la differenza che il comando goto è sconsigliato perché rende la manutenzione del codice difficile mentre la continuazione non rende ardua la modifica del codice quando questo diventa di elevate dimensioni. La continuazione non salta tra linee di codice ma tra stati. Si può vedere il programma come un insieme di stati che evolvono a seconda delle azioni dell'utente e la continuazione consente di saltare tra stati diversi a seconda delle necessità. Utilizza un modello di programmazione simile a quello delle [[Rete di Petri|reti di Petri]].
1 170 926

contributi