HiveBrain v1.2.0
Get Started
← Back to all entries
patternMinor

Can you specify a programming language without implementation?

Submitted by: @import:stackexchange-cs··
0
Viewed 0 times
canwithoutyouprogramminglanguageimplementationspecify

Problem

Is it theoretically possible to specify a programming language for which no implementation could exist? A programming language is a way of defining functions. An implementation means a method to execute a given program in that language on a given input to the output of the function corresponding to the program on that input.

What is are the minimal requirements of such a language?

Solution

Usually, implementing a programming language is at least giving a interpreter in a language (or a compiler to a language) that is no more than Turing-complete.

Using this "definition" we can specify a programming language like this:

-
there only one possible program that is HALT;

-
specification of HALT: it is a function that solve the halting problem.

Implementing this programming language requires solving the halting problem with the implementation. (Which is impossible since our implementation should not be more powerful than a Turing machine).

Specification handles logic and thus can ask for a lot more. Another specification that will be impossible to implement is "false". (Or any contradictory sentence in the specification) But this does not feels like a specification, which is why I used the halting problem example.

Context

StackExchange Computer Science Q#2348, answer score: 7

Revisions (0)

No revisions yet.