Skip to content
scrambled
Programming Language Theory Flashcard

How to implement open recursion with self-application?

Books Deckpure-lambda-calculus

Question

How to implement open recursion with self-application?

Answer

scheme
(define cls (parent-maker args)
	(let ([parent-obj (parent-maker (...))])
		(lambda (self)
			(lambda (m)
				(case m
					[(first) (lambda () (msg (self self) 'second))]
					[(second) (lambda () 4)]
					[else ((parent-obj self) m)]))))