Hacker News new | ask | show | jobs
by bewaretheirs 1063 days ago
That should be

  even 0 = true
  even n = odd n-1

  odd 0 = false
  odd n = even n-1
I fed a C version of this (with unsigned n to keep the nasal daemons at bay) to clang and observed that it somehow manages to see through the mutual recursion, generating code that doesn't recurse or loop.
1 comments

You are correct, I don't know why I put the nots in there. Either way, demonstrates mutual recursion.