export bazy wiedz z prologa do php

0

Witam.
Mam problem, mianowicie musze na zaliczenie zrobic system ekspertowy w prologu, z tym ze nie za bardzo znam ten jezyk i chcialem jak najmniej w nim pisac, ale oddac ten projekt :) co za tym idzie, chcialbym stworzyc w prologu tylko baze wiedzy, a nastepnie wyeksportowac ja np. do php ew. do javy czy C#. I caly system ekspertowy stworzyc w tych jezykach w oparciu tylko o ta baze wiedzy z prologa. Czy instnieje taka mozliwosc??? Jezeli tak to prosze o pomoc bo bardzo mi na tym zalezy...

0

Szczerze mówiąc, nie wiem o co ci chodzi dokładnie.
Chcesz napisać bazę w prologu, a później używać danych z niej w innym języku programowania? Jeśli tak to nie da się :] . Ewentualnie jako interfejs który uruchamiałby interpreter prologa. Czemu? Po prostu - baza danych jest w prologu praktycznie całym programem (na tym właśnie polega zabawa z prologiem).

Przykład bazy danych:

rejsy(    sf,   den,   930,    1230).
rejsy(    sf,   dal,   900,    1430).
rejsy(   den,   chi,  1500,    1800).
rejsy(   den,   dal,  1400,    1700).
rejsy(   dal,   chi,  1530,    1730).
rejsy(   chi,    ny,  1500,    1930).
rejsy(   chi,    ny,  1900,    2200).
rejsy(   chi,    ny,  1830,    2130).

polaczenie(X, Y, O, P) :-
	rejsy(X, Y, O, P).
polaczenie(X, Y, O, P) :-
	rejsy(X, Z, O, T1),
	polaczenie(Z, Y, T2, P),
	T2 >= T1+100.

i użycia (to już interpreter)

?- polaczenie(sf, chi, Odlot, Przylot).
Odlot = 930,
Przylot = 1800 ? ;
Odlot = 900,
Przylot = 1730 ? ;
no

Zaczerpnięte ze strony http://www.im.pwr.wroc.pl/~przemko/prolog/index.html - ogólnie polecam, ale na łopatologię bym nie liczył (tak to już jest w niszowych językach).

0

czyli nie mozna zrobic czegos na zasadzie sql server i asp.net ze baza wspolpracuje z jezykiem programowania? Tylko w prologu funkcjonuje to jako calosc. A ewentualnie moge sobie interfejsc zrobic w htmlu i php, dobrze zrozumialem??

0

Tak, zrozumiałeś dobrze. To znaczy, "baza danych" w prologu to nic więcej niż takie właśnie powiązania jak pokazane powyżej - a ich interpretacją zajmuje się, i tylko do tego jest, interpreter tego języka. Dla innego języka programowania taka "baza danych" to po prostu śmieci. Za to możesz (skojarzenie ze SQL) zapytać interpreter prologa o jakieś dane, i następnie gdzieś ich użyć - na przykład w innym języku (aczkolwiek nie będzie to bardzo proste). Być może to cię satysfakcjonuje :) .

1 użytkowników online, w tym zalogowanych: 0, gości: 1