We use a private constructor so we can enforce some rules: we don't want universal functions to stack up, and right now we will only allow objects which appear to be closures (there's no reason not to eventually lift this restriction, but it should be harder to shoot your foot first.
We use a private constructor so we can enforce some rules: we don't want universal functions to stack up, and right now we will only allow objects which appear to be closures (there's no reason not to eventually lift this restriction, but it should be harder to shoot your foot first.)