अभिव्यक्ति-उन्मुख प्रोग्रामिंग भाषा: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 4: Line 4:
[[लिस्प (प्रोग्रामिंग भाषा)]]<ref name=":0">{{Cite journal |last=Syme |first=Don |date=2020-06-14 |title=एफ # का प्रारंभिक इतिहास|journal=Proceedings of the ACM on Programming Languages |language=en |volume=4 |issue=HOPL |pages=1–58 |doi=10.1145/3386325 |issn=2475-1421|doi-access=free }}</ref> और [[ALGOL 68|अल्गोल68]] अभिव्यक्ति-उन्मुख भाषाएँ हैं। [[ पास्कल प्रोग्रामिंग भाषा |पास्कल प्रोग्रामिंग भाषा]] एक्सप्रेशन-ओरिएंटेड भाषा नहीं है।
[[लिस्प (प्रोग्रामिंग भाषा)]]<ref name=":0">{{Cite journal |last=Syme |first=Don |date=2020-06-14 |title=एफ # का प्रारंभिक इतिहास|journal=Proceedings of the ACM on Programming Languages |language=en |volume=4 |issue=HOPL |pages=1–58 |doi=10.1145/3386325 |issn=2475-1421|doi-access=free }}</ref> और [[ALGOL 68|अल्गोल68]] अभिव्यक्ति-उन्मुख भाषाएँ हैं। [[ पास्कल प्रोग्रामिंग भाषा |पास्कल प्रोग्रामिंग भाषा]] एक्सप्रेशन-ओरिएंटेड भाषा नहीं है।


सभी [[कार्यात्मक प्रोग्रामिंग भाषा]]एं अभिव्यक्ति-उन्मुख हैं।{{citation needed|date=September 2020}}
सभी [[कार्यात्मक प्रोग्रामिंग भाषा]]एं अभिव्यक्ति-उन्मुख हैं।


== आलोचना और रोकथाम ==
== आलोचना और रोकथाम ==
{{See also|असाइनमेंट (कंप्यूटर विज्ञान) या असाइनमेंट बनाम समानता|रिलेशनल ऑपरेटर  या असाइनमेंट ऑपरेटरों के साथ भ्रम}}
{{See also|असाइनमेंट (कंप्यूटर विज्ञान) या असाइनमेंट बनाम समानता|रिलेशनल ऑपरेटर  या असाइनमेंट ऑपरेटरों के साथ भ्रम}}
आलोचकों, भाषा डिजाइनरों सहित,<ref>[https://www.oracle.com/java/technologies/javase/codeconventions-programmingpractices.html#547 Java Code Conventions "10.4 Variable Assignments"]</ref>{{Failed verification|date=July 2022}} [[सॉफ्टवेयर बग]] की एक पूरी कक्षा के लिए दोष अभिव्यक्ति-अभिविन्यास जिसमें एक प्रोग्रामर गलती से एक [[असाइनमेंट (कंप्यूटर विज्ञान)]] अभिव्यक्ति को कोड करता है, जो एक चर को उस अभिव्यक्ति के साथ [[समानता (रिलेशनल ऑपरेटर)]] के परीक्षण के अतिरिक्त एक अभिव्यक्ति के साथ बदल देता है।
आलोचकों, भाषा डिजाइनरों सहित,<ref>[https://www.oracle.com/java/technologies/javase/codeconventions-programmingpractices.html#547 Java Code Conventions "10.4 Variable Assignments"]</ref> [[सॉफ्टवेयर बग]] की एक पूरी कक्षा के लिए दोष अभिव्यक्ति-अभिविन्यास जिसमें एक प्रोग्रामर गलती से एक [[असाइनमेंट (कंप्यूटर विज्ञान)]] अभिव्यक्ति को कोड करता है, जो एक चर को उस अभिव्यक्ति के साथ [[समानता (रिलेशनल ऑपरेटर)]] के परीक्षण के अतिरिक्त एक अभिव्यक्ति के साथ बदल देता है।


एडा (प्रोग्रामिंग भाषा) और [[ जावा (प्रोग्रामिंग भाषा) |जावा (प्रोग्रामिंग भाषा)]] के डिजाइनर [[सशर्त (कंप्यूटर प्रोग्रामिंग)|नियमबद्ध (कंप्यूटर प्रोग्रामिंग)]] को उन लोगों तक सीमित करके इस प्रकार की गलती को रोकते हैं जो [[बूलियन डेटा प्रकार]] के लिए कड़ाई से मूल्यांकन करते हैं।<ref>[https://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.9 The Java Language Specification, Java SE 8 Edition "14.9 The if Statement"]</ref><ref>[https://www.adaic.org/learn/materials/intro/part4/ Introducing Ada]</ref>
एडा (प्रोग्रामिंग भाषा) और [[ जावा (प्रोग्रामिंग भाषा) |जावा (प्रोग्रामिंग भाषा)]] के डिजाइनर [[सशर्त (कंप्यूटर प्रोग्रामिंग)|नियमबद्ध (कंप्यूटर प्रोग्रामिंग)]] को उन लोगों तक सीमित करके इस प्रकार की गलती को रोकते हैं जो [[बूलियन डेटा प्रकार]] के लिए शक्ति से मूल्यांकन करते हैं।<ref>[https://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.9 The Java Language Specification, Java SE 8 Edition "14.9 The if Statement"]</ref><ref>[https://www.adaic.org/learn/materials/intro/part4/ Introducing Ada]</ref>


पायथन (प्रोग्रामिंग भाषा) के डिजाइनरों ने एक अभिव्यक्ति के अतिरिक्त एक कथन के रूप में असाइनमेंट को प्रयुक्त किया, इस प्रकार असाइनमेंट को किसी अन्य कथन या अभिव्यक्ति के अंदर नेस्ट करने से रोक दिया।<ref name=":1">[https://docs.python.org/3/reference/simple_stmts.html#assignment The Python Language Reference "6.2. Assignment statements"]</ref> (संस्करण 3.8 तक एक अलग सिंटैक्स के साथ 'असाइनमेंट एक्सप्रेशन' जोड़ा गया।<ref>[https://www.python.org/dev/peps/pep-0572/ "PEP 572: Assignment Expressions"]</ref>)
पायथन (प्रोग्रामिंग भाषा) के डिजाइनरों ने एक अभिव्यक्ति के अतिरिक्त एक कथन के रूप में असाइनमेंट को प्रयुक्त किया, इस प्रकार असाइनमेंट को किसी अन्य कथन या अभिव्यक्ति के अंदर नेस्ट करने से रोक दिया।<ref name=":1">[https://docs.python.org/3/reference/simple_stmts.html#assignment The Python Language Reference "6.2. Assignment statements"]</ref> (संस्करण 3.8 तक एक अलग सिंटैक्स के साथ 'असाइनमेंट एक्सप्रेशन' जोड़ा गया।<ref>[https://www.python.org/dev/peps/pep-0572/ "PEP 572: Assignment Expressions"]</ref>)


कुछ अभिव्यक्ति-उन्मुख भाषाओं में, अभिव्यक्तियाँ जो केवल दुष्प्रभाव (कंप्यूटर विज्ञान) का कारण बनती हैं, [[शून्य प्रकार]] लौटाती हैं।
कुछ अभिव्यक्ति-उन्मुख भाषाओं में, अभिव्यक्तियाँ जो केवल दुष्प्रभाव (कंप्यूटर विज्ञान) का कारण बनती हैं, [[शून्य प्रकार]] लौटाती हैं।
 
== उदाहरण                                           ==
'''साइनमेंट को किसी अन्य कथन या अभिव्यक्ति के अंदर नेस्ट करने से रोक दिया।<ref name=":1" /> (संस्करण 3.8 तक एक अलग सिंटैक्स के सा'''                                         
 
== उदाहरण ==
* एल्गोल 68
* एल्गोल 68
*[[परम आनंद]]
*[[परम आनंद]]
Line 42: Line 39:
==संदर्भ==
==संदर्भ==
{{Reflist}}
{{Reflist}}
[[Category: प्रोग्रामिंग भाषा वर्गीकरण]]


[[Category: Machine Translated Page]]
[[Category:Articles with hatnote templates targeting a nonexistent page]]
[[Category:CS1 English-language sources (en)]]
[[Category:Created On 12/05/2023]]
[[Category:Created On 12/05/2023]]
[[Category:Machine Translated Page]]
[[Category:Pages with script errors]]
[[Category:Templates Vigyan Ready]]
[[Category:प्रोग्रामिंग भाषा वर्गीकरण]]

Latest revision as of 16:58, 12 June 2023

एक अभिव्यक्ति उन्मुख प्रोग्रामिंग भाषा एक प्रोग्रामिंग भाषा है जिसमें प्रत्येक (या लगभग हर) निर्माण एक अभिव्यक्ति (कंप्यूटर विज्ञान) है और इस प्रकार एक मान उत्पन्न करता है।[1] विशिष्ट अपवाद मैक्रो (कंप्यूटर विज्ञान) परिभाषाएं, प्रीप्रोसेसर आदेश और घोषणा (कंप्यूटर प्रोग्रामिंग) हैं, जो अभिव्यक्ति-उन्मुख भाषाएं अधिकांशतः कथन (कंप्यूटर विज्ञान) के रूप में व्यवहार करती हैं।

लिस्प (प्रोग्रामिंग भाषा)[2] और अल्गोल68 अभिव्यक्ति-उन्मुख भाषाएँ हैं। पास्कल प्रोग्रामिंग भाषा एक्सप्रेशन-ओरिएंटेड भाषा नहीं है।

सभी कार्यात्मक प्रोग्रामिंग भाषाएं अभिव्यक्ति-उन्मुख हैं।

आलोचना और रोकथाम

आलोचकों, भाषा डिजाइनरों सहित,[3] सॉफ्टवेयर बग की एक पूरी कक्षा के लिए दोष अभिव्यक्ति-अभिविन्यास जिसमें एक प्रोग्रामर गलती से एक असाइनमेंट (कंप्यूटर विज्ञान) अभिव्यक्ति को कोड करता है, जो एक चर को उस अभिव्यक्ति के साथ समानता (रिलेशनल ऑपरेटर) के परीक्षण के अतिरिक्त एक अभिव्यक्ति के साथ बदल देता है।

एडा (प्रोग्रामिंग भाषा) और जावा (प्रोग्रामिंग भाषा) के डिजाइनर नियमबद्ध (कंप्यूटर प्रोग्रामिंग) को उन लोगों तक सीमित करके इस प्रकार की गलती को रोकते हैं जो बूलियन डेटा प्रकार के लिए शक्ति से मूल्यांकन करते हैं।[4][5]

पायथन (प्रोग्रामिंग भाषा) के डिजाइनरों ने एक अभिव्यक्ति के अतिरिक्त एक कथन के रूप में असाइनमेंट को प्रयुक्त किया, इस प्रकार असाइनमेंट को किसी अन्य कथन या अभिव्यक्ति के अंदर नेस्ट करने से रोक दिया।[6] (संस्करण 3.8 तक एक अलग सिंटैक्स के साथ 'असाइनमेंट एक्सप्रेशन' जोड़ा गया।[7])

कुछ अभिव्यक्ति-उन्मुख भाषाओं में, अभिव्यक्तियाँ जो केवल दुष्प्रभाव (कंप्यूटर विज्ञान) का कारण बनती हैं, शून्य प्रकार लौटाती हैं।

उदाहरण


यह भी देखें

संदर्भ

  1. "शब्दावली - द रस्ट प्रोग्रामिंग लैंग्वेज". web.mit.edu. Retrieved 2022-07-06.
  2. 2.0 2.1 Syme, Don (2020-06-14). "एफ # का प्रारंभिक इतिहास". Proceedings of the ACM on Programming Languages (in English). 4 (HOPL): 1–58. doi:10.1145/3386325. ISSN 2475-1421.
  3. Java Code Conventions "10.4 Variable Assignments"
  4. The Java Language Specification, Java SE 8 Edition "14.9 The if Statement"
  5. Introducing Ada
  6. The Python Language Reference "6.2. Assignment statements"
  7. "PEP 572: Assignment Expressions"
  8. "कार्य - जंग प्रोग्रामिंग भाषा". web.mit.edu. Retrieved 2022-07-06.
  9. "COS 326: Functional Programming". www.cs.princeton.edu. Retrieved 2022-07-06.