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, MSGID_RANDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8309f2bc055237c4 X-Google-Attributes: gid103376,public From: gdemont@my-deja.com Subject: Re: Bit manipulation Date: 2000/11/09 Message-ID: <8ue031$gh7$1@nnrp1.deja.com>#1/1 X-Deja-AN: 691561558 References: <8u8v6n$b7o$1@nnrp1.deja.com> <2WTH$pdrCfOd@eisner.decus.org> <8ub6kt$6nd$1@nnrp1.deja.com> <8ubeq8$cgm$1@nnrp1.deja.com> <8ubld2$hdd$1@nnrp1.deja.com> <8udr5g$d6t$1@nnrp1.deja.com> X-Http-Proxy: 1.0 sitelnet.unine.ch:8080 (Squid/2.1.PATCH2), 1.0 x56.deja.com:80 (Squid/1.1.22) for client 130.125.13.23, 130.125.90.100 Organization: Deja.com - Before you buy. X-Article-Creation-Date: Thu Nov 09 10:59:47 2000 GMT X-MyDeja-Info: XMYDJUIDgdemont Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.74 (Macintosh; U; PPC) Date: 2000-11-09T00:00:00+00:00 List-Id: Sandro Binetti: > There are, IMHO, two different languages: > 1) the language used by hardware engineers > 2) the (O.O.) programming languages used by the software developpers > that should use the hardware devices sub 1) > The language sub 1) is, quite often, bit-manipulation oriented (mask > the 4 MSB to obtain XXX, shift twice leftmost in the register YYY to > set the device status in ZZZ mode, and so on ...) > > The language sub 2), say ADA, has to make an abstraction of these > hardware specifications, or, simply, use them? The 1)-2) hiatus is very classic because older languages did fit only for a part of computing (C for bits, Fortran for maths, Pascal for abstraction). The good news is that Ada covers 1) as well as 2). In addition, IHMO Ada95 offers more powerful (read: precise) tools for 1) than C, e.g. . > Is it correct, in a teamwork made of a lot of engineers and programmers > that exchange documentation each other, arbitrarily "upset" a bit- > oriented specification, given as a starting point for a subsequent > software developement, in order to "match" ADA high-level point of > view? Ideally the "low-level" engineers write their hardware/IO packages in Ada, the "high-level" ones write their maths, OO etc. in other packages also in Ada. Finally a "gnatmake the_big_project" to build the whole. In a funny domain you can see in my 3D sources (URL below - and sorry for the auto-advertisement...) an example of project where Ada covers all levels: (1) reprogramming keyboard interrupt, timer interrupt, drawing pixels for textured objects with heavy use of bit masking and shifting, (2) rendering, rotations, projections, management of "universes" and even (3) organizing interactive scenes (at this stage the Ada source ressembles to a script) and manipulating 3D models directly stored in large Ada constant arrays (instead of loading a VRML). The modularity of Ada allows to combine all levels quite easily. ____________________________________________________ Gautier -- http://members.nbci.com/gdemont/e3d.htm Sent via Deja.com http://www.deja.com/ Before you buy.