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!news.eternal-september.org!.POSTED!not-for-mail From: Paul Rubin Newsgroups: comp.lang.ada Subject: Re: Dynamic type system for Ada Date: Tue, 24 Jan 2017 21:41:43 -0800 Organization: A noiseless patient Spider Message-ID: <874m0nlmqw.fsf@nightsong.com> References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx02.eternal-september.org; posting-host="3da783a73a7d5058c39a6405fef38cb4"; logging-data="24707"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/byRZATKC2HlXbteeKFZyL" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) Cancel-Lock: sha1:GKRBrZlkmoG2yA1HwLJD49+igwM= sha1:Aq26nT3TBeRLsH8uVr1bsPnImVk= Xref: news.eternal-september.org comp.lang.ada:33150 Date: 2017-01-24T21:41:43-08:00 List-Id: Victor Porton writes: > Due to pure curiosity, I ask: Has anybody developed a dynamic type system > for Ada? That's not so easy. You have to be able to wrap an arbitrary Ada object in another object, along with a tag saying what the Ada type is. That means you have to be able to encode every Ada type into a tag, and types can be quite complicated (maybe arbitrary tree structures even). Also the compiler might or might not have a way of telling the runtime what type something has. There is something like this in Haskell called Data.Dynamic, but they had to add special features to the compiler and runtime to support it.