Message and Number need access to the currency. When accessing them within a block helper that changes the context, this is the best way to ensure those values are carried over. Very similar to the locale.