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 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: some trivial questions? Date: Thu, 02 Nov 2017 13:21:37 +0000 Organization: A noiseless patient Spider Message-ID: References: <6a5368c5-f015-4dcb-9291-e77b40fa1bf1@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: reader02.eternal-september.org; posting-host="0fa7ea1bac9b90178bbdedce2632fb1c"; logging-data="17465"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/HNzTMW2g0+cdrcrMM3JgDUv7DkpbZczE=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (darwin) Cancel-Lock: sha1:ldI1R7+IMj+cd8DcXf1EVD9l3qQ= sha1:JFeI1jegSJsZaCrY9i/Sa47s02A= Xref: news.eternal-september.org comp.lang.ada:48703 Date: 2017-11-02T13:21:37+00:00 List-Id: "Dmitry A. Kazakov" writes: > It is historically so and also there is a great unjustified sentiment > against "use" in Ada community. Have you ever tried to work out how GNAT does something from its internals? (I don't mean the libraries, but the compiler itself). AdaCore used to use the rename-package-as-abbreviation pattern a lot, package SSE renames System.Storage_Elements; which helped a little once you got used to the standard abbreviations. I did in fact work out that you can write a post-facto GPR to help explore the compiler's internals: e.g. project Gcc_8 is for Source_Dirs use ("gcc-8-20170528-build/gcc/ada", "gcc-8-20170528/gcc/ada"); for Object_Dir use "gcc-8-20170528-build/gcc/ada"; for Languages use ("Ada", "C"); end Gcc_8; (I'm not 100% sure this would work as-is with the latest structure, because the compiler itself uses the RTS, and the RTS sources are now in gcc/ada/lib{gnat,gnarl}).