if we create our own exception classes, they need to be subclasses of either class Exception or one of its descendants.
class FileSaveError < StandardError attr_reader :reason def initialize(reason) @reason = reason end end