It will probably never appear. Problems that need solving with computers tend to live in their own particular domains, each with its own set of important concepts.
A robot designer might well be interested in the problems of planning routes through 3D spaces, while the designer of a power-plant control system wants to collect and display instrument readings and control pumps and valves.
An effective language for each domain will be designed to express mainly concepts that are most important in the easiest possible way. Providing features to handle irrelevant concepts will just make things more difficult to learn and the programmer will make more mistakes.
Play a musical note on a piano. Play the same note on a violin, or a guitar. They will have the same pitch - but sound quite different to the ear. Few people will confuse tune played on the guitar with one played on the piano.
I spent my career producing software that simulated and helped to assure the safe operation of nuclear reactors. One of my major concerns was ensuring that we always knew exactly what calculation we were performing in order to support arguments about reactor safety. In such circumstances you must have complete traceability of relevant evidence. We therefore had rules to control alterations to software and "configuration management" tools (such as Mercurial) to track the smallest modification and relate it to changes in the software behaviour. "Who did what when and why and what was the outcome?" was a dominant theme of my daily record keeping. Keeping such tight control while still allowing freedom to innovate and develop is part of the professional skill set of the software engineer.
As an activity, it feels as if I am doing something related to art. I think about possible ways to develop an image - conceive an idea - and then try to find a way to produce something like my mental construct on the computer screen. Frequently, I do not get what I want first, second, or even tenth time. On the other hand, sometimes, the screen shows effects I never conceived, but which nevertheless please, and I then get diverted along a track I never intended to follow. Having worked for several hours producing images for a sketchbook, I usually leave it for a few days. When I come back to review the material most of the work gets deleted as uninteresting, or too like something already done or seen elsewhere. Some ideas may, however, then be taken forward and developed further.
This is not an original idea: I saw a photographic example in an article on computational photography in a technical journal, and worked out how to do it myself.
There are three steps involved in making bendy-door images:
Page 2 of 4