You can use RC liberally to avoid thinking about memory though. The only memory problem to think about then is circular refs, which GC languages also don't fully avoid.
imo the problem with UST vs DAI was not under vs over collateralisation, but rather that Luna supporting UST had its value tied to UST adoption. On the other hand, DAI is collateralised by things like Eth, which could also in theory crash, but get their value from a much wider ecosystem than just DAI - hence one potentially avoids the circularity.