If you want it on the heap, it becomes a circular reference, and thus a bit mayhemous in ObjC/C++ without spilling the problem outside and making sure you capture a weak reference/__block (in ObjC)
Basically, you have to do
this = nil;
this = lambda () { refer to this }
Now we're getting into where Lisp macros make this sorta stuff a lot nicer (alambda/what you say is of course trivial; but) this sort of thing is discussed in:
You can kind of do it, it's just annoying.
If you want it on the heap, it becomes a circular reference, and thus a bit mayhemous in ObjC/C++ without spilling the problem outside and making sure you capture a weak reference/__block (in ObjC)
Basically, you have to do
this = nil;
this = lambda () { refer to this }
Now we're getting into where Lisp macros make this sorta stuff a lot nicer (alambda/what you say is of course trivial; but) this sort of thing is discussed in:
http://www.amazon.com/Let-Over-Lambda-Doug-Hoyte/dp/1435712757/ref=sr_1_1?ie=UTF8&qid=1313767251&sr=8-1
Then read this: https://www.amazon.com/Let-Over-Lambda-Doug-Hoyte/dp/1435712757/ref=sr_1_1?ie=UTF8&qid=1494859848&sr=8-1&keywords=let+over+lambda