No, such a language cannot exist.
Programming can solve many different kinds of problems.
One particular kind of problem it can solve is computing a function from input values to output values. The program will read an input value and produce the output value defined for that input value by that function. For this type of problem, the problem definition is given by some sort of specification of the input-output function.
I think you will agree that we don't want to restrict ourselves to problems that only accept finitely many different input values. For instance, we want to be able to define the problem that takes an arbitrary integer and outputs its value squared. We can only do that if we allow any integer to be an input value.
Furthermore, we don't want to restrict ourselves in the kind of input-output function we can define.
A pretty fundamental result in computability theory says that for any language capable of describing all such functions, it is undecidable whether two descriptions of functions in that language describe the same function. Which directly answers your question.
What is more, it is undecidable even for heavily restricted classes of input-output functions. Consider, for instance, the set of functions with the following properties:
- All input values are strings from some given alphabet of at least two characters; for instance, strings built out of the characters
- All output values are either yes or no.
- The set of input values for which the output value is yes is always a context-free language.
No matter which language you design for describing these functions, deciding whether two descriptions describe the same function is undecidable, as equivalence of context-free languages is undecidable.