Infinte canvas provides a sense of freedom while finite but invisible boundary provides a sense of security. The reason I added invisible to the mix is due to the issue of rights activation. Adding boundaries that are invisible allows the author of the application to pacify the "wokeness", as people who know about the infinte nature of the canvas might not want to stay within the boundary if they are explicitly shown the boundaryNote: There are cases where people find the boundary on their own, but they are exceptions., which can then backfire both the author and the community in the future. Standalone applications have a hard time leverging this aspect of design, the only form of entities that were(are) allowed to incorporate this are platforms. Eg: Appstores, Operating Systems, FPGAs, etc.
Only exceptions that I could think of until very recently were Games(Not gaming engines, they would again come under platforms), design and editing tools like blender, paint, photoshop, Roam Research etc. But owing to the emergence of hyper-cooperative platforms like Slack, Evernote, Microsoft Teams, etc, this is becoming increasingly accesible to rotm standalone applications. See Related: Hyper Cooperative platforms can reduce asymmetric web traffic. In a way you could say that these applications are transcending boundaries to become pseudo-platforms in themselves (not sure if it is for better or worse).