Third-generation programming language
तीसरी पीढ़ी की प्रोग्रामिंग भाषा (3जीएल) एक उच्च-स्तरीय कंप्यूटर प्रोग्रामिंग भाषा है जो पहली पीढ़ी के मशीन कोड और दूसरी पीढ़ी की असेंबली भाषाओं की तुलना में अधिक मशीन-स्वतंत्र और प्रोग्रामर-अनुकूल होती है, जबकि चौथी और पांचवीं पीढ़ी के लिए कम विशिष्ट ध्यान केंद्रित करती है। आम और ऐतिहासिक तीसरी पीढ़ी की प्रोग्रामिंग भाषाओं के उदाहरण एएलजीओएल, बेसिक, सी, कोबोल, फोरट्रान, जावा और पास्कल हैं। विशेषताएँ 3जीएल बहुत अधिक मशीन-स्वतंत्र और अधिक प्रोग्रामर-अनुकूल हैं। इसमें समग्र डेटा प्रकारों के लिए बेहतर समर्थन और अवधारणाओं को इस तरह से व्यक्त करने जैसी विशेषताएं शामिल हैं जो कंप्यूटर के बजाय प्रोग्रामर का पक्ष लेती हैं। कंप्यूटर द्वारा गैर-आवश्यक विवरणों का ध्यान रखने से तीसरी पीढ़ी की भाषा दूसरी पीढ़ी की भाषा की तुलना में बेहतर होती है। 3जीएल भाषाओं की पिछली पीढ़ियों की तुलना में अधिक अमूर्त हैं, और इस प्रकार उन्हें उनकी पहली और दूसरी पीढ़ी के समकक्षों की तुलना में उच्च-स्तरीय भाषाएं माना जा सकता है। पहली बार 1950 के दशक के अंत में पेश किया गया, फोरट्रान, ए. एल. जी. ओ. एल. और सी. ओ. बी. ओ. एल. शुरुआती 3जी. एल. के उदाहरण हैं। आज की सबसे लोकप्रिय सामान्य-उद्देश्य वाली भाषाएँ, जैसे सी, सी + +, सी #, जावा, बेसिक और पास्कल भी तीसरी पीढ़ी की भाषाएँ हैं, हालाँकि इनमें से प्रत्येक भाषा को अन्य समकालीन लक्षणों के आधार पर अन्य श्रेणियों में विभाजित किया जा सकता है। अधिकांश 3जीएल संरचित प्रोग्रामिंग का समर्थन करते हैं। कई ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग का समर्थन करते हैं। इस तरह की विशेषताओं का उपयोग अक्सर केवल 3जीएल होने के बजाय किसी भाषा का वर्णन करने के लिए किया जाता है। सी, फोरट्रान, या पास्कल जैसी प्रोग्रामिंग भाषा एक प्रोग्रामर को ऐसे प्रोग्राम लिखने में सक्षम बनाती है जो किसी विशेष प्रकार के कंप्यूटर से कमोबेश स्वतंत्र होते हैं। ऐसी भाषाओं को उच्च-स्तरीय माना जाता है क्योंकि वे मानव भाषाओं के करीब हैं और मशीनी भाषाओं से आगे हैं, और इसलिए संकलन या व्याख्या की आवश्यकता होती है। इसके विपरीत, मशीनी भाषाओं को निम्न-स्तरीय माना जाता है क्योंकि उन्हें आगे अनुवाद की आवश्यकता के बिना भौतिक हार्डवेयर द्वारा डिज़ाइन और निष्पादित किया जाता है। निम्न-स्तरीय भाषाओं की तुलना में उच्च-स्तरीय भाषाओं का मुख्य लाभ यह है कि उन्हें पढ़ना, लिखना और बनाए रखना आसान है। अंततः, एक उच्च-स्तरीय भाषा में लिखे गए कार्यक्रमों का एक संकलक द्वारा मशीन भाषा में या एक दुभाषिया द्वारा सीधे व्यवहार में अनुवाद किया जाना चाहिए। ये कार्यक्रम विभिन्न मशीनों पर चल सकते थे (वे पोर्टेबल हैं) इसलिए वे मशीन-स्वतंत्र थे। हालाँकि, जैसे-जैसे नई, अधिक अमूर्त भाषाएँ विकसित की गई हैं, उच्च और निम्न-स्तरीय भाषाओं की अवधारणा अपेक्षाकृत सापेक्ष हो गई है। पायथन, रूबी और कॉमन लिस्प जैसी भाषाओं की तुलना में कई प्रारंभिक "उच्च-स्तरीय" भाषाओं को अब अपेक्षाकृत निम्न-स्तरीय माना जाता है, जिनमें चौथी पीढ़ी की प्रोग्रामिंग भाषाओं की कुछ विशेषताएं हैं और जिन्हें 1990 के दशक में बहुत उच्च-स्तरीय प्रोग्रामिंग भाषाएँ कहा जाता था। प्रोग्रामिंग भाषा पीढ़ियाँ डोमेन-विशिष्ट प्रोग्रामिंग भाषा संदर्भ प्रोग्रामिंग भाषा वर्गीकरण भी देखें।