Computer-Related Philosophy Question

Discuss anything interesting but not remotely Countdown-related here.

Moderator: Jon O'Neill

Post Reply
David O'Donnell
Series 58 Champion
Posts: 2010
Joined: Mon Jan 21, 2008 2:27 pm
Location: Cardiff

Computer-Related Philosophy Question

Post by David O'Donnell »

I am currently researching the idea of incommensurable language games and came across an interesting correlation with computer programming languages. However, I lack the technical know-how to trust this correlation so thought I'd post it here and get some clarification.

Does each computer language follow it's own rules, rules which are inherent to the language itself?

Also, is there no universal (or hope of constructing one) meta-language that can translate one computer language to another?
User avatar
Charlie Reams
Site Admin
Posts: 9494
Joined: Fri Jan 11, 2008 2:33 pm
Location: Cambridge
Contact:

Re: Computer-Related Philosophy Question

Post by Charlie Reams »

David O'Donnell wrote: Does each computer language follow it's own rules, rules which are inherent to the language itself?

Also, is there no universal (or hope of constructing one) meta-language that can translate one computer language to another?
I'm not sure I totally understand the question, but all programming languages are essentially equivalent, in that they can compute exactly the same things ( see http://en.wikipedia.org/wiki/Turing_machine ). In that sense all languages can be automatically translated to one another.
David O'Donnell
Series 58 Champion
Posts: 2010
Joined: Mon Jan 21, 2008 2:27 pm
Location: Cardiff

Re: Computer-Related Philosophy Question

Post by David O'Donnell »

Charlie Reams wrote:
David O'Donnell wrote: Does each computer language follow it's own rules, rules which are inherent to the language itself?

Also, is there no universal (or hope of constructing one) meta-language that can translate one computer language to another?
I'm not sure I totally understand the question, but all programming languages are essentially equivalent, in that they can compute exactly the same things ( see http://en.wikipedia.org/wiki/Turing_machine ). In that sense all languages can be automatically translated to one another.
Yeah sorry, I haven't formulated it very well. It really comes from Lyotard discussing the role of language in postmodern society.

‘phonology and theories of linguistics, problems of communication and cybernetics, modern theories of algebra and informatics, computers and their languages, problems of translation and the search for areas of compatibility among computer languages, problems of information storage and data banks, telematics and the perfection of intelligent terminals, paradoxology.’

I suppose I am wondering if these problems of translation between computer languages are as prevalent as Lyotard maintains?
User avatar
Charlie Reams
Site Admin
Posts: 9494
Joined: Fri Jan 11, 2008 2:33 pm
Location: Cambridge
Contact:

Re: Computer-Related Philosophy Question

Post by Charlie Reams »

A computer can only execute programs in one language (its own assembly language). Any other language must be translated into that assembly language in order to be executed, and the reverse translation is also possible (although rare), so one can imagine the assembly language as a kind of lingua franca between all other languages and in that sense they are all inter-translatable.
Peter Mabey
Kiloposter
Posts: 1123
Joined: Sat Mar 01, 2008 3:15 pm
Location: Harlow

Re: Computer-Related Philosophy Question

Post by Peter Mabey »

The question then can be posed - is a meta-assembly language possible? As I found it wasn't difficult to pick up the assembly language for a totally different machine after learning my first one, that seems quite likely.
Job control language is another matter, as I discovered on encountering IBM's counter-intuitive version. :(
User avatar
Charlie Reams
Site Admin
Posts: 9494
Joined: Fri Jan 11, 2008 2:33 pm
Location: Cambridge
Contact:

Re: Computer-Related Philosophy Question

Post by Charlie Reams »

Peter Mabey wrote:The question then can be posed - is a meta-assembly language possible? As I found it wasn't difficult to pick up the assembly language for a totally different machine after learning my first one, that seems quite likely.
I'm not sure what you mean by meta-language, but any assembly language can be translated into any other via some intermediate representation (Turing machine, register machine, lambda calculus, SK combinators etc). Any assembly language which could express something that could not be translated to any of those would break the widely-believed strong Turing hypothesis (that the universe is itself a Turing machine); any assembly language into which an arbitrary TM program could not be translated would be extremely weak and would probably not meet many people's definition of a computer. So they're all essentially equivalent.
Peter Mabey
Kiloposter
Posts: 1123
Joined: Sat Mar 01, 2008 3:15 pm
Location: Harlow

Re: Computer-Related Philosophy Question

Post by Peter Mabey »

I'm not a computer scientist, just a long-retired software engineer (CITP, CEng) :), so may not be using the term in a technically correct way. What I understood by a meta-language was one for studying the common features of assembly languages at that level, without going down to the fundamentals, but on further consideration it might not shed further on the original question asked.
Post Reply