Programmiersprache ohne Code!



  • 😃

    Ich hab mir gestern Abend mit einem guten Freund folgendes überlegt. Mit einer kleinen Programmiersprache ohne Code könnte jedermann programmieren - auch wenn er keine Ahnung von Programmierung hat. Das ganze soll VisualBasic-like durch Mausklicks und Drag&Drops erfolgen. Das ganze soll ein kleines Hobby-Projekt von mir werden. In welcher Programmiersprache ich es machen will, ist noch unklar, daher hab ich diesen fred in diesem bereich gepostet. Fest steht nur, es soll ein einfacher Interpreter sein - und eine Windows-Sprache. Hier soll auch erstmal nur spekuliert werden 😉

    Also die Idee hab ich schon. Mir ist dennoch noch nicht so ganz klar wie genau die Sprache aufgebaut sein soll.
    Ich seh das so:
    - User öffnet meine Sprache: Ein "Mal-Bildschirm" ähnlich wie bei Visual Basic oder der MFC erscheint - natürlich nicht ganz so komplex - etwas vereinfacht.
    - Der User kann durch simple Mausklicks Buttons erstellen etc. - genau wo er sie haben will.

    So jetzt gibt es ZWEI Möglichkeiten:
    - Klickt der User auf den Button werden ihm Fragen gestellt, was der Button bewirken soll.
    - Zieht der User z.B. eine Textzeile auf ein Button, dann wird er gefragt was der Button in Verbindung mit der Textzeile passieren soll.

    Möglicher Ablauf meines Programms:
    - User erstellt eine Textzeile (text1) und ein Button (button1).
    - User zieht die Textzeile auf das Button.
    - Diverse Fragen werden ihm gestellt - er entscheidet sich aber für "text1 in einer Messagebox ausgeben"

    Er könnte text1 z.B. auch in eine Datei reinschrieben lassen o.ä.

    Wenn er jetzt den Interpreter laufen lässt, kann er einen Text in die Textbox eingeben und wenn er auf den Button klickt, wird sie ausgegeben.

    Habt ihr vielleicht noch andere Ideen, wie man so etwas machen könnte? Auch rein theoretisch. Wie stellt IHR euch eine Programmiersprache ohne Codeingabe vor?

    Mir ist klar, dass die Sprache nicht besonders komplex sein kann. Es soll nur ein kleines lustiges Hobby-Projekt werden - wenn es überhaupt zu einem Projekt kommt 😃



  • Möglicher Ablauf meines Programms:
    - User erstellt eine Textzeile (text1) und ein Button (button1).
    - User zieht die Textzeile auf das Button.
    - Diverse Fragen werden ihm gestellt - er entscheidet sich aber für "text1 in einer Messagebox ausgeben"

    die idee is eigentlich schwachsinn, weil wie willst du einen button erstellen ohne code?, wie willst irgendwelche fragen ausgeben lassen ohne es dem InputOutputstreams deines PC´s zu sagen. Mal ehrlich die Idee kannst vergessen, weil das wird nie im leben funktionieren.



  • Hallo

    Er will doch eine Sprache benutzen, aber der User soll sie nicht sehen.

    chrische



  • chrische5 schrieb:

    Hallo

    Er will doch eine Sprache benutzen, aber der User soll sie nicht sehen.

    chrische

    Korrekt...

    Firefighter, du hast mich falsch verstanden ...

    Der User soll mit Malwerkzeugen an einem Windows Fenster basteln. Im Hintergrund, merkt sich meine Sprache alles was der User macht in Variablen.
    Wenn der User mein Interpreter startet, liest es die Variablen, erstellt ein Windows-Fenster und alles was der User zuvor gemalt hat.
    Bis hierher klingt das noch realistisch. Das mit diesen "Fragen" war reine Spekulation. Ich weiß noch nicht wirklich wie so etwas funktionieren soll - Wenn ich es wüsste, hätte ich keinen Thread eröffnet.



  • acccchhhsso...ok das ia natürlich was anderes als ich zuerst gedacht habe, dann tut mir mein voreiliger post leid



  • Kein Problem.

    Ich will so ne Art VisualBasic-Kopie erstellen. Der User beötigt dafür aber keinerlei Programmierkenntnisse. Denn selbst bei so einfachen Sprachen wie Visual Basic braucht man schon einiges an Vorwissen, um ein vernünftiges Programm zu erstellen.
    So könnte jedermann kleine Lösungen für den Alltag entwickeln.



  • Die Idee hatte wohl jeder zweite Programmierer irgendwann in seinem Leben. Sie ist auch nichts neues, und solche Autorensysteme gibt es schon seit Ewigkeiten.

    Das Problem dabei ist einfach, dass man mit solchen Systemen "richtige" Programme nicht effektiv umsetzen kann. Unsere Probleme die wir mittels d. Informatik lösen sind schlicht und ergreifend zu komplex, als dass sie effizient visuell dargestellt werden könnten.
    Ich kann zwar immer Teilbereiche darstellen (Prozessabläufe mit Flussdiagrammen, Klassen mit UML), aber das Problem, in deinem Falle die Anwendung als Ganzes lässt sich nur schwer übersichtlich visualisieren.
    Denke beispielsweise an den Entwurf von Benutzeroberflächen: Wie stellst du effizient die Verknüpfung zwischen Steuerelementen und Ereignislogik dar, und zeigst dabei jeweils die Ereignislogik auf?

    Selbst wenn die visuelle Darstellung funktioniert, dann ist die Entwicklung immernoch viel umständlicher als mit einem einfachen Texteditor. Man will sich nicht jede Schleife, jede Verzweigung mühsam zusammenklicken!

    Ein
    b[4]='L'
    ist halt einfach aussagekräftiger und kürzer als
    1. Den Char-Array-Operator in die Oberfläche ziehen.
    2. Die Index-Eigenschaft auf 4 festlegen.
    3. Die Value-Eigenschaft auf L festlegen.

    Du wirst nun vielleicht argumentieren, dass man solche Lowlevel-Operationen nicht brauchen wird als Anfänger. Damit könntest du recht haben, wenn du aber alles was Lowlevel ist weglässt, dann werden die Möglichkeiten mit deiner "Sprache" sehr eingeschränkt sein.



  • ich finde die idee gut damit könte man gut arbeiten



  • joah, mit sowas koennte man schoen eine GUI designen. und mit ein paar guten ideen koennte man sogar irgendwie if-else-gebilde (z.b. pro button) darstellen.
    aber schon wenn es darum geht zu definieren dass dieser button nur angezeigt werden darf wenn x / y >= 10, dann haste wieder eine scriptsprache.

    ich meine es war zu zeiten von den ersten versionen von Visual Basic microsofts erklaertes ziel, eine sprache "ohne sprache" zu erstellen. aber wie man gesehen hat hat das nicht funktioniert. komplett ohne dem user die sprache abzuverlangen kommst du wohl in 0.1% aller faelle zum ziel, bei allen anderen aber nicht.
    microsoft hat es hier dann eben so gemacht dass alles was irgendwie geht mit GUI gemacht wird, die programmlogik muss aber weiterhin im skript erfolgen.

    hier die sprache per UML zu "emulieren" waere eine idee, aber das funktioniert wahrscheinlich auch nur bei extrem uebersichtlicher (a.k.a. simpler) logik, bei allem anderen wird es schwieriger.

    anyway, probier es aus, ich schau es mir dann gerne an 😉





  • Code ohne schreiben kann man mit dem Sandboxeditor der Cryengine 2 machen. Damit hab ich testweise ein Tetris gemacht, ist echt cool!


Anmelden zum Antworten