From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,LOTS_OF_MONEY autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!feeder4.usenet.farm!feed.usenet.farm!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!85.12.16.70.MISMATCH!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer04.fr7!futter-mich.highwinds-media.com!news.highwinds-media.com!fx03.fr7.POSTED!not-for-mail Subject: Re: Can Ada print coloured/styled text to the terminal? (ANSI escape sequences?) Newsgroups: comp.lang.ada References: <810948b7-1370-4c0d-aaf3-ed66b7dfbba5@googlegroups.com> From: Per Sandberg User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Message-ID: X-Complaints-To: abuse@usenet.se NNTP-Posting-Date: Wed, 08 Aug 2018 06:39:39 UTC Organization: usenet.se Date: Wed, 8 Aug 2018 08:39:38 +0200 X-Received-Bytes: 3547 X-Received-Body-CRC: 3536321156 Xref: reader02.eternal-september.org comp.lang.ada:54093 Date: 2018-08-08T08:39:38+02:00 List-Id: On 08/08/18 00:31, Randy Brukardt wrote: > "Per Sandberg" wrote in message > news:FS9aD.1212605$Vv2.679376@fx06.am4... > ... >> Yes these source-code libraries are strongly associated with GNAT, but >> most of the code is compilable with "any" ada-12 compiler without change >> and they are battle proven so whey not use them instead of reinventing the >> wheel. > > (1) There aren't any other full Ada-2012 compilers, so this is an empty > statement. Portable Ada code has to be in Ada 2005 at most. > (2) Code that is truly portable has to be have been compiled with multiple > Ada compilers. Every Ada compiler has bugs, and some of those bugs include > allowing too much. (Experience is that around 20% of new ACATS tests for > existing features fail on existing compilers; that seems pretty constant > regardless of whose compiler you are talking about. Errors of omission are > extremely difficult to detect.) > > You can't really know if you've used some feature that isn't supposed to be > legal until you've at least tried the code on other compilers. You also > can't easily see if you've unintentionally used compiler-specific stuff. > Most of the GNAT libraries I've looked at are full of 'Img and > 'Unrestricted_Access and similar non-Ada things. > (3) I personally only care about things that will compile with Janus/Ada > (90% of what I write starts there), and it is (intentionally) weird enough > that nothing much will work. For instance, Integer is 16-bit on Janus/Ada, > and that seems to break about 100% of outside code I try on it. > > Randy. > > > Randy, I think you put the finger on the problem with time, and that is that time implies change. And to require every newly written software to be compatible with every previous compiler does not work since that would mean freezing time. However to require new compilers to accept old code (sometimes with minor modification due to new keywords for example) is complete different story. And time still ticks with the Ada202x reference manual available as draft. Its exactly the same with C++ where we got C++98, C++03, C++11, C++14, C++17, and C++20 lurking in the shadows, where the where the main difference compared to Ada is that the pain to throw C++98-code on an C++19-compiler is huge whereas the pain to throw Ada83-code to Ada12-compiler is fairly negligible. And to throw C++17 code on an C++03 compiler is completely unthinkable. /Per