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!mx02.eternal-september.org!.POSTED!not-for-mail From: "J-P. Rosen" Newsgroups: comp.lang.ada Subject: Re: Build language with weak typing, then add scaffolding later to strengthen it? Date: Tue, 26 May 2015 15:39:06 +0200 Organization: A noiseless patient Spider Message-ID: References: <127b004d-2163-477b-9209-49d30d2da5e1@googlegroups.com> <59a4ee45-23fb-4b0e-905c-cc16ce46b5f6@googlegroups.com> <46b2dce1-2a1c-455d-b041-3a9d217e2c3f@googlegroups.com> <3277d769-6503-4c7f-885f-3a730762b620@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Injection-Date: Tue, 26 May 2015 13:37:56 +0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="23dab0694e4174fdc880833ec67fa650"; logging-data="1041"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Hrc7oKo/p15qDo81R78zy" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 In-Reply-To: Cancel-Lock: sha1:iIsoDoMPDjGTPRmxGD1Mvm9GGUE= Xref: news.eternal-september.org comp.lang.ada:26009 Date: 2015-05-26T15:39:06+02:00 List-Id: Le 26/05/2015 14:36, Simon Clubley a écrit : > When I was thinking about the possibility of a half-way language between > C and Ada (I was thinking about something safer than C which wasn't as > heavyweight as Ada) the above was the list of things I came up with > which was missing from Oberon. (my collection of features was just to stress that the "17 pages" didn't mean a simpler language, only an incomplete an mostly undefined language - which reminds me of another good one: BYTE is compatible (both ways) with INTEGER, but there isn't a single word to tell what happens when you convert to BYTE a value outside 0..255) Now to your point. I've seen people wanting a "simpler Ada" ever since I attended the first presentation of the language by JDI in 1979... But things rapidly get tied together. You want user defined integer types, and no magic for IOs? Then you'll need packages and generics. Safe IOs also require exceptions. And you certainly want aggregates, because they are sooo convenient. The only things that could be detached are tasking and OOP. Of course not having the latter would be highly politically incorrect, which leaves us only with tasking. And this is not the hardest part to implement. (Note on the examples I took: in a previous life, I worked on an Ada83 compiler. It took me much more time to implement code generation for array aggregates than the whole design and implementation of the tasking system). -- J-P. Rosen Adalog 2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX Tel: +33 1 45 29 21 52, Fax: +33 1 45 29 25 00 http://www.adalog.fr