[SG16-Unicode] [isocpp-direction] DG answer to the Unicode Direction paper (P1238R0)

Hubert Tong hubert.reinterpretcast at gmail.com
Thu Jan 24 06:39:06 CET 2019


On Thu, Jan 24, 2019 at 12:01 AM Tom Honermann <tom at honermann.net> wrote:

> On 1/21/19 11:06 PM, Hubert Tong wrote:
>
> On Wed, Jan 9, 2019 at 11:21 PM Tom Honermann <tom at honermann.net> wrote:
>
>> The constraint I'd most like feedback on is 1.1 (The ordinary and wide
>> execution encodings are implementation defined).  If Microsoft were to
>> support use of UTF-8 as the execution encoding (something they are making
>> steps towards), it may be conceivable that we could standardize the
>> execution encoding as UTF-8 and have that actually reflect existing
>> practice (implementations would presumably continue to offer support for
>> legacy encodings as an extension).  However, this would leave some
>> platforms behind; z/OS being the primary example.  z/OS continues to
>> maintain a significant presence in the industry (as I understand it, good
>> numbers are hard to find), but IBM has not been keeping up with C++
>> standards.  Some guidance regarding how to think about platforms that are
>> not keeping up with the standard would be appreciated.
>>
> IBM offers C++11 compilers compiling EBCDIC applications from EBCDIC
> source on z/OS. IBM also produces offerings of applications based on LLVM
> on z/OS, which would necessitate advances in the C++ support on the
> platform. Note that one of the advantages C++ has on z/OS over Java is that
> it is capable of communicating with the EBCDIC-based libraries and system
> services without a translation layer. If "C++ leaves no room for another
> language between itself and the hardware", then C++ for z/OS would have
> EBCDIC execution character sets.
>
> As best I've been able to tell, IBM offers two C++ compilers for z/OS:
>
>    - z/OS XL C/C++ [1].  The latest version is 2.3 released in September
>    2017.  This release includes some, but not all, features of C++11.  I've
>    heard rumors that IBM internally has a C++11 compliant version of this
>    compiler that is not publicly available (due to ABI differences with the
>    publicly released version), but I don't know if that is true.
>    - njsc/njsc++.  This compiler is included with the IBM SDK for
>    Node.js.  I've so far been unable to find any documentation regarding this
>    compiler; just statements in the accessible Node.js SDK docs indicating its
>    existence and that it has C++11 language support.
>
> I've also found hints [2] that IBM has internally ported LLVM and Clang to
> z/OS as part of its Swift effort.  For all I know, the njsc/njsc++ compiler
> could be related to this LLVM/Clang port.
>
> I've been unable to find any evidence of IBM working towards providing a
> C++14 or C++17 (or C++20) compliant compiler for z/OS.
>
> It appears that Dignus, LLC provides a C++14 compiler [3] for z/OS based
> on LLVM.  The latest version of their compiler, Systems/C++, is 2.10
> released in July of 2017.  Their website doesn't indicate whether or when a
> new release should be expected.
>
> I find the above a bit bleak.  If IBM isn't going to invest in supporting
> current and future C++ standards, then I find it unnecessary for the C++
> standard to continue supporting implementation variances that are
> particular to z/OS; particularly when removing such variances could bring
> benefits for all other implementations.  I'm sure you can't comment
> publicly on internal IBM product plans, but is there something that can be
> said about the prospect for C++ compilers on z/OS that implement the latest
> standards?
>
I expect that some lag will continue to be present, but no intention to
increase the lag. All I can say is that IBM is investing in supporting
today's C++ standards (and my participation on the committee should be
evidence that IBM is investing in future C++ standards).

> Tom.
>
> [1]: https://www.ibm.com/us-en/marketplace/xl-cpp-compiler-zos
> [2]:
> https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20170508/004572.html
> [3]: http://www.dignus.com/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.open-std.org/pipermail/unicode/attachments/20190124/46c4a44a/attachment.html 


More information about the Unicode mailing list