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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: "G.B." Newsgroups: comp.lang.ada Subject: Re: Running a preprocessor from GPS? Date: Thu, 30 Jul 2015 16:11:26 +0200 Organization: A noiseless patient Spider Message-ID: References: <2df4698f-4c8e-457c-822d-209cb2f8ab5e@googlegroups.com> <014427b1-ff7a-4a69-82e6-0330af77ed96@googlegroups.com> <91f88d79-197c-419f-84a8-908e05967a2c@googlegroups.com> <135c2b00-d13c-4f5d-a586-8aca442d363b@googlegroups.com> <87380683vc.fsf@adaheads.sparre-andersen.dk> <347c6be9-c918-4bc0-9494-c93cd6740def@googlegroups.com> Reply-To: nonlegitur@futureapps.de Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 30 Jul 2015 14:09:52 +0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="b96887e80893c84a90c3007226ca0d1c"; logging-data="29075"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/rkF1OEbf/l+9nzrHOyW5t0kucCBvPCcY=" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 In-Reply-To: Cancel-Lock: sha1:+q3oGAiDVQ7zeHYreAvTsph2brU= Xref: news.eternal-september.org comp.lang.ada:27212 Date: 2015-07-30T16:11:26+02:00 List-Id: On 30.07.15 14:15, EGarrulo wrote: > Now, I think that if a > language is conceptually sound, then it shouldn't take long > to explain its core concepts, don't you agree? Actually, I think there is a fallacy at work here. Conceptually sound only if quickly explained? Like C++, Ada has sets of core concepts, and their integration. It shares this property with other bigger languages. Exciting as it might be to see how everything in a language can be built on top of very few things, more so if one already knows the few things, the language designers did not choose to present everything in their language this way. Mathematics doesn't teach 1 + 2 from set theoretic definitions of 1 and 2, or even routinely perform "+" in this way; neither will languages like C++, or Ada, do the equivalent. That is, they all offer higher abstractions, and also their integration. Both need some learning (and unlearning). (As regards learning, consider how the computational power of C++ templates was discovered only after the fact; they were not quickly explained and understood at all!) This was addressed by Jean Ichbiah in his 1984 interview. He said, IIRC, that if two guys sitting in the corner do not understand everything of a bigger language at once, that doesn't mean that the language is unsound, or useless, or unmaintainable, or whatever. (It seems likely that the two guys' last names were among Hoare, Dijkstra, and Wirth.)