Semantische Einführung in Prolog

  • Einführung:
    -> Wie kann man Programmieren?
    • imperative Sprachen: Delphi, Java, PHP, Pawno ... -> Folge von Anweisungen
    • deklarative Sprachen: Prolog, Lisp ... -> beschreibt das Problem lösen tut die Maschine


    Prolog -> Programmieren in Logik


    Grundlegende Syntax:
    • Fakten:
    -> z.b. menschlich(john). (john ist menschlich)
    `-> Wissensbasis


    • Regeln:
    -> z.b. sterblich(X):-menschlich(X). (wenn x mensch ist dann ist x sterblich)
    -> sterblich(X). => X = john ergibt: sterblich(john). => true.



    Beispiel:



    Diesen Code müsst ihr jetzt compilieren.


    Nun könnt ihr Prolog fragen stellen.


    z.b.
    reich(X).
    dort wird euch Prolog zurück geben
    das Ceaser = X ist.



    //edit Orthografie


    Bedanke dich bitte, wenn du den Beitrag als hilfreich empfandest!



    3 Mal editiert, zuletzt von ToBee94 ()

  • Nun kurz un knapp, gut erklärt, aber erklär uns doch mal was Prolog ist und wofür man es benutzen soll.

  • nette demo, ein praktischer einsatz wäre jedoch mal interessant zu sehen...

    Intel Xeon W3690 Hexacore @ 4.5 GHz - 48GB Triple Channel DDR3 - GeForce RTX 2070 Super - Asus P6T Deluxe V1 @ P6T WS Pro BIOS

    Mainboard 12 Jahre, CPU 10 Jahre alt - old but gold!

  • Mal rein davon ab, dass wichtige syntaktische Elemente, gar nicht erst beschrieben wurden.
    Auf Wikibooks gibt's da etwas sinnvolleres, nützlicheres und verständlicheres..
    Kurz und knapp, aber dafür wird alles sinnvoll angesprochen und kurz erklärt http://de.wikibooks.org/wiki/Prolog


    Ich werde es natürlich noch weiter entwickeln bzw. weitere Tutorials machen. Es ist bisher nur ein Anfang. Prolog ist schon ein bisschen anders als c++ oder vb etc. Da gibt es eine riesige Datenmenge. Es soll auch nicht gleich zu viel sein weil sich sonst vllt eiige User überfordert fühlen


    Bedanke dich bitte, wenn du den Beitrag als hilfreich empfandest!



  • mir verschließt sich immer noch ein praktischer einsatz.. wann soll ich das ding da verwenden statt einer datenbank?

    Intel Xeon W3690 Hexacore @ 4.5 GHz - 48GB Triple Channel DDR3 - GeForce RTX 2070 Super - Asus P6T Deluxe V1 @ P6T WS Pro BIOS

    Mainboard 12 Jahre, CPU 10 Jahre alt - old but gold!