forwarding email to a script or using standard output would still require a script to be triggered. you can't just have a script fire when an email is received - you need to run a script to do that!
so a cron job is the only way to do it. it is in no way inefficient, as a good script may only take 0.01 seconds to run - if that - and running once a minute, that's 0.6 seconds per hour. sad, i know
there really is no other way - either accept the advice people give you or find out the hard way