Ahmed Charfeddine wrote:So the developer does no longer have to change his code when the end-user asks
for a particular logic,
Wont work. The reason is simple.
To solve complex problems complex logic is needed. Thus programming languages exist. Complexity also allows for more ways to create errors. Complex errors.
And that is why programmers exist.
A general solution would either be so simple as to provide no benefit or so complex that the "users" would need to be be programmers. Thus losing all possible benefit.
Now if you have a specific problem domain and extensive expertise working in that domain (and not just programming for it) then you might be able to create a 'language' that is intutive for most users of the same domain. Then you can wrap everything else you said about it around it.
Other than that you can just hack it as a learning experience. If so I suggest you keep the language simple. You might want to look into some of the existing gaming systems such as the ones that let you program 'robots' (software entities only) to fight against each other. The language is simple and there are existing implementations that let you constrast against. I am certain that there are other types of games systems like that as well.