Two quick thoughts:
1) REPL driven development is less of 'a work-around to the slow startup problem' and more of 'a better way to develop software, interactively'.
After developing even a passing sophistication with a REPL, going back to a system without one (even a system with a good console), feels like donning concrete boots.
2) 'How do you know what keys and values are within a map?' - by inspecting it in the REPL. (!) I jest.
In fact, an important point to bring up here is testing. Automated testing, especially at the boundaries between separate parts of the program, mitigates some downside of not having static types. If tests prove one piece of the program will succeed if given the correct input shape (and error nicely if not), then callers of that piece can confidently pass any shape they want.
Hope that helps.