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,f17381a34283299 X-Google-Attributes: gid103376,public From: "Nick Roberts" Subject: Re: Enumeration I/O Date: 1998/02/10 Message-ID: <01bd3645$3e8b45c0$LocalHost@xhv46.dial.pipex.com>#1/1 X-Deja-AN: 323791937 Content-Transfer-Encoding: 7bit References: <34DF9BBF.9FEA859B@er.uqam.ca> Keywords: abstraction Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Organization: UUNet UK server (post doesn't reflect views of UUNet UK) Newsgroups: comp.lang.ada Date: 1998-02-10T00:00:00+00:00 List-Id: Quite possibly, the simplest solution to your problem is to declare subtype Symbol is Character; instead of type Symbol is (...); This way, you lose the 'abstraction', but you gain convenience! Now all you need is with Ada.Text_IO; use Ada.Text_IO; ... Symb: Symbol; begin ... Put(Symb); Easy huh? Many might contend with me on this. I'm a big fan of abstraction, make no mistake, but I do think sometimes it is used when it is not really appropriate. In this case, whether my approach is right or wrong really depends on what the type (strictly, the subtype) 'Symbol' is going to be used for. -- == Nick Roberts ================================================ == Croydon, UK =========================== == ================ == Proprietor, ThoughtWing Software ========== == Independent Software Development Consultant ====== == Nick.Roberts@dial.pipex.com ==== == Voicemail & Fax +44 181-405 1124 === == == == I live not in myself, but I become == === Portion of that around me; and to me == ==== High mountains are a feeling, but the hum == ======= Of human cities torture. =========== -- Byron [Childe Harold] Melanie Shatilla wrote in article <34DF9BBF.9FEA859B@er.uqam.ca>... > Hi, > > I'm in my second semester of Computer Science and I hope someone can > help me solve a very basic problem, for which I can't seem to find a > solution to in any of my textbooks : > > I've declared an enumeration type with character literals, and a > variable of this type, for example : > TYPE Symbols is ('%', '$', 'a'); > Symb : Symbols := '$'; > > package Symbols_IO is new Text_IO.Enumeration_IO(Symbols); > > When I give the instruction : > Symbols_IO.Put(Symb); > > ...I get the right symbol but with the quotes (and I don't want them). > Obviously, I've thought of writing something like : > > If Symb = '$' then > Text_IO.Put ('$'); > end if; > > ..but there must be a more convenient way, I hope! Any suggestions > anyone ?