On 13 September 2014 11:00, Dr. David Kirkby (Kirkby Microwave Ltd) < [email protected]> wrote:
> 5) I do agree with much of what is written about portability and the > ***ing GNU compiler. People now write in "GNU C", which is a > constantly changing like the wind direction. > > I myself have tried to get bits of Sage working on obscure platforms, > with non GNU compilers, as I think it does aid portability. Maybe my > efforts achieved nothing beyond getting Sage working on Solaris, > though I suspect they have made porting to other platforms somewhat > easier. > I did not understand much the original point about GCC. My impression was that he was complaining that it is difficult to get recent versions of GCC and Clang *working* on older platforms. But it's a fact that starting from version 4.x GCC has become more and more strict about language standards (especially in C++ land), and that's a good thing. Likewise, Clang is famous for being even stricter. I agree with you though that the lack of portability is a problem. In my opinion not so much for the GNU-isms, though, but rather for the "smart" tricks that a lot of scientific code uses and which are technically implementation-defined or undefined behaviour. Stuff like assuming certain bit widths for the fundamental integral types, signed integer representation and overflow behaviour, floating-point representations, memory model (see tagged pointers), etc. etc. Writing standard-conforming code can be mind-numbingly tedious but it ensures a high degree of portability and reproducibility. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
