C wasn’t the first standardised coding language, FORTRAN & COBOL at least were before
it,
so there were multi-platform source libraries and shared source, though often single
platform.
From what I know, vendor extensions of FORTAN, optimised for their hardware, were common,
making high-performance, portable source difficult or impossible. 6-bit and 8-bit chars
were the least of it.
Is this right:
C was the first ’systems tool’ language + libraries available across many platforms.
Notionally, source code could be ported with zero or minimal change.
It made possible portable languages like PERL, PHP, Python.
[ then came the "Tower of Babel" requiring tools like ‘autoconf’ ]
C became a bootstrapping environment for other portable languages & tools, e.g. C++
& Golang.
Secondly, portable systems tool languages with a common 2-part design
of parser/front-end providing an abstract syntax tree
to multiple back-ends with platform specific code-generators.
Are these back-ends where most of the assembler, memory model and instruction optimisation
take place now?
On 6 Jul 2024, at 09:17, John Levine
<johnl(a)taugh.com> wrote:
Back in the day getting a program to act the same on different
computers, was really hard, with the switch from IBM 7090 (36 bit word
addressed binary floating point) to IBM 360 (32 or 64 bit byte
addressed hex floating point) the most famous example. These days we
write code and compile it for x64 or ARM or RISC-V and for the most
part, it just works because the data formats and addressing are all
the same.
--
Steve Jenkin, IT Systems and Design
0412 786 915 (+61 412 786 915)
PO Box 38, Kippax ACT 2615, AUSTRALIA
mailto:sjenkin@canb.auug.org.au
http://members.tip.net.au/~sjenkin