Something like...
playdate.reboot([launcher])
...where launcher
is an optional boolean: TRUE (default) exits directly to the launcher screen (like the Settings app can do). FALSE reboots the current game itself.
Not a vital ability--but occasionally useful and it sounds easy to implement: just do whatever the "Home" command does in the System Menu.
Example use cases:
• A way to exit an app with (B) "feels right" for little utilities (like my image viewer, font viewer, and even my clock collection).
• A game could offer a "Go play something else!" command that exits to launcher.
• Once you complete a game that has an ending, you could offer the nicety of a quick one-press exit, instead of the player having to use the System Menu.
• Totally relaunching the current game would be a "quick and free" option for letting a player start a game over from scratch, in simple cases. No cleanup, no programming resets of anything, no memory concerns.
• Relaunching would also be good "instant cleanup" if your game offers multiple save slots and the player wants to switch slots.
• Relaunching would be a quick and easy way to offer a "replay intro sequence" option.