Sometimes the reason has not been relevant for ten years, though, like when a codebase is filled with horrible hacks to account for the fact that you only have 64MB of RAM, while running in a vm with 4GB.
That is right, but you should be able to point at (preferable several) such assumptions that went into the original system, and verify that they are no longer necessary.
Maybe you used to have much less RAM in the past, but also much less data, or not as many users etc.
I worked on a java swing app that was deployed to a phone center as a Citrix app. Each instance was allowed only 64mb. Use if Citrix sidestepped all java version and deployment issues. Anecdote why memory limits can be relaxant today.