Protel
પ્રોટેલનો અર્થ "પ્રોસિજર ઓરિએન્ટેડ ટાઇપ એન્ફોર્સિંગ લેંગ્વેજ" થાય છે. તે નોર્ટેલ નેટવર્ક્સ દ્વારા બનાવવામાં આવેલી પ્રોગ્રામિંગ ભાષા છે અને તેનો ઉપયોગ ડી. એમ. એસ.-100 જેવી ટેલિકોમ્યુનિકેશન સ્વિચિંગ સિસ્ટમ્સ પર થાય છે. પ્રોટેલ-2 એ પ્રોટેલનું ઓબ્જેક્ટ-ઓરિએન્ટેડ વર્ઝન છે. પ્રોટેલ ભાષાની રચના ડિજિટલ ટેલિફોનીની જરૂરિયાતોને પહોંચી વળવા માટે કરવામાં આવી હતી અને તે ડી. એમ. એસ.-100 લાઇન ઓફ સ્વિચિંગ સિસ્ટમ્સનો આધાર છે. પ્રોટેલ એ મજબૂત રીતે ટાઇપ કરેલી, બ્લોક-સ્ટ્રક્ચર્ડ ભાષા છે જે ડાબેથી જમણે ચલ સોંપણી, ચલ-કદના એરે અને એક્સ્ટેન્સિબલ સ્ટ્રક્ચર્સની શૈલી સાથે પાસ્કલ અને એ. એલ. જી. ઓ. એલ. 68 પર આધારિત છે. પ્રોટેલના ડિઝાઇનરોએ બાહ્ય સંકલન ઉમેરીને અને ભાષામાં ઉપલબ્ધ ડેટા માળખાને વિસ્તૃત કરીને દિવસના પાસ્કલને નોંધપાત્ર રીતે વિસ્તૃત કર્યું. પ્રોટેલ કમ્પાઇલર ઓપરેટિંગ સિસ્ટમ (એસ. ઓ. એસ.), એપ્લિકેશન (સી. એ. એલ. એલ. પી.), ડેવલપમેન્ટ એન્વાયર્નમેન્ટ (પી. એલ. એસ.) અને મૂળરૂપે પ્રોસેસર (એન. ટી. 40) સાથે ચુસ્ત રીતે સંકલિત છે. પી. એલ. એસ., એસ. ઓ. એસ., સી. એ. એલ. એલ. પી. અને કમ્પાઇલર પોતે જ પ્રોટેલમાં લખાયેલા છે. પ્રોટેલ ભાષાનું કોઈપણ વર્ણન મદદ કરી શકતું નથી પરંતુ તેમાં અન્ય ઘટકોના કેટલાક પાસાઓ સામેલ કરી શકાય છે. પ્રોટેલમાં ખૂબ જ કડક પ્રકારનું અમલીકરણ છે પરંતુ ઘટકોનું ચુસ્ત જોડાણ આંતરિક કમ્પાઇલર સુવિધાઓનો સીધો ઉપયોગ કરીને કુશળ કોડર્સ માટે અમુક પ્રકારની તપાસને બાયપાસ કરવાની તકો બનાવે છે. પ્રોટેલને 'શબ્દયુક્ત' ગણવામાં આવે છે, જેમાં મોટી સંખ્યામાં આરક્ષિત શબ્દો હોય છે, જેમાં કેટલાક નિવેદનો અંગ્રેજી જેવા હોય છે. PROTEL સ્રોત કોડ કેસ અસંવેદનશીલ છે પરંતુ પરંપરા મુજબ અપર કેસનો ઉપયોગ આરક્ષિત શબ્દો માટે થાય છે. ચલ અને સોંપણી મોટાભાગના વૈશ્વિક અને તમામ સ્થાનિક ચલ DECL આરક્ષિત શબ્દનો ઉપયોગ કરીને જાહેર કરવામાં આવે છે. DECL માયવર INT; ચલને INIT મુખ્ય શબ્દનો ઉપયોગ કરીને શરૂ કરી શકાય છે. DECL માયવર INT INIT 42; કોન્સ્ટન્ટ IS મુખ્ય શબ્દનો ઉપયોગ કરે છે, હેક્સાડેસિમલ #નો ઉપયોગ કરે છે. DECL માયકોન્સ્ટ INT IS #F00D; ગ્લોબલ વેરિયેબલ્સ અનુક્રમે સુરક્ષિત ડેટા અથવા થ્રેડ લોકલ ડેટાને વ્યાખ્યાયિત કરવા માટે પ્રોટેક્ટેડ અથવા ખાનગી ઘોષણાઓનો પણ ઉપયોગ કરી શકે છે. સંરક્ષિત ડેટાને લખવા માટે બિલ્ટ-ઇન પ્રિમિટિવ્સનો ઉપયોગ જરૂરી છે જે સુરક્ષિત ડેટાને સલામત રીતે બદલે છે. સંરક્ષિત ડેટા સિસ્ટમ ઇમેજ રીલોડ કરતા ટૂંકા તમામ પુનઃપ્રારંભમાં ટકી રહે છે. જ્યાં સુધી બંને દલીલોના પ્રકારો મેળ ખાય ત્યાં સુધી પ્રોટેક્ટેડ માયપ્રોટડેટા INT; રાઈટ _ પ્રોટેક્ટેડ _ સ્ટોર (માયપ્રોટડેટા, મૂલ્ય); નોંધ WRITE _ PROTECTED _ STORE દલીલો અજ્ઞેયવાદી પ્રકારની હોય છે. PRIVATE તેનો ઉપયોગ કરતી દરેક પ્રક્રિયા માટે ડેટાની ખાનગી નકલ પ્રદાન કરે છે. ત્યાં કોઈ COW કાર્યક્ષમતા નથી, દરેક પ્રક્રિયાને તેની પોતાની નકલ ફાળવવામાં આવે છે અને વૈકલ્પિક રીતે તેને બનાવતી વખતે પ્રારંભ કરે છે. ખાનગી માયપ્રાઇવેટેડાટા આઈ. એન. ટી.; નોંધ કરો કે ડી. ઈ. સી. એલ. નો ઉપયોગ કરીને વ્યાખ્યાયિત સ્થાનિક ચલ કુદરતી રીતે ખાનગી છે. ગાઝિન્ટા ગાઝિન્ટા એ અસાઇનમેન્ટ ઓપરેટર '->' માટે વપરાતું બોલચાલનું નામ છે. તેનું નામ 'અંદર જાય છે' પરથી આવ્યું છે જેનો અર્થ થાય છે અભિવ્યક્તિ ગઝિન્ટા (અંદર જાય છે) ચલ. અભિવ્યક્તિઓનું મૂલ્યાંકન કોઈ ઓપરેટરની પ્રાધાન્યતા વિના ડાબેથી જમણે કડક ક્રમમાં કરવામાં આવે છે. ઓપરેટરની અગ્રતાનો અભાવ એ એન. ટી. 40 પ્રોસેસરનો વારસો છે જેણે આર. પી. એન. તર્કનો ઉપયોગ કરીને સ્ટેક આધારિત એ. એલ. યુ. નો ઉપયોગ કર્યો હતો. પેરેન્થેસિસનો ઉપયોગ પેટા અભિવ્યક્તિઓને પ્રાથમિકતા આપવા માટે થાય છે. અભિવ્યક્તિ-> માયવર; પોઇન્ટર પોઇન્ટર ઓપરેટર @છે અને તેને પી. ટી. આર. પછી મૂકવામાં આવે છે. એન. યુ. એલ. એલ. નિર્દેશક એ પૂર્વવ્યાખ્યાયિત મૂલ્ય છે જે નકશા કરેલા સરનામાં તરફ નિર્દેશ ન કરવાની બાંયધરી આપે છે. તે 0 કે-1 કે અન્ય પૂર્વવ્યાખ્યાયિત પ્રારંભિક મેમરી પેટર્ન (#FDFD) નથી. બીજા શબ્દોમાં કહીએ તો, નિર્દેશક મૂળભૂત રીતે નલ નથી, તેને કોડમાં સેટ કરવું આવશ્યક છે. નિર્દેશક અંકગણિત આધારભૂત નથી. ડી. ઈ. સી. એલ. માયપ્ટ્ર પી. ટી. આર. ને આઈ. એન. આઈ. ટી. નલ દાખલ કરવા માટે; ડી. ઈ. સી. એલ. માયડેટા આઈ. એન. ટી.; માયપ્ટ્ર @-> માયડેટા; નોંધ એન. યુ. એલ. એલ. નિર્દેશકને ડીરેફર કરવાથી ડેટા એક્સેસ ટ્રેપ થશે. ડિસ્ક્રિપ્ટર્સ ડિસ્ક્રિપ્ટર્સ 'DESC' એ કમ્પાઇલર વ્યાખ્યાયિત માળખું છે જેમાં એરે અને એરે ઉપરની તરફના નિર્દેશકનો સમાવેશ થાય છે. વર્ણનાત્મક એરે સરળ એરે વાક્યરચના 'MY _ DESC [I]' નો ઉપયોગ કરીને અનુક્રમિત કરવામાં આવે છે અને યુપીબી ઓપરેટરનો ઉપયોગ ઉપલા બાઉન્ડ 'યુપીબી એમવાયડીઇએસસી' ને ઍક્સેસ કરવા માટે કરી શકાય છે. ટીડીએસઆઈઝેડ ઓપરેટર એનટી40: ટીડીએસઆઈઝેડ = યુપીબી + 1 પર ડિસ્ક્રીપ્ટર અમલીકરણના વારસા તરીકે પણ અસ્તિત્વ ધરાવે છે. વર્ણકો પાસે ગતિશીલ રીતે ફાળવેલ એરે પર તપાસ કરતી સ્વચાલિત રન ટાઇમ બાઉન્ડ્સ હોય છે. ડિસ્ક્રિપ્ટરને સીમાની બહાર અનુક્રમિત કરવું અથવા એનયુએલએલ ડિસ્ક્રિપ્ટરને અનુક્રમિત કરવું ડિસ્ક્રિપ્ટર રેન્જ ચેક ટ્રેપનું કારણ બનશે. યુપીબીનો ઉપયોગ સામાન્ય રીતે એપ્લિકેશન સોફ્ટવેર દ્વારા શ્રેણીની બહાર અનુક્રમણિકાને વધુ આકર્ષક રીતે સંભાળવા માટે થાય છે. ડી. સી. એલ. માય _ ઇન્ટ _ એરે ડી. ઇ. એસ. સી. ઓફ આઈ. એન. ટી. એન. યુ. એલ. એલ.; નોંધ એન. યુ. એલ. એલ. નો ઉપયોગ નિર્દેશકો અને વર્ણનકારો માટે થઈ શકે છે. શબ્દમાળાઓ વર્ણનકારોનો વ્યાપકપણે ઉપયોગ કરે છે. સ્ટ્રિંગ્સ વ્યાખ્યાયિત લંબાઈના હોય છે જેમાં કોઈ એનયુએલએલ અક્ષર ટર્મિનેટર નથી. ડીઇસીએલ ફૂ DESC ઓફ CHAR એ "મારી સ્ટ્રિંગનું નામ ફૂ" છે; બ્લોક બ્લોક અવકાશને બ્લોક અને એન્ડબ્લોક નિવેદનો દ્વારા વ્યાખ્યાયિત કરવામાં આવે છે, જે પાસ્કલમાં પ્રારંભ અંત અથવા C માં {} સમાન હોય છે. બ્લોકને વૈકલ્પિક રીતે ઉન્નત કમ્પાઇલર ચકાસણી અને કાર્યક્ષમતા માટે લેબલ કરી શકાય છે. [લેબલઃ] કેટલાક કોડ EXIT [લેબલ] ને બ્લોક કરો; વધુ કોડ ENDBLOCK [લેબલ] પ્રક્રિયાઓ અને કાર્યો માત્ર RETURNS કલમની હાજરી અને RETURN સ્ટેટમેન્ટનો સમાવેશ કરવાની જરૂરિયાત દ્વારા અલગ પડે છે. રીટર્ન સ્ટેટમેન્ટ કાર્ય અથવા પ્રક્રિયામાં ગમે ત્યાં દાખલ કરી શકાય છે. ઘોષણા પી. આર. ઓ. સી. માયપ્રોકનામ (દલીલ સૂચિ) ફોરવર્ડ છે; પી. આર. ઓ. સી. માયફંકનામ (દલીલ સૂચિ) રીટર્ન પ્રકાર ફોરવર્ડ છે; અમલીકરણ પી. આર. ઓ. સી. માયફંકનામ (દલીલ સૂચિ) રીટર્ન પ્રકાર બ્લોક છે. કોષ્ટકનો ઉપયોગ ફક્ત એરે માટે થાય છે જેનું કદ સંકલન સમયે જાણીતું હોય છે. વર્ણકો એ એરેનો સંદર્ભ લેવાની પસંદગીની રીત છે. ટેબલને શ્રેણીની બહાર અનુક્રમિત કરવાથી ટેબલ રેન્જ ચેક ટ્રેપ થશે. યુપીબી અને ટીડીએસઆઈઝેડ ઓપરેટરો પણ કોષ્ટકો પર લાગુ થાય છે. સંઘો ઓવરલે એ મૂળભૂત સંઘ માળખું છે. તે પાસ્કલ-વંશની ભાષાઓ જેવી જ રીતે જાહેર કરવામાં આવે છે અને તેનો ઉપયોગ થાય છે. એરિયા એ મેમરી બ્લોક્સ છે જે કોષ્ટકો અને ઓવરલેમાં કાસ્ટ કરી શકાય છે. તેઓ બાઇટ્સમાં જાહેર કરવામાં આવે છે અને સામાન્ય રીતે ભવિષ્યના વિસ્તરણ માટે પરવાનગી આપવા માટે પૂરતા મોટા જાહેર કરવામાં આવે છે. આ પુનઃપ્રારંભની જરૂર વગર DMS સોફ્ટવેર 'લાઇવ' ને અપગ્રેડ કરવાની ઇચ્છાને કારણે છે. પ્રોટેલની મોડ્યુલર પ્રકૃતિ કોડના પ્રમાણમાં નાના હિસ્સાને લોડમાં અદલાબદલી કરવાની મંજૂરી આપે છે; જો એ. આર. ઇ. એ. નું આયોજન ચતુરાઈથી કરવામાં આવ્યું હોત, તો તે મેમરીમાં મોડ્યુલોના પ્લેસમેન્ટને અસર કરશે નહીં, જેનાથી પુનઃપ્રારંભ ટાળવામાં આવશે. સબ્સીસ્ટેમ, મોડ્યુલ અને સેક્શન્સ એ એક ટેક્સ્ટ ફાઇલ છે જેમાં સ્રોત કોડ અને વિવિધ વિભાગના પ્રકારો અને મોડ્યુલ પદાનુક્રમમાં તેમની સ્થિતિનું સંચાલન કરવા માટેના નિર્દેશો છે. વિભાગ એ સંકલનનું સૌથી નાનું એકમ છે. મોડ્યુલ એ જોડાણ અને લોડિંગનો સૌથી નાનો એકમ છે અને તેમાં એક અથવા વધુ વિભાગો હોય છે. સબસીસ્ટેમ એ પેકેજિંગનું સૌથી નાનું એકમ છે અને તેમાં એક અથવા વધુ મોડ્યુલો હોય છે. નિયંત્રણ પ્રવાહ કેસ (સ્વીચ) નિવેદનના 2 સ્વરૂપો છે. CASE મુખ્ય શબ્દનો ઉપયોગ જમ્પ ટેબલનો ઉપયોગ કરે છે અને SELECT ક્રમિક જો-તો-અન્ય તર્કનો ઉપયોગ કરે છે. કેસ વિશિષ્ટ છે, તેઓ 20મી સદીમાં બનાવવામાં આવેલી સી. રેફરન્સ પ્રોસિજરલ પ્રોગ્રામિંગ ભાષાઓ નોર્ટેલ પ્રોગ્રામિંગ ભાષાઓની જેમ આવતા નથી.