loophp/combinator

Definition of Omega combinator

Closed this issue · 2 comments

Hello,

not considering myself an expert I wonder whether the definition of the Omega combinator is correct.
Shouldn't it be like this?

Ω := MM = (λa.aa)λa.aa

That way Ω does not consume further arguments. The loop is entered when M takes M as an argument, right?

Ωx = MMx = ((λa.aa)λa.aa)x

Whereas

(λa.(aa)(aa))x = (xx)(xx)

takes one more argument and would terminate when x was I := λa.a for instance.

Accordingly, the JS expression for omega would be a function without arguments.

() => (a => a(a))(a => a(a))

I might be wrong.

Anyway, I was happy to come across your project.
Thanks for sharing it!

Cheers!

Sorry for the delay, kinda busy with some other projects, I'll come back to this issue as soon as I have more time.

Since this issue has not had any activity within the last 5 days, I have marked it as stale.
I will close it if no further activity occurs within the next 5 days.