कॉमट्रान: Difference between revisions
No edit summary |
No edit summary |
||
Line 9: | Line 9: | ||
}} | }} | ||
'''कॉमट्रान''' (कमर्शियल ट्रांसलेटर) [[IBM|आईबीएम]] में विकसित | '''कॉमट्रान''' (कमर्शियल ट्रांसलेटर) [[IBM|आईबीएम]] में विकसित प्रारंभिक [[प्रोग्रामिंग भाषा]] है। इसका उद्देश्य वैज्ञानिक प्रोग्रामिंग भाषा [[FORTRAN|फोरट्रान]] (FORmula TRANslator) के समकक्ष व्यावसायिक प्रोग्रामिंग था। इसने [[COBOL|कोबोल]] भाषा के अग्रदूतों में से के रूप में कार्य किया। 1957 में [[बॉब बेमर]] द्वारा विकसित, यह भाषा प्रोग्रामिंग भाषा तत्व को प्रदर्शित करने वाली पहली भाषा थी जिसे [[ चित्र खंड |चित्र खंड]] के रूप में जाना जाता है। | ||
==COBOL में योगदान== | ==COBOL में योगदान== | ||
कॉमट्रान के | कॉमट्रान के अनेक तत्वों को कोबोल में शामिल किया गया: | ||
*चित्र खंड. | *चित्र खंड. | ||
*पैराग्राफिंग: कोड को पैराग्राफ में विभाजित करना (लाइन ब्रेक महत्वपूर्ण नहीं है)। | *पैराग्राफिंग: कोड को पैराग्राफ में विभाजित करना (लाइन ब्रेक महत्वपूर्ण नहीं है)। | ||
*पैराग्राफ नाम. पैराग्राफों और जंप्स को नाम निर्दिष्ट करना ({{code|GO TO}}'s) | *पैराग्राफ नाम. पैराग्राफों और जंप्स को नाम निर्दिष्ट करना ({{code|GO TO}}'s) अनुच्छेद नाम के लिए हैं, किसी पंक्ति संख्या के लिए नहीं। | ||
*{{code|AT END}}फ़ाइल इनपुट संचालन पर खंड। | *{{code|AT END}}फ़ाइल इनपुट संचालन पर खंड। | ||
*आलंकारिक स्थिरांक {{code|HIGH-VALUE}}. | *आलंकारिक स्थिरांक {{code|HIGH-VALUE}}. | ||
Line 23: | Line 23: | ||
{{main|चित्र उपवाक्य}} | {{main|चित्र उपवाक्य}} | ||
एक चित्र खंड तत्व परिभाषित करता है कि आउटपुट के लिए किसी विशेष डेटा आइटम को कैसे स्वरूपित किया जाना चाहिए। इसमें अक्षरों और अंकों की | एक चित्र खंड तत्व परिभाषित करता है कि आउटपुट के लिए किसी विशेष डेटा आइटम को कैसे स्वरूपित किया जाना चाहिए। इसमें अक्षरों और अंकों की श्रृंखला होती है। यह रीड और राइट स्टेटमेंट में देखे गए फोरट्रान प्रारूप विनिर्देशक या सी जैसी अधिक आधुनिक भाषाओं में देखी जाने वाली फ़ॉर्मेटिंग स्ट्रिंग के समान है। यह कोबोल का महत्वपूर्ण हिस्सा बन गया। | ||
==नमूना कार्यक्रम== | ==नमूना कार्यक्रम== | ||
यह | यह नमूना COMTRAN प्रोग्राम है, जो पेरोल गणना करता है।<ref>See the example on page 87 of the [http://bitsavers.org/pdf/ibm/7090/F28-8043_CommercialTranslatorGenInfMan_Ju60.pdf IBM F28-8043 Commercial Translator General Reference Manual, June 1960] (pdf, 8.2M)</ref> | ||
<syntaxhighlight lang="cobol"> | <syntaxhighlight lang="cobol"> | ||
01001 *PROCEDURE | 01001 *PROCEDURE |
Revision as of 21:08, 19 July 2023
Developer | बॉब बेमर |
---|---|
पहली प्रस्तुति | 1957 |
Influenced by | |
FLOW-MATIC | |
Influenced | |
कोबोल |
कॉमट्रान (कमर्शियल ट्रांसलेटर) आईबीएम में विकसित प्रारंभिक प्रोग्रामिंग भाषा है। इसका उद्देश्य वैज्ञानिक प्रोग्रामिंग भाषा फोरट्रान (FORmula TRANslator) के समकक्ष व्यावसायिक प्रोग्रामिंग था। इसने कोबोल भाषा के अग्रदूतों में से के रूप में कार्य किया। 1957 में बॉब बेमर द्वारा विकसित, यह भाषा प्रोग्रामिंग भाषा तत्व को प्रदर्शित करने वाली पहली भाषा थी जिसे चित्र खंड के रूप में जाना जाता है।
COBOL में योगदान
कॉमट्रान के अनेक तत्वों को कोबोल में शामिल किया गया:
- चित्र खंड.
- पैराग्राफिंग: कोड को पैराग्राफ में विभाजित करना (लाइन ब्रेक महत्वपूर्ण नहीं है)।
- पैराग्राफ नाम. पैराग्राफों और जंप्स को नाम निर्दिष्ट करना (
GO TO
's) अनुच्छेद नाम के लिए हैं, किसी पंक्ति संख्या के लिए नहीं। AT END
फ़ाइल इनपुट संचालन पर खंड।- आलंकारिक स्थिरांक
HIGH-VALUE
. - संख्यात्मक मान पास करना (
RETURN-CODE
) प्रोग्राम से बाहर निकलने पर (सिस्टम कॉल) ऑपरेटिंग सिस्टम पर वापस आ जाता है।
चित्र खंड
एक चित्र खंड तत्व परिभाषित करता है कि आउटपुट के लिए किसी विशेष डेटा आइटम को कैसे स्वरूपित किया जाना चाहिए। इसमें अक्षरों और अंकों की श्रृंखला होती है। यह रीड और राइट स्टेटमेंट में देखे गए फोरट्रान प्रारूप विनिर्देशक या सी जैसी अधिक आधुनिक भाषाओं में देखी जाने वाली फ़ॉर्मेटिंग स्ट्रिंग के समान है। यह कोबोल का महत्वपूर्ण हिस्सा बन गया।
नमूना कार्यक्रम
यह नमूना COMTRAN प्रोग्राम है, जो पेरोल गणना करता है।[1]
01001 *PROCEDURE
01002 CALL (EMPLOYEE.NUMBER) EMPLOYNO,
01003 (BONDEDUCTION) BONDEDUCT,
01004 (BONDENOMINATION) BONDENOM,
01005 (BONDACCUMULATION) BONDACCUM,
01006 (INSURANCE.PREM) INSPREM,
01007 (RETIREMENT.PREM) RETPREM,
01008 (DEPARTMENT.TOTAL) DPT.
01009 START. OPEN ALL FILES.
01010 GET.MASTER. GET MASTER, AT END DO END.OF.MASTERS.
01011 GET.DETAIL. GET DETAIL, AT END GO TO END.OF.DETAILS.
01012 COMPARE.EMPLOYEE.NUMBERS. GO TO COMPUTE.PAY WHEN DETAIL EMPLOYNO
01013 IS EQUAL TO MASTER EMPLOYNO, LOW.DETAIL WHEN DETAIL
01014 EMPLOYNO IS LESS THAN MASTER EMPLOYNO.
01015 HIGH.DETAIL. MOVE 'M' TO MASTER ERRORCODE, FILE MASTER IN
01016 ERROR.FILE.
01017 GET MASTER, AT END DO END.OF.MASTERS.
01018 GO TO COMPARE.EMPLOYEE.NUMBERS.
02001 LOW.DETAIL. MOVE 'D' TO DETAIL ERRORCODE, FILE DETAIL IN
02002 ERROR.FILE.
02003 GO TO GET.DETAIL.
02004 END.OF.MASTERS. IF DETAIL EMPLOYNO = HIGH.VALUE THEN GO TO
02005 END.OF.RUN OTHERWISE SET MASTER EMPLOYNO = HIGH.VALUE.
02006 END.OF.DETAILS. IF MASTEREMPLOYNO = HIGH.VALUE THEN GO TO
02007 END.OF.RUN OTHERWISE SET DETAIL EMPLOYNO = HIGH.VALUE, GO
02008 TO COMPARE.EMPLOYEE.NUMBERS.
02009 END.OF.RUN. MOVE CORRESPONDING GRAND.TOTAL TO PAYRECORD, FILE
02010 PAYRECORD, CLOSE ALL FILES.
02011 STOP 1234.
02012 COMPUTE.PAY. IF DETAIL HOURS IS GREATER THAN 40 THEN SET DETAIL
02013 GROSS = (DETAIL HOURS - 40) * MASTER RATE * 1.5.
02014 SET DETAIL GROSS = DETAIL GROSS + MASTER RATE * 40, DO
02015 FICA.ROUTINE, DO WITHHOLDING.TAX.ROUTINE.
02016 IF MASTER BONDEDUCT IS NOT EQUAL TO ZERO THEN DO
02017 BOND.ROUTINE.
02018 DO SEARCH FOR INDEX = 1(1)12.
02019 NET. SET PAYRECORD NETPAY = DETAIL GROSS - DETAIL FICA - DETAIL
02020 WHT -DETAIL RETIREMENT - DETAIL INSURANCE - DETAIL
02021 BONDEDUCT.
संदर्भ
- ↑ See the example on page 87 of the IBM F28-8043 Commercial Translator General Reference Manual, June 1960 (pdf, 8.2M)
अग्रिम पठन
- आईबीएम के प्रारंभिक कंप्यूटर, चार्ल्स बाशे, लाइल जॉनसन, जॉन पामर और एमर्सन पुघ द्वारा, 1986, एमआईटी प्रेस, ISBN 0-262-02225-7.