On 5/29/2020 4:06 PM, Paul Koning via cctalk wrote:

On May 29, 2020, at 4:25 PM, Norman Jaffe via cctalk <cctalk@classiccmp.org> 
wrote:

C is portable by design and runs on many architectures.
It doesn't need 512Kb of RAM and it doesn't depend on Unix.
Yes.  But the same is true for many languages.  Fortran is a particularly good 
example, but there are plenty of portable languages (Algol, Basic, LISP, 
Python, COBOL, Ada, RPG, ...).  Some more than C; for example, C doesn't like 
one's complement machines (though it has been ported to at least one) and 
things get somewhat interesting if the machine doesn't have byte addressing.

Since C aims to be a system implementation language, unlike Fortran or Basic or 
Algol, it tends to expose, or at least let you see, machine details.  That can 
get in the way of portability.  One small example is that C thinks address 0 is 
a null pointer rather than a valid pointer.  On modern systems that is true 
(partly because C says so) but on a PDP-11 it isn't.

        paul

At the risk of fanning the language fire, C seems to be a smaller step up from native machine language than most other languages.  It's like 80% of the portability with 20% of the effort of writing directly in ASM.

Jim

--
Jim Brain
br...@jbrain.com
www.jbrain.com

Reply via email to