Note that programs in a programming language don't need to be written down as text, there are programming languages that use graphs instead. So anything that restricts programming languages to text is not a formal, rigorous description of a programming language.
Note that for many text-based programming languages, the set of programs in the language cannot ...
A programming language is one which can be encoded by a formal system; for example, through a Backus-Naur form which is a common technique for describing context-free grammars.
However, I'd say, it is only a potential programming language until there is hardware that can interpret and run it. At bottom this is a Turing machine. Theoretically speaking, we can ...
Look what I found https://en.wikipedia.org/wiki/Programming_language
A programming language is a formal language comprising a set of
instructions that produce various kinds of output. Programming
languages are used in computer programming to implement algorithms.
I think it is very hard to give a definition that is both general, formal, and not too general. And I don't think I've seen any attempts. Nevertheless, here is an attempt at a mathematical definition.
A programming language consists of a set of programs $P$ such that each element of $P$ is finite and for each element $p$ of $P$ there is triple $m(p) = (I,O,...
To taper expectations a little bit, I will first note that the term "programming language" is deliberately broad: it is intended to be open to some interpretation. It means, no more and no less, any convention that is used for describing instructions for computers to execute. This includes, for example, not just C++ and Python, but also things like ...
The specific CS topic resolving the question is:
A detailed article explaining a related DSL is:
IceDust: Incremental and Eventual Computation of Derived Values in Persistent Object Graphs