Ron,

I don't want remove this feature or break existing code. I would like this 
feature doesn't change the expected return values on any string functions.

The question is: There is a way to separate this feature without remove it or 
break existing code, and at same time, maintain Clipper compatibility ?
 
Maybe a #define HB_EXT_NUMERIC on hbapi.h.

#ifdef HB_EXT_NUMERIC
#define HB_IS_NUMERIC( p )    ( HB_IS_NUMBER( p ) || HB_IS_DATE(p) || ( 
HB_IS_STRING(p) && (p)->item.asString.length == 1 ) )
#else
#define HB_IS_NUMERIC( p )    ( HB_IS_NUMBER( p ) || HB_IS_DATE(p) )
#endif


1) Where this feature is documented ?
2) If I adopt this, what the impact into xharbour core ?

regards,
Eduardo

--- Em sex, 6/11/09, Ron Pinkas <ron.pin...@xharbour.com> escreveu:

> De: Ron Pinkas <ron.pin...@xharbour.com>
> Assunto: Re: [xHarbour-developers] Proposal for HB_IS_NUMERIC.
> Para: "Eduardo Fernandes" <modals...@yahoo.com.br>, "Xharbour-Developers 
> List" <xharbour-developers@lists.sourceforge.net>
> Data: Sexta-feira, 6 de Novembro de 2009, 9:25
> Eduardo,
> 
> What makes no sense to a programmer can be IGNORED by THAT
> programmer. Using a char value as numeric makes LOTs of
> sense to many, especially those that programs with other
> languages. Either way this is a documented feature which has
> been available for many years. Therefore we can't simply
> remove it and break existing code.
> 
> Ron
> 
> F.E. simple encoding
> 
> sString   := "Hello"
> sCoded := ""
> 
> FOR EACH cChar IN sString
>   sCoded += Str( cChar, 3 )
> NEXT
> 
> Ron
> 
> --------------------------------------------------
> From: "Eduardo Fernandes" <modals...@yahoo.com.br>
> Sent: Thursday, November 05, 2009 5:56 PM
> To: "Xharbour-Developers List" <xharbour-developers@lists.sourceforge.net>;
> "Ron Pinkas" <ron.pin...@xharbour.com>
> Subject: Re: [xHarbour-developers] Proposal for
> HB_IS_NUMERIC.
> 
> > Ron,
> > 
> > I'm curious about what intention on application with
> these results:
> > 
> > str('a',10,2) -> '     97.00'
> > strzero('b',10) -> '0000000098'
> > padl("9","*",10) -> 42 spaces + "9"
> > padr("9","*",10) -> "9" + 42 spaces
> > padc("9","*",10) -> 20 spaces + "9" + 21 spaces
> > 
> > IMO, this can cause damage on the expected results,
> mainly from Clipper legacy applications.
> > 
> > I still think more prudent to separate this *feature*
> in HB_IS_NUMERIC_EXT and use it only on specific issues.
> > 
> > Please, consider it.
> > 
> > Eduardo
> > 
> > --- Em qui, 5/11/09, Ron Pinkas <ron.pin...@xharbour.com>
> escreveu:
> > 
> >> De: Ron Pinkas <ron.pin...@xharbour.com>
> >> Assunto: Re: [xHarbour-developers] Proposal for
> HB_IS_NUMERIC.
> >> Para: "Eduardo Fernandes" <modals...@yahoo.com.br>,
> "Xharbour-Developers List" <xharbour-developers@lists.sourceforge.net>
> >> Data: Quinta-feira, 5 de Novembro de 2009, 17:48
> >> Eduardo,
> >> 
> >> > So, we could review all string functions like
> str(),
> >> strzero(), pad(), etc, that call HB_IS_NUMERIC(),
> >> HB_IT_NUMERIC or ISNUM() to maintain, at least,
> expected
> >> results or run time error, if any argument is
> inverted or
> >> with any data type changed.
> >> >
> >> > f.e.:
> >> >
> >> > ? str("a",10,2)
> >> > ? strzero("b",10)
> >> > ? padl("9","*",10)
> >> > ? padr("9","*",10)
> >> > ? padc("9","*",10)
> >> 
> >> Please note that it is absolutely VALID CODE to
> pass a
> >> single char as a NUMERIC value. I have lot's of
> such code
> >> intentionally. It would therefore be wrong to
> break a
> >> documented feature which has been working for
> years.
> >> 
> >> Ron
> >> 
> > 
> > 
> > 
> >
> ____________________________________________________________________________________
> > Veja quais são os assuntos do momento no Yahoo!
> +Buscados
> > http://br.maisbuscados.yahoo.com
> > 
> 


      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
xHarbour-developers mailing list
xHarbour-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xharbour-developers

Reply via email to