On 13-Oct-01, Brock & Janet wrote:

> Should the date? function return false if an invalid date is
> entered?

> For example, when entering (YYYY-MM-DD);
>>> date? 2001-12-25
> == true

> So you would think that a False would be returned if a date was
> incorrect, however, unexpectedly;
>>> date? 2001-13-25
> ** Syntax Error: Invalid date -- 2001-13-25
> ** Near: (line 1) date? 2001-13-25


> Since date? doesn't return a false but a Syntax Error. When I try
> the following I would expect it to gracefully allow me to enter an
> invalid date and allow me to write code around it to correct it.
>>> if error? try [ date? 2001-13-25] [print "An invalid date was
>>> entered"]
> ** Syntax Error: Invalid date -- 2001-13-25
> ** Near: (line 1) error? try [ date? 2001-13-25]

> Any thoughts?

I'd think the error occurs because it's an invalid datatype, same as
entering...

>> 100s
** Syntax Error: Invalid integer -- 100s

is invalid.  When a script's running though, any dates entered would
probably start out as a string, so just check for an error when
converting it to a date...

>> if error? try [to-date "2001-13-25"][print "Date error!"]
Date error!

-- 
Carl Read

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

Reply via email to