new years resolutions

Cliff Wells clifford.wells at attbi.com
Sat Jan 4 13:56:57 EST 2003


On Sat, 2003-01-04 at 03:36, Pieter Nagel wrote:
> Peter Hansen wrote:
> > Mike Meyer wrote:
> 
> >>Personally, I think that insisting that programming languages be
> >>turing complete is a better definition
> ...
> > That's another definition and, as it's clearly more constraining,
> > possibly a more useful one.  It's not widely used, however,
> 
> Ahem. Which circles do *you* hang out in? :-)
> 
> Turing Completeness has been the one and only rigorous mathematicall 
> definition of "programming language" for *decades*, now.

Er, says who?  I thought that "Turing complete" described a *subset* of
programming languages.  

>From http://www.everything2.com/index.pl?node=turing%20complete

"""
Very small subsets of most programming languages are already
Turing-complete, on the condition that they can access arbitrary amounts
of memory. C, for instance, isn't, because it must address all memory
with pointers of a fixed size; but a variant that uses pointers of
arbitrary size would be trivial to define. 
"""

"""
Primitive recursive functions are not Turing complete: they cannot
express the Ackermann function. C and Pascal are Turing complete if
we're careful to ignore some details (e.g. a C implementation must use
pointers of some finite size sizeof(void *), implying it can only use
some finite amount of data). Real programming languages are Turing
complete only if we ignore the constraints of finiteness. 
"""

So, if C isn't a programming language, what is it?  I guess you'll need
to find a new definition of "programming language" at this point if you
want to remain a "programmer" <wink>


-- 
Cliff Wells <clifford.wells at attbi.com>






More information about the Python-list mailing list