[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue: COERCE-INCOMPLETE



A brief summary of our discussion of the issue COERCE-INCOMPLETE:

We think that COERCE is incomplete in some ways. However, we are not all happy
with the ways that you propose. 

Making COERCE symmetric would probably be a bad idea, e.g., that it can coerce
 from INTEGER to FLOAT and not from FLOAT to INTEGER is on purpose. 

We think COERCE from integer to character is odd and non-portable and think it
perhaps should be removed from the standard.

COERCE from character to STRING is a good idea. 

We are now puzzled by the inconsistency of (COERCE x 'STRING) vs (STRING x) and
want to reduce it.

We would like (COERCE x 'PATHNAME) to work like (PATHNAME x). 

The reason that (COERCE symbol 'STRING) is difficult is that (COERCE 'NIL
'STRING) as a symbol could return "NIL", but (COERCE '() 'STRING) as the empty
list could return "". 

FUNCTION-TYPE has extended COERCE to work for 'FUNCTION.