Domanda |
Risposta |
inizia ad imparare
|
|
program to ciąg instrukcji dla komputera, wynik to końcowy stan pamięci
|
|
|
inizia ad imparare
|
|
podiał zadania na podzadania i ich implementacja w postaci procedur
|
|
|
inizia ad imparare
|
|
używanie struktur programistycznych (sekwencja, instrukcje warunkowe, pętle, rekurencja)
|
|
|
inizia ad imparare
|
|
główna koncepcja - obiekt, program to zbiór obiektów, wynik - stan końcowy obiektów
|
|
|
inizia ad imparare
|
|
programista określa co komputer ma osiągnąć
|
|
|
inizia ad imparare
|
|
program - zbiór funkcji, program - zbiór funkcji, wynik - wartość funkcji głównej, brak dostępu do stanu maszyny, nie ma tradycyjnych zmiennych i pętli (tylko rekurencja)
|
|
|
inizia ad imparare
|
|
program - formuły logiczne: aksjomaty i twierdzenia, program - sprawdzenie poprawności twierdzenia, wynik - powodzenie lub niepowodzenie poprawności twierdzenia
|
|
|
inizia ad imparare
|
|
Semantyka - znaczenie form zapisanych zgodnie ze składnią języka, czyli „co one robią”. Syntaktyka - zbiór reguł, mówiących jak wygląda poprawny program w danym języku.
|
|
|
inizia ad imparare
|
|
zbiór dopuszczalnych wartości, określenie precyzji, zbiór dozwolonych operatorów i operacji
|
|
|
inizia ad imparare
|
|
dynamiczne - przypisanie bytom(zmienna, operator) atrybutów (wartości, adresy) w trakcie działania programu, Statyczne - przed lub w trakcie kompilacji
|
|
|
inizia ad imparare
|
|
reguły składania i wykonywania obliczeń, w których podstawowym elementem składowym jest funkcja.
|
|
|
inizia ad imparare
|
|
Wyrażenia nie są obliczane w momencie wiązania ich do zmiennej, ale dopiero, gdy napotkane zostanie odwołanie do konkretnego wyniku. (take 10 from x może potencjalnie generować nieskończoną liste, ale nadal się wykona, bo cała lista nie jest potrzebna)
|
|
|
inizia ad imparare
|
|
opisywanie i rozwiązywanie problemów za pomocą predykatów i zdań logicznych
|
|
|
inizia ad imparare
|
|
W przypadku niepowodzenia (otrzymanie wartości fałsz), wróć do takiego miejsca, w którym stosując rezolucję możesz uzyskać inne wyrażenie
|
|
|
inizia ad imparare
|
|
czy 2 termy są identyczne, lub mogą stać się identyczne za pomocą podstawiania
|
|
|
inizia ad imparare
|
|
wnioskowanie (x->y, y->z to x->z)
|
|
|
inizia ad imparare
|
|
Jeśli Prolog natrafi na operator odcięcia w regule, nie będzie nawracał z wyborem do wcześniejszych możliwości
|
|
|
inizia ad imparare
|
|
dochodzeniu do nowych twierdzeń na podstawie już znanych faktów i reguł
|
|
|