2 ms·
If you use the same language to solve a problem as you use to describe the problem and to define success, then your ability to accurately solve the problem will
by michaelvkpdx 12y ago
If you use the same language to solve a problem as you use to describe the problem and to define success, then your ability to accurately solve the problem will be constrained by the level of precision that is available in the language being used.
Given this- natural language programming can hope to achieve reasonable levels of precision in very few languages. English, for example, has over a million words, while French and Italian are both under 100K. That 10x discrepancy in words means that there is necessarily far more imprecision in romance languages than English. Graamatical constructs can add precision and clarity but cannot make up for the inherent gap in vocabulary precision.
Someone with more knowledge can comment on the feasibility of precise NLP in non-English, non-romance languages.
If, however, acceptance testing is defined through the precision of a low-level programming language, but the problem is defined in a less-precise natural language, there will always be a precision mismatch between the languages used to define the problem. A solution may be implemented that addresses the natural language issue but cannot meet the constraints of the programming language.