In der Programmierung hast du einfach andere Probleme als in rein beschreibenden Sprachen. Wenn du ein Problem hast wie: "wie bekomme ich die Eintraege dieser Liste sortiert, und zwar absteigend nach der 24. Stelle in den Zeichenketten sortiert" - dann bist du erst mal nicht so sehr damit beschaeftigt, welchen Befehl du nun notieren musst, sondern du musst dir erst mal vorstellen, was da genau Schritt fuer Schritt passieren soll. Erst wenn du eine Schritt-fuer-Schritt-Loesung gefunden hast, macht es Sinn, sich darueber Gedanken zu machen, welche Befehle der Sprache du dazu brauchen kannst. Diese Vorgehensweise wuerde ich als Programmierung bezeichnen.
Hm, damit hebst Du im Wesentlichen auf den Algorithmus-Begriff ab, der ja auch von Frank genannt wurde. Der gilt aber höchstens für 3GL (Programmiersprachen der 3. Generation), nicht für 4GL.
4GL-Sprachen versuchen gerade, dieses algorithmische Denken zu umgehen (mit der Idee, daß man eben gerade *nicht* "Programmieren" im herkömmlichen Sinne gelernt haben muß ...), indem man nicht mehr beschreibt, *wie* man zu einem Ergebnis kommt, sondern welche *Eigenschaften* das Ergebnis haben soll.
Prominente Vertreter dieser Sorte:
- SQL ("select * from <tablename> where <feldname/gt; = '42';" - was kümmert mich, *wie* er das macht?) oder
- Prolog.
Und 4GL-Sprachen haben normalerweise eben gerade nicht mehr die Eigenschaften, die für 3GL-Sprachen genannt wurden, etwa Verzweigungen oder Schleifen. (Diese braucht man ja nur für Algorithmen, also mehr oder weniger sequentielle Ablaufpläne.)