X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Message-ID: From: Mike Marchywka To: Subject: RE: cygwin g++ strictness Date: Thu, 6 Nov 2008 16:14:08 -0500 In-Reply-To: <490C4B7D.9000602@bmts.com> References: <490A30C8 DOT 5000107 AT sh DOT cvut DOT cz> <001601c93b31$a961b940$4001a8c0 AT mycomputer> <003e01c93b42$e92a17a0$4001a8c0 AT mycomputer> <490AE8A0 DOT 8090009 AT sh DOT cvut DOT cz> <001a01c93b4d$617de150$4001a8c0 AT mycomputer> <490AF1E3 DOT 3020308 AT sh DOT cvut DOT cz> <007401c93b56$ebcfa510$4001a8c0 AT mycomputer> <490B0084 DOT 1070803 AT sh DOT cvut DOT cz> <008a01c93b5a$9338d300$4001a8c0 AT mycomputer> <490B078B DOT 9030007 AT byu DOT net> <20081031135011 DOT GB15518 AT calimero DOT vinschen DOT de> <490B21E9 DOT 80807 AT lysator DOT liu DOT se> <011601c93b6e$49bbb710$4001a8c0 AT mycomputer> <490B268D DOT 3010801 AT byu DOT net> <490C4B7D DOT 9000602 AT bmts DOT com> Content-Type: text/plain; charset="iso-8859-1" MIME-Version: 1.0 X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id mA6LFJMS002363 > From: marchywka AT whithouse DOT gov > To:> Subject: RE: cygwin g++ strictness > Date: Sat, 1 Nov 2008 10:05:54 -0400 > > > > >> >>>> It is not portable to platforms with 16-bit int (although >>>> these days, such platforms are museumware). >>> >>> That, or: >>> - Running your car's engineware. >>> - Exploding an airbag into your face on detecting a collisionware. >>> - Recording your vital signsware. >>> - Pumping insulin into youware. >>> - Doing your laundyware >>> - Computerized exercise machinewear >>> - Microwaveware >>> - A billion other products with 8- and 16-bit microcontrollers in themware. >>> > If anyone wants to pursure this further, there are real devices like this and AFAIK the mfg's still keep data sheets and app notes online, FWIW, http://autoelectronics.com/news/lead-story/ti_launches_mcus_1105/index.html > These "resource constrained" devices are important to remember as even desktop > computers have limitations - and desktop programmers, from > what I can see in how Flash and Acrobat function, often forget this. > >>> CSci doesn't begin and end with the CPU currently on our desks! >> >> Thanks for reminding everyone that GCC is used for more than building >> desktop software. And to bring this around to Cygwin again, I've been >> using GCC for ARM under Cygwin for a few years now to build my Lua >> for the LEGO MINDSTORMS NXT. >> >> Having been through the gauntlet porting C code from 8 to 16 to 32 bit >> machines, I've been bitten by almost every possible portability bug >> there is - and I agree with Gary > > Having been raised on the Z80, I find it refreshing to write phone apps > and I still can't figure out how you write code that you just rebuild between > ARM and Pentium. > > >> >> Fix it the right way so that it's truly protable. > > The problem of course is that "your architecture may vary." > This is a qualitative as well as quantitative ( as in the case of MPG) > variation. Java is supposed to be the same on all platforms regardless > of hardware and even floating point should always be exactly the same. > Of course, in reality, your medical device and airbag care about time but > the diff output doesn't. > > Having ported an audio codec from java to various c++ targets, > I can assure this is usually more than just getting int size right. > > > As resources and constraints and objectives change, the implementation details > can effect best choice of algorithm making portable optimized code very difficult > ( this isn't just typedefs or picking up a few run time parameters). Existence > of a cache is one important detail, and maybe you could argue that a > computationally intensive app would never get ported from a desktop to a > Z80 but the point of portability to make it limp along correctly if anyone needed to try. > > > Remember, truely platform independent code would not need a platform > at all ( in fact, "independent" normally means "free of" or "unencumbered by" > not " need one of a list of things "). > > > >> > _________________________________________________________________ > Stay up to date on your PC, the Web, and your mobile phone with Windows Live. > http://clk.atdmt.com/MRT/go/msnnkwxp1020093185mrt/direct/01/ _________________________________________________________________ Get 5 GB of storage with Windows Live Hotmail. http://windowslive.com/Explore/Hotmail?ocid=TXT_TAGLM_WL_hotmail_acq_5gb_112008 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/