Programming Computable Functions
કોમ્પ્યુટર વિજ્ઞાનમાં, પ્રોગ્રામિંગ કોમ્પ્યુટેબલ ફંક્શન્સ (પી. સી. એફ.) એ 1977માં ગોર્ડન પ્લોટકિન દ્વારા રજૂ કરાયેલી ટાઇપ કરેલી કાર્યાત્મક ભાષા છે, જે ડાના સ્કોટ દ્વારા અગાઉ અપ્રકાશિત સામગ્રી પર આધારિત છે. તેને ટાઇપ કરેલા લેમ્બડા કલનનું વિસ્તૃત સંસ્કરણ અથવા એમ. એલ. અથવા હાસ્કેલ જેવી આધુનિક ટાઇપ કરેલી કાર્યાત્મક ભાષાઓનું સરળીકૃત સંસ્કરણ ગણી શકાય. પી. સી. એફ. માટે સંપૂર્ણ અમૂર્ત મોડેલ સૌપ્રથમ રોબિન મિલનર દ્વારા આપવામાં આવ્યું હતું. જો કે, મિલ્નરનું મોડેલ અનિવાર્યપણે પી. સી. એફ. ના વાક્યરચના પર આધારિત હોવાથી તેને સંતોષકારક કરતાં ઓછું માનવામાં આવતું હતું. વાક્યરચનાનો ઉપયોગ ન કરતા પ્રથમ બે સંપૂર્ણ અમૂર્ત નમૂનાઓ 1990ના દાયકા દરમિયાન ઘડવામાં આવ્યા હતા. આ મોડેલો રમત શબ્દાર્થ અને ક્રિપ્કે તાર્કિક સંબંધો પર આધારિત છે. થોડા સમય માટે એવું અનુભવાયું હતું કે આમાંથી કોઈ પણ મોડેલ સંપૂર્ણપણે સંતોષકારક ન હતું, કારણ કે તે અસરકારક રીતે પ્રસ્તુત કરવા યોગ્ય ન હતા. જો કે, રાલ્ફ લોડરે દર્શાવ્યું હતું કે કોઈ અસરકારક રીતે પ્રસ્તુત કરી શકાય તેવું સંપૂર્ણ અમૂર્ત મોડેલ અસ્તિત્વમાં હોઈ શકે નહીં, કારણ કે પી. સી. એફ. ના મર્યાદિત ભાગમાં કાર્યક્રમની સમાનતાનો પ્રશ્ન નિર્ણાયક નથી. વાક્યરચના પી. સી. એફ. ના પ્રકારોને પ્રેરક રીતે નેટ તરીકે વ્યાખ્યાયિત કરવામાં આવે છે જે એક પ્રકાર છે σ અને τ પ્રકારો માટે, એક પ્રકાર છે σ → τ એ સંદર્ભ એ જોડી x: σ ની સૂચિ છે, જ્યાં x એ ચલ નામ છે અને σ એ એક પ્રકાર છે, જેમ કે કોઈ ચલ નામ ડુપ્લિકેટ નથી. એક પછી નીચેના વાક્યરચનાત્મક રચનાઓ માટે સામાન્ય રીતે સંદર્ભમાં શબ્દોના ટાઇપિંગ ચુકાદાઓને વ્યાખ્યાયિત કરે છેઃ ચલ (જો x: σ એ સંદર્ભનો ભાગ છે, તો x: σ) એપ્લિકેશન (પ્રકાર σના શબ્દ માટે પ્રકાર τ) λ-એબ્સ્ટ્રેક્શન Y નિશ્ચિત બિંદુ સંયોજક (પ્રકાર σની શરતોમાંથી પ્રકાર σ ની શરતો બનાવે છે σ → σ) અનુગામી (સક્સેસર) અને પુરોગામી (પ્રિડ) કામગીરી નાટ અને અચળાંક 0 પર શરતી જો ટાઇપિંગ નિયમ સાથે શરતી હોય તોઃ (નાટને અહીં શૂન્ય જેવા પરંપરા સાથે બુલિયન તરીકે અર્થઘટન કરવામાં આવશે જે સત્યને સૂચવે છે, અને અન્ય કોઈપણ આ મોડેલમાં, પ્રકારોને ચોક્કસ ક્ષેત્રો તરીકે અર્થઘટન કરવામાં આવે છે. (સપાટ ક્રમ સાથે જોડાયેલા તળિયાના તત્વ સાથેની કુદરતી સંખ્યાઓ) નું અર્થઘટન સ્કોટ-સતત વિધેયોના ક્ષેત્ર તરીકે કરવામાં આવે છે, જેમાં બિંદુ મુજબ ક્રમ હોય છે. સંદર્ભને ઉત્પાદન તરીકે અર્થઘટન કરવામાં આવે છે સંદર્ભમાં શરતોને સતત કાર્યો તરીકે અર્થઘટન કરવામાં આવે છે ચલ શબ્દોને અંદાજો તરીકે અર્થઘટન કરવામાં આવે છે લામ્બડા એબ્સ્ટ્રેક્શન અને એપ્લિકેશનને ડોમેન્સની શ્રેણીના કાર્ટેશિયન બંધ માળખાનો ઉપયોગ કરીને અર્થઘટન કરવામાં આવે છે અને સતત કાર્યો વાયને દલીલનો ઓછામાં ઓછો નિશ્ચિત મુદ્દો લઈને અર્થઘટન કરવામાં આવે છે આ મોડેલ પી. સી. એફ. માટે સંપૂર્ણપણે અમૂર્ત નથી; પરંતુ તે પી. સી. એફ. માં સમાંતર અથવા સંચાલક ઉમેરીને મેળવેલી ભાષા માટે સંપૂર્ણપણે અમૂર્ત છે. નોંધો સંદર્ભો બાહ્ય કડીઓ તરીકે દેખાયા એસ. એમ. એલ. પ્રોગ્રામિંગ ભાષાઓમાં લખાયેલ પી. સી. એફ. માટે રિયલ પી. સી. એફ. લેક્સર અને પાર્સરનો પરિચય 1977 માં બનાવવામાં આવેલી શૈક્ષણિક પ્રોગ્રામિંગ ભાષાઓ શૈક્ષણિક પ્રોગ્રામિંગ ભાષાઓ કાર્યાત્મક ભાષાઓ પ્રોગ્રામિંગ ભાષા સિદ્ધાંત