Observations and comments on information technology for IT professionals.
Although I have posted about programming language evolution and selection I did not cover a more speculative idea for that evolution. Programming could be advanced by replacing deterministic references to data that are currently used in all programming languages, with search based references. Deterministic references require the programmer to know what instances of data exist and details of data form like structure, type and name. This effort can be focused more productively on solving more important issues. Deterministic references also make programme statements fragile by embedding that knowledge of data form in them, because any change in data form will make the programme statements incorrect. Instead the correct data can be found by searching. The search terms can be guessed and other pertinent information can be established from the programme and process. Guessing the correct search terms is not as unlikely to work as it sounds. The more familiar a person becomes with a problem domain the more likely they are to use the consensus terminology. Making this approach work is not an intractable problem, just difficult. It is a matter of applying enough techniques to reduce the chance of obtaining the incorrect data to such a low level that it can be addressed by other techniques, like testing. Given the huge advantages of this approach it seems inevitable that it will eventually become the norm.