I may be being stupid but the current Date Class does not appear to protect itself against a ByteString that is not in valid date format, e.g. by raising an Error. e.g. the code  âABCâ asDate opens the Debugger on #isLetter was sent to nil because it appears to expect more letters after $C but the peek returns nil instead. This seems to me to require a more defensive programming approach. I would like to validate a user input as a valid date in a number of different formats before converting it to a Date and storing it in my model. Iâve tried using the Date parser, e.g. Date readFrom: '04/02/2013' readStream pattern: 'dd/mm/yyyy'. This is fine for simply parsing a valid string but rates a DateError if it doesnât match the . So entering â04/13/2013â cleverly raises âDateError: There is no 13th monthâ. My thought was I could use this to return a simple true/false result in a ByteString extension in my application for example as follows: ByteString >> isValdiDate (Date readFrom: self pattern: âdd/mm/yyyyâ) on: DateError do: [^ false]. ^ true However this doesnât intercept the DateError which is simply reported in the Debugger as before.  This may be my lack of uncderstaning of the Exception handling in Pharo. Any and all thoughts welcome. R