I'm just curious about the pattern used in this standard library API for interacting with JavaScript window object methods.
Why should pass window object every time calling an effectful function like requestAnimationFrame?
requestAnimationFrame :: Window -> Effect Unit -> Effect RequestAnimationFrameId
-- Why not this?
requestAnimationFrame :: Effect Unit -> Effect RequestAnimationFrameId