கேள்வி: புரொலாக் - விதிகளும் உண்மைகளும் பற்றி தகவல் சொல்.
பதில்: புரோலாக் நிரல்கள் உட்கூறுகளால் வரையறுக்கப்படும் தொடர்புகளை விவரிக்கின்றன. தூய புரோலாக் ஹார்ன் உட்கூறுகளுக்கு மட்டுமே என்ற வரம்புடையவை. உட்கூறுகளில் இரு வகைகள் உள்ளன: உண்மைகள் மற்றூம் விதிகள். ஒரு விதியானது இவ்வடிவில் இருக்கும் Head :- Body. மேலும், அது "Head is true if Body is true" எனப் படிக்கப்படும். ஒரு விதியின் முக்கியப் பகுதியில் பயனிலைகளின் அழைப்புகள் இடம்பெறும், அவை விதியின் குறிக்கோள்கள் என அழைக்கப்படுகின்றன. ,/2 என்ற உட்கட்டமைக்கப்பட்ட பயனிலையானது, (அதாவது , என்ற பெயருடைய ஒரு 2-எண் ஆப்பரேட்டர்) குறிக்கோள்களின் இணைப்பைக் குறிக்கிறது, மேலும் ;/2 என்பது பிரிப்பைக் குறிக்கிறது. இணைப்புகளும் பிரிப்புகளும் முக்கியப் பகுதிக்குள் மட்டுமே இடம்பெறும், அவை ஒரு விதியின் தலைப்பில் இடம்பெறாது. வெற்று முக்கியப் பகுதிகளைக் கொண்ட உட்கூறுகள் உண்மைகள் என அழைக்கப்படுகின்றன. ஓர் உண்மைக்கான எடுத்துக்காட்டு பின்வருமாறு: கேட்(டாம்). இது பின்வரும் விதிக்கு சமமானதாகும்: பூனை (டாம்) :- மெய். உட்கட்டமைக்கப்பட்ட பயனிலை மெய்/0 என்பது எப்போதுமே மெய்யாகும். மேலே கூறப்பட்ட உண்மையிருக்கும்பட்சத்தில், ஒருவர் இவ்வாறு கேட்கலாம்: ''டாம் ஒரு பூனையா?'' ?- பூனை (டாம்). ஆம் ''எதெல்லாம் பூனை?'' ?- cat(X). X = tom பல உட்கட்டமைக்கப்பட்ட பயனிலைகளின் தொடர்புடைய இயல்பினால், வழக்கமாக அவற்றைப் பல திசைகளில் பயன்படுத்தமுடியும். எடுத்துக்காட்டுக்கு, length/2 என்பதை ஒரு பட்டியலின் (length(List, L), List எனும் பட்டியல் கொடுக்கப்பட்ட நிலையில்) நீளத்தைக் கண்டுபிடிக்கப் பயன்படுத்தலாம், அதே போல், கொடுக்கப்பட்ட நீளத்தின் (length(X, 5)) பட்டியல் அடிப்படையமைப்பை உருவாக்கவும் பயன்படுத்தலாம், மேலும் பட்டியல் அடிப்படையமைப்பு பட்டியல் நீளங்கள் ஆகிய இரண்டையும் (length(X, L)) கண்டுபிடிக்கவும் பயன்படுத்தலாம். இதே போல், append/3 என்பதை இரண்டு பட்டியல்களை (ListA மற்றும் ListB ஆகியவை கொடுக்கப்பட்ட நிலையில், append(ListA, ListB, X)) இணைக்கவும் கொடுக்கப்பட்ட பட்டியலைப் பிரிக்கவும் (List எனும் ஒரு பட்டியல் கொடுக்கப்பட்ட நிலையில், append(X, Y, List)) பயன்படுத்தலாம். இந்தக் காரணத்தினால், பல புரோலாக் நிரல்களுக்கு ஒப்பீட்டில் சிறிதான ஒரு லைப்ரரி பயனிலை குழு பயன்படுத்தப்படுகிறது. ஒரு பொது தேவை மொழியாக, புரோலாக் பல்வேறு உட்கட்டமைக்கப்பட்ட பயனிலைகளையும் கொண்டுள்ளது, அவஒ திரும்பத் திரும்ப நிகழ்வும் செயல்களைச் செய்கின்றன, எ.கா.: உள்ளீடு/வெளியீடு, படங்களைப் பயன்படுத்துதல் மற்றும் இயக்கமுறைமையுடன் தொடர்புகொள்ளுதல். இந்த பயனிலைகளுக்கு தொடர்புடைய பொருள் கொடுக்கப்படுவதில்லை, மேலும் இவை கணினியில் இவை வழங்கும் பக்க விளைவுகளுக்குப் பயன்மிக்கவையாகும். எடுத்துக்காட்டுக்கு, write/1 எனும் பயனிலை திரையில் ஓர் உறுப்பைக் காண்பிக்கும்.
கேள்வி: புரொலாக் - தொடர்புடைய மொழிகள் பற்றி நீங்கள் என்ன அறிந்துள்ளீர்கள்?
பதில்: * கோடெல் நிரலாக்க மொழியானது ஒத்த கட்டுப்பாட்டு தர்க்க நிரலாக்கத்தின் வலிமையான-தட்டச்சு செயல்படுத்தலாகும். இது SICStus ப்ரோலாக்கில் கட்டமைக்கப்படுகின்றது. * விஷூவல் ப்ரோலாக் என்பது முன்னதாக PDC ப்ரோலாக் மற்றும் டர்போ ப்ரோலாக் என்றும் அறியப்பட்டது. விஷூவல் ப்ரோலாக் என்பது ப்ரோலாக்கின் வலிமையாக வகையமைக்கப்பட்ட இலக்குபொருள்-சார்ந்த கிளை மொழி வகையாகும், இது தரநிலையான ப்ரோலாக்கிலிருந்து கருதக்கூடிய வகையில் வேறுபட்டது. டர்போ ப்ரோலாக் போன்று இது போர்லேண்டால் சந்தைப்படுத்தப்பட்டது, ஆனால் இப்போது அது உண்மையில் அதை தயாரித்த தனிஷ் நிறுவன PDC (ப்ரோலாக் மேம்பாட்டு மையம்) மூலமாக மேம்படுத்தப்பட்டு சந்தைப்படுத்தப்படுகின்றது. * டேட்டாலாக் என்பது ப்ரோலாக்கின் துணைக்குழு ஆகும். இது அடுக்கிவைக்கப்படக்கூடிய மற்றும் கூட்டு உறுப்புகளை அனுமதிக்காத தொடர்புகளுக்கு மட்டுமே எனக் கட்டுப்படுத்தப்பட்டுள்ளது. ப்ரோலாகுக்கு மாறாக, டேட்டாலாக் ட்யுரிங் முழுமையானதில்லை. * CSC GraphTalk என்பது வார்ரென்னின் ஈர்ப்பு இயந்திரத்தின் உடமையுரிமை செயலாக்கம், இது கூடுதல் இலக்குபொருள்-ஒருங்கமைந்த பண்புகளைக் கொண்டுள்ளது. * சில வழிகளில் ப்ரோலாக் என்பது ப்ளானரின் துணைக்குழு ஆகும். ப்ளானரில் உள்ள கருத்துகள் பின்னர் அறிவியல் சமூக உருவகத்தில் மேலும் மேம்படுத்தப்பட்டது.