Prolog: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m Bot: sito web formattato dal template |
Inserita Sintassi da wikipedia inglese - solo fino a Tipi di Dati, con qualche modifica/omissione. |
||
Riga 31:
L'esecuzione di un [[Programma (informatica)|programma]] Prolog è comparabile alla dimostrazione di un [[teorema]] mediante la [[regola di inferenza]] detta risoluzione (introdotta da [[Robinson]] nel [[1965]]).
I concetti fondamentali sono l'unificazione, la [[algoritmo ricorsivo|ricorsione]] in coda e il [[backtracking]].
== Sintassi ==
Nel Prolog, la logica del programma è espressa sotto forma di relazioni e le attività di calcolo vengono attivate da un'interrogazione relativa a tali relazioni.
=== Tipi di dati ===
L'elemento generico del Prolog si chiama ''termine''. I termini possono essere ''atomi'', ''numeri'', ''variabili'' o ''termini composti''.
* Un '''atomo''' è un nome generico senza significato intrinseco, p.es. <code>x</code>, <code>blu</code>, <code>'Taco'</code>, <code>'questo signore'</code>.
* Un '''numero''' può essere intero o decimale.
* Una '''variabile''' è indicata per mezzo di una stringa di lettere, numeri e trattini bassi (_) che comincia con una maiuscola o un trattino basso.
* Un '''termine composto''' è formato da un atomo detto "funtore" e da uno o più argomenti - anch'essi termini - scritti tra parentesi e separati da virgole, p.es. <code>anno_camion('Mazda', 1986)</code> e <code>'Amici'(zelda,[tom,jim])</code>.
Casi speciali di termini composti:
* Una '''lista''' è una collezione ordinata di termini, separati da virgole; viene indicata per mezzo di parentesi quadre; è ammessa la lista vuota <code>[]</code>. Esempi: <code>[1,2,3]</code> e <code>[rosso,verde,blu]</code>.
* Una '''stringa''' è una sequenza di caratteri delimitata da doppi apici ("), p.es. <code>"essere o non essere"</code>.
== Programma di esempio ==
|