From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Exclusive file access
Date: Sun, 30 Aug 2015 14:44:46 +0200
Date: 2015-08-30T14:44:46+02:00 [thread overview]
Message-ID: <mvil865iebyb$.1of2shk5faacq$.dlg@40tude.net> (raw)
In-Reply-To: 87oahpovpn.fsf@mid.deneb.enyo.de
On Sun, 30 Aug 2015 13:35:16 +0200, Florian Weimer wrote:
> * Dmitry A. Kazakov:
>
>> No, I meant Wide_Wide_String.
>>
>> Ada's Wide_String is legally UCS-2. Windows is UTF-16. The only full
>> Unicode string type is Wide_Wide_String. For an Indo-European language
>> there is no difference, of course.
>
> GNAT's Wide_String should be compatible with UTF-16.
In the sense that Wide_String is an array of 0..2**16-1 units of the
endianness compatible to UTF-16, yes. However the standard is silent about
endianness and alignment (a DSP processor might deploy 32-bit units per
unit)
Semantically no. Wide_String according to RM 3.5.2 (3/3) represents a
narrower set of Unicode than UTF-16.
> Wide_Wide_String definitely is not.
Definitely is. Both are to represent arrays of same sets of Unicode
characters. The representation of Wide_Wide_String is of course irrelevant
when used to specify an external file name, right?
>> Under Linux most applications simply ignore Ada standard and use String
>> encoded in UTF-8. I suppose that under Linux GNAT calmly passes String file
>> names as-is, i.e. as UTF-8 [*].
>
> I think GNAT just passes around bytes, it does not care if it's UTF-8
> or a legacy encoding.
Yes, which is clearly against RM 3.5.2 (2/3) as the example illustrates.
The point is that the behavior one would imply from 3.5.2 and Ada.Text_IO
specification would be useless.
> As long as you don't use Wide_String—if you do use that, things get rather messy.
Both are messy. Character and Ada.Text_IO was designed prior to Unicode.
Later amendments were futile attempts to repair what needed no repair.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2015-08-30 12:44 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-27 13:52 Exclusive file access ahlan
2015-08-27 14:27 ` gautier_niouzes
2015-08-31 23:20 ` Randy Brukardt
2015-09-01 16:23 ` Pascal Obry
2015-09-01 20:48 ` Randy Brukardt
2015-08-27 14:42 ` Björn Lundin
2015-08-27 14:48 ` G.B.
2015-08-27 15:08 ` Björn Lundin
2015-08-27 18:38 ` tmoran
2015-08-27 23:16 ` Georg Bauhaus
2015-08-27 23:29 ` Pascal Obry
2015-08-28 7:25 ` Georg Bauhaus
2015-08-27 15:15 ` ahlan
2015-08-27 18:29 ` Jeffrey R. Carter
2015-08-28 5:41 ` ahlan
2015-08-28 7:10 ` Georg Bauhaus
2015-08-28 17:40 ` ahlan
2015-08-28 19:49 ` Anh Vo
2015-08-28 21:06 ` Simon Wright
2015-08-28 21:38 ` Jeffrey R. Carter
2015-08-29 7:05 ` Dmitry A. Kazakov
2015-08-29 8:31 ` Pascal Obry
2015-08-29 12:02 ` Dmitry A. Kazakov
2015-08-30 11:35 ` Florian Weimer
2015-08-30 12:44 ` Dmitry A. Kazakov [this message]
2015-08-30 19:37 ` Florian Weimer
2015-08-31 7:22 ` Dmitry A. Kazakov
2015-08-31 21:12 ` Florian Weimer
2015-09-01 7:26 ` Dmitry A. Kazakov
2015-09-07 18:27 ` Florian Weimer
2015-09-07 19:06 ` Dmitry A. Kazakov
2015-09-11 16:54 ` Florian Weimer
2015-08-31 23:34 ` Randy Brukardt
2015-09-01 7:33 ` Dmitry A. Kazakov
2015-08-29 16:07 ` gautier_niouzes
2015-08-29 17:12 ` Dmitry A. Kazakov
2015-09-01 12:37 ` brbarkstrom
2015-09-01 14:05 ` ahlan
2015-09-01 15:13 ` Simon Wright
2015-09-01 20:36 ` Randy Brukardt
2015-09-01 15:17 ` Jacob Sparre Andersen
2015-09-01 20:37 ` Randy Brukardt
2015-09-01 16:05 ` G.B.
2015-09-01 20:02 ` brbarkstrom
2015-09-01 21:17 ` Simon Wright
2015-09-05 15:52 ` Björn Lundin
2015-09-01 20:31 ` Randy Brukardt
2015-09-01 15:31 ` ahlan
2015-09-05 15:56 ` Björn Lundin
2015-09-06 17:38 ` brbarkstrom
2015-09-06 19:52 ` Björn Lundin
2015-09-07 15:18 ` brbarkstrom
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox