[fpc-pascal] JSON and UTF8

Michael Van Canneyt michael at freepascal.org
Tue Jul 10 10:49:45 CEST 2012

On Tue, 10 Jul 2012, Ludo Brands wrote:

>> Because the old behaviour is not "buggy".
>> It simply did not support Unicode, and does the next best thing,
>> in casu: it transforms to the system codepage.
>> A car without ABS and SAT-Nav is not buggy.
>> It just doesn't support features which are nowadays called
>> standard. You can perfectly drive it.
> An old car without a seat belt is buggy although when it was built seat
> belts where not standard.

I still wouldn't call the car buggy. 
For me a car must be able to drive. That is its essential function.
If it doesn't start, or stops every 5 minutes, then it is buggy.
All the rest are options. Whether they are legally required or 
not is irrelevant to the car-ness of the car.

But I drive a motorcycle, so the point is moot ;-)

>> Just as Unicode is nowadays standard, N years ago, it was not.
>> Since backwards compatibility is very important, we must
>> offer the option.
> The Json standard specifies unicode. Why have utf8 default off?

For backwards compatibility by default.

> Old cars are retro-fitted with seat belts. Why sell new cars with seat belts
> as an option?

So you'd reverse the constructor boolean argument to specify Utf8 as default, 
and let the user choose the old behaviour if he needs it ?


More information about the fpc-pascal mailing list