泉州继续奖励用电增长 单家企业最高奖100万元
For alternative betydninger, se Prolog. (Se ogs? artikler, som begynder med Prolog)
Prolog (PROgramming in LOGic) er et deklarativt og logikbaseret programmeringssprog .
Programmering i Prolog er programmering i logik. Man skriver programmer ved at opstille en sammenh?ng af logiske udsagn. Dette medf?rer et h?jere abstraktionsniveau i den forstand, at man som programm?r bev?ger sig v?k fra, hvordan man l?ser et givet problem i de mere maskinn?re programmeringssprog til, hvad man g?r for at l?se det – og dette udtrykt i logik.
Et eksempel p? et prolog-program, der kan udtrykke en familie-relation, kan v?re:
mand(harald). mand(gorm). kvinde(thyra). son_af(harald, gorm). son_af(harald, thyra). far(X,Y) :- son_af(Y,X), mand(X).
Dette l?ses, at f?rst har vi en r?kke fakta, fx Harald og Gorm er m?nd, mens Thyra deklareres som kvinde. S? defineres et pr?dikat, s?n af (son_af), som kan udtrykke, at Harald er s?n af Gorm.
Nu kan vi bygge videre p? programmet og skabe en far-relation, der skal l?ses s?dan, at far g?lder for X og Y, hvis X er en mand, og der er et son_af-relation mellem Y og X.
Nu kan prolog-fortolkeren sp?rges,
>far(gorm, harald)?
Variablerne X instantieres til gorm og Y til harald, hvorefter der forts?ttes til son_af(harald, gorm), hvilket ogs? lykkedes. Derefter pr?ves mand(gorm), hvilket lykkedes.Der svares yes!
Nu pr?ver vi om
>far(thyra, harald)?
kan lykkes!
F?rst instantieres variablerne og herefter sp?rges, om Harald er son_af Thyra, hvilket lykkedes, men da vi kommer til mand(X), s? kan vi ikke finde mand(thyra) i databasen, og fortolkeren returnerer et no.
Familieeksemplet kan naturligvis udbygges i det uendelige.
Se ogs?
[redigér | rediger kildetekst]Eksterne henvisninger
[redigér | rediger kildetekst]- Learn Prolog Now! Arkiveret 26. august 2007 hos Wayback Machine
Spire Denne artikel om datalogi eller et datalogi-relateret emne er en spire som b?r udbygges. Du er velkommen til at hj?lpe Wikipedia ved at udvide den. |