[fpc-pascal] FORTRAN from FreePascal

Mark Morgan Lloyd markMLl.fpc-pascal at telemetry.co.uk
Sun Nov 19 12:14:50 CET 2017

On 19/11/17 10:15, Adriaan van Os wrote:
> Mark Morgan Lloyd wrote:
>> That obviously applies to all languages, I've never come across > 
>> something which can represent 1/3 or pi exactly.
> If you do read what is written in the link - that is not the issue. The 
> issue is how to interpret floating-point constants and how to convert 
> single-precision floating-point to decimal. In BCD, that conversion is 
> exact.

I read the link before posting. You aren't going to represent 1/3 or Pi 
exactly in BCD either.

>> But FORTRAN- or rather > the way that people use it- has always seemed 
>> peculiarly sensitive, the > classic problem being that recompiling 
>> with the optimising variant of > the compiler produces significantly 
>> different results.
> This is nonsense too. The issue is whether to use IEEE-754 math or not. 
> And there are (or should be) compiler switches for that purpose. Not 
> just in Fortran.

Oh really? Well I'll let you travel back in time and argue with numerous 
former colleagues who've routinely found differences between their 
"fortran" (-IV, -77 or whatever) and "fast fortran" compilers which in 
those days tended to be separate programs even if supplied together.

I stick to my position: a "tidy" language (I'm not going to fall into 
the trap of using a word like "regular" here) generally results in a 
tidy compiler design, and that should go a long way towards avoiding 
implementation errors.

I think we're in broad agreement though: don't try converting backend 
code unless you know exactly what you're doing, and Pascal (including 
Lazarus/LCL etc.) can be valuable when implementing a C21st frontend :-)

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the fpc-pascal mailing list