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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8de933d44255f226 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Q: unboxed values and polymorphism Date: 1996/06/15 Message-ID: #1/1 X-Deja-AN: 161031997 references: organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-06-15T00:00:00+00:00 List-Id: Hannes asks "I'm new to Ada and have a questions on polymorphism. The standard way to have polymorphism in Ada are tagged records. But for my needs this requires too much space. List cells would have a size of 3 words instead of 2. I'd also have to put integers in records. This would require too much time and space. I'd like to convert access values to integers and do my own tagging. I could simply translate my C code. But it would be nice to see how an experienced Ada programmer would do this in Ada. Can I find some code that does this somewhere ?" Use variant records. This is a very standard technique which you can find described in any standard Ada text book, I would recommend Barnes. Translating your C code would surely result in a horrible montrosity! No respectable Ada programmers would convert access values to integers except for very special low level purposes.