El 05/10/2016 a las 19:47, Michalis Kamburelis escribió:
> 2016-10-05 9:00 GMT+02:00 Maciej Izak <hnb.c...@gmail.com>:
>> 2016-10-05 4:32 GMT+02:00 Michalis Kamburelis <michalis.ka...@gmail.com>:
>>> For example, the call
>>>
>>>   Format('%s', [123])
>>
>> I have a small hint (instead of answer). We have in mORMot / NewPascal in
>> SynCommons module nice function which works perfect in most of cases:
>>
>> FormatUTF8('%', [123], []); // same string '%' works for both: integer and
>> string values
>> FormatUTF8('%', ['123'], []);
>>
> That's a cool improvement. No need to write the type, so one less
> thing that can go wrong:) I seldom use non-standard formats anyway
> (like %g instead of %f for floats).

I don't agree. You are asking for a compile time check, but now you
accept skipping run time type check doing a automatic type conversion.
Things can go as wrong as with classic format but, without runtime error
or exception, hunting bugs is more difficult.  I support your first
idea: Compile time check.

I haven't understand very well whether Sven Barth's reluctance is a
matter of taste or whether there are serious technical reasons. If there
are not severe design drawbacks, I would go for it. I love compile time
checks. The more, the better.

-- 
Saludos

Santiago A.

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to