I had it call a function instead of raising an exception thinking it could come in handy to have a function that could be used for handling any special functionality we might want to implement to handle errors (I.E. somehow interface will galaxy to give the users options in case of error).
This decision was kind of an afterthought, and I am definitely open to suggestions.