From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on ip-172-31-91-241.ec2.internal X-Spam-Level: X-Spam-Status: No, score=0.0 required=3.0 tests=none autolearn=ham autolearn_force=no version=4.0.1 Path: nntp.eternal-september.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: In precision typing we trust Date: Sun, 31 Aug 2025 11:26:30 +0200 Organization: A noiseless patient Spider Message-ID: <10914g7$34d8f$3@dont-email.me> References: <107uv9g$3019a$1@dont-email.me> <107v1ji$303of$1@dont-email.me> <336fbb5f-a279-ea8e-67fd-f62bb00d6a89@irrt.De> <107vfb9$34cpj$1@dont-email.me> <10855lq$gj8l$1@dont-email.me> <1088h1a$19635$1@dont-email.me> <1089p1i$1ig1d$1@dont-email.me> <108aq2p$1qo9o$1@dont-email.me> <108b1r3$1sj3c$1@dont-email.me> <108dh4t$2f5h3$2@dont-email.me> <108dkik$2g20p$1@dont-email.me> <108g1cg$32gqg$2@dont-email.me> <108h6b0$3a75k$2@dont-email.me> <108iiq5$3lihe$3@dont-email.me> <108mhhk$j2jt$1@dont-email.me> <108mis1$j4cj$1@dont-email.me> <108o33p$vok4$5@dont-email.me> <108o6rp$10njb$1@dont-email.me> <108o7cm$10qct$1@dont-email.me> <108o845$10pj9$3@dont-email.me> <108p65h$17vk1$1@dont-email.me> <108p8bi$16qn1$6@dont-email.me> <108r89p$1osg9$4@dont-email.me> <108rnjs$1rkon$3@dont-email.me> <108vtpa$2sngv$2@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sun, 31 Aug 2025 09:26:32 +0000 (UTC) Injection-Info: dont-email.me; posting-host="15ca0f2de6af3f69767d32890f410388"; logging-data="3290383"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/R6qGfhiZIx85q4EEZXAYktuXtQki1y/M=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:VgG1R0ezvbRdoVanmp88Jktcgkw= In-Reply-To: <108vtpa$2sngv$2@dont-email.me> Content-Language: en-US Xref: feeder.eternal-september.org comp.lang.ada:67010 List-Id: On 2025-08-31 00:25, Lawrence D’Oliveiro wrote: > On Fri, 29 Aug 2025 10:15:56 +0200, Dmitry A. Kazakov wrote: > >> On 2025-08-29 05:54, Lawrence D’Oliveiro wrote: >>> >>> On Thu, 28 Aug 2025 11:43:15 +0200, Dmitry A. Kazakov wrote: >>> >>>> In Python everything is untyped even when type annotations are used. >>> >>> Python 3.13.7 (main, Aug 20 2025, 22:17:40) [GCC 14.3.0] on linux >>> Type "help", "copyright", "credits" or "license" for more information. >>> >>> 2 + "2" >>> Traceback (most recent call last): >>> File "", line 1, in >>> 2 + "2" >>> ~~^~~~~ >>> TypeError: unsupported operand type(s) for +: 'int' and 'str' >> >> "+" is implemented to raise an exception named TypeError. So? How is >> that a type check? > > You mean it doesn’t do type checking in Ada?? I mean that no type check is made in Python. Naming exception TypeError does not mean type error. >> How do I know if that happens without executing "+"? > > Look at the definitions of the classes involved. What "look" does formally mean and why Python didn't do it? >> It is just untyped as no types of "+" are specified anywhere. > > They are in the classes that implement that operator. Can you list them? No? Then see above "no types of "+" are specified anywhere." >> It is an undefined behavior ... > > It is defined in the classes that implement that operator. q.e.d. It is undefined in the classes that do not implement that operator => On all classes it is undefined. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de