เมนูนำทาง
ภาษาโปรล็อก ข้อเท็จจริงการเขียนโปรแกรมภาษาโปรล็อกนั้น จะแตกต่างจากการใช้ภาษาเชิงกระบวนคำสั่ง (procedural langugage)โดยเริ่มจากการสร้างฐานข้อมูลข้อเท็จจริง (facts) และ กฎ (rules) จากนั้นจึงใช้การสอบถาม (queries) เพื่อหาคำตอบหน่วยพื้นฐานของภาษาโปรล็อกคือ เพรดิเคต (predicate) ซึ่งใช้นิยามความจริง เพรดิเคตจะเขียนอยู่ในรูปพจน์ซึ่งประกอบด้วยส่วนหัว และอาร์กิวเมนต์ เช่น
cat(tom).
cat คือส่วนหัว และมีอาร์กิวเมนต์หนึ่งตัวคือ tom จากนั้นจะสามารถสอบถามโปรล็อกถึงความจริงนี้ได้
?- cat(tom). yes.
?- cat(X). X = tom; no.
โดยทั่วไป จะใช้เพรดิเคตนิยามความจริงเกี่ยวกับสิ่งที่โปรแกรมรู้ แต่การใช้เพรดิเคตก็ต้องอาศัยข้อตกลงที่แน่นอนอย่างเพรดิตเคตในตัวอย่างข้างล่าง จะใช้แบบไหน เพื่อบอกว่า Pat เป็นพ่อของ Sally
father(sally,pat).father(pat,sally).
ทั้งสองกรณีมีส่วนหัวคือ father และอาร์กิวเมนต์คือ pat และ sally กรณีแรก sally มาก่อน ส่วนกรณีหลัง pat มาก่อนกรณีแรกเป็นตัวอย่างของการนิยามแบบ กริยา ประธาน กรรม ส่วนกรณีหลังจะเป็นแบบ กริยา กรรม ประธาน เนื่องจากระบบโปรล็อกไม่เข้าใขภาษาอังกฤษดังนั้นจึงสามารถใช้ได้ทั้งสองแบบ แต่ควรจะกำหนดรูปแบบที่แน่นอนในโปรแกรมเดียวกัน และควรหลีกเลี่ยงการเขียน เช่น
father(pat,sally).father(jessica,james).
มีเพรดิเคตหลายตัว ที่กำหนดไว้ในตัวภาษา เพื่อทำให้โปรแกรมสามารถทำงานต่างๆ ได้ (เช่น อินพุต/เอาต์พุต ใช้กราฟิก และสิ่งต่างๆ เพื่อติดต่อกับระบบปฏิบัติการ)เช่น เพรดิเคต write ใช้สำหรับแสดงผลออกจอ
write('Hello').
จะแสดงคำว่า Hello บนจอ
เมนูนำทาง
ภาษาโปรล็อก ข้อเท็จจริงใกล้เคียง
ภาษาโอกินาวะ ภาษาโปรล็อก ภาษาโภชปุระ ภาษาโปรแกรม ภาษาโรฮีนจา ภาษาโฑครี ภาษาโปรตุเกส ภาษาโวลาปุก ภาษาโวลอฟ ภาษาโซมาลีแหล่งที่มา
WikiPedia: ภาษาโปรล็อก http://www.csse.monash.edu.au/~lloyd/tildeLogic/Pr... http://www.amzi.com/ http://www.dobrev.com/ http://www.probp.com/ http://www.trinc-prolog.com http://www.visual-prolog.com http://www.visual-prolog.com/ http://ktiml.mff.cuni.cz/~bartak/prolog/testing.ht... http://cs.wwc.edu/~cs_dept/KU/PR/Prolog.html http://www.clip.dia.fi.upm.es/Software/Ciao