E 'possibile implementare coroutine utilizzando solo primitive LISP?
-
26-09-2019 - |
Domanda
Per prima cosa, io sono un newbie LISP.
Quello che voglio ottenere è una caratteristica cooperativa micro-threading. E questo può essere acquisita con coroutine. Per quanto ne so, Scheme supporta coroutine via continuazioni. Tuttavia, non tutti implementazione Scheme può avere continuazioni. Se è così, posso aggiungere una funzione di continuazione con solo primitive LISP?
Soluzione
È possibile. I capitoli 5 e 6 del Essentials di linguaggi di programmazione mostra come implementare continuazioni in Scheme. Nel suo libro On Lisp , Paul Graham spiega come implementare continuazioni in Common Lisp (capitoli 20- 22).
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow