eonil
eonil

Reputation: 86105

Is it possible to implement coroutines using only LISP primitives?

First, I'm a LISP newbie.

What I want to get is a cooperative micro-threading feature. And this can be gained with coroutine. As I know, Scheme supports coroutines via continuations. However, not all Scheme implementation may have continuations. If so, can I add a continuation feature with only LISP primitives?

Upvotes: 5

Views: 1674

Answers (1)

Vijay Mathew
Vijay Mathew

Reputation: 27204

You can. Chapters 5 and 6 of Essentials of Programming Languages shows how to implement continuations in Scheme. In his book On Lisp, Paul Graham explains how to implement continuations in Common Lisp (Chapters 20-22).

Upvotes: 5

Related Questions