क्या प्रोग्रामिंग भाषाविज्ञान में शोध हुआ है?


18

प्रोग्रामिंग भाषाएं औपचारिक भाषाएं हैं , लेकिन कई औपचारिकताओं के विपरीत, उनके पास अपने परिचालन शब्दार्थों द्वारा परिभाषित कुछ निहित अर्थ भी हैं , या, मार्कअप भाषाओं, प्रस्तुति शब्दार्थों के मामले में । और प्रोग्रामिंग भाषाएं, हालांकि वास्तव में औपचारिक हैं, वे संचार की अनुमति के संदर्भ में प्राकृतिक भाषाओं के समान हैं।

जबकि प्रोग्रामिंग भाषाओं का विकास कृत्रिम है, विकास की प्राकृतिक-भाषा प्रक्रियाएं, उधार लेना, दखल देना, और उत्परिवर्तन सभी में स्पष्ट रूप से स्पष्ट कृत्रिम समकक्ष हैं। इसलिए मैं सोच रहा हूं: क्या कभी किसी भाषाविद् के दृष्टिकोण से प्रोग्रामिंग भाषाओं के विकास और व्यवहार में कोई बड़े पैमाने पर, गहन शोध हुआ है  ?


6
पर्ल एक भाषाविद् द्वारा बनाया गया था, और यह अंग्रेजी भाषा की तुलना में गड़बड़ है।
नौकरी

1
@Job: और यह लगभग 23 वर्षों से है, इसे अनगिनत यूनिक्स-जैसे प्लेटफार्मों पर डिफ़ॉल्ट रूप से स्थापित किया गया है, और अभी भी स्वचालन से सब कुछ के लिए नियमित रूप से उपयोग किया जाता है (जिसके लिए यह शेल स्क्रिप्टिंग से क्लीनर की तरह है) वेब विकास के लिए (जिसके लिए यह तरीका है नियमित अभिव्यक्ति के साथ पाठ प्रसंस्करण के अपने मूल उद्देश्य के लिए PHP से क्लीनर (जिसके लिए यह वास्तविक उद्योग मानक स्थापित किया है)। यकीन है कि यह गड़बड़ है, लेकिन एक तरह से जो लोगों के लिए अच्छा काम करता है, और यही वह जगह है जहां पर्ल के विकास में लैरी की भाषा विज्ञान की पृष्ठभूमि एक वरदान थी।
जॉन पूर्डी

@ जॉब के प्रभाव को "वर्सेज़ इज बेटर" en.wikipedia.org/wiki/Worse_is_better कहा जाता है ।
अपालाला

@ अप्लाला: यह असंबंधित है। अगर कुछ भी है, तो पर्ल एक प्रतिरूप है, क्योंकि यह सुविधा संपन्न और जटिल और लोकप्रिय है।
जॉन पूर्डी

जवाबों:


6

याद रखें कि औपचारिक व्याकरण, जिसके बिना आधुनिक प्रोग्रामिंग नहीं हो सकती है, भाषाविद् नोम चोम्स्की के अनुसंधान के उत्पाद हैं ।

एक कार दुर्घटना ने मुझे उस विषय पर एक स्नातक थीसिस खत्म करने से रखा, जिसके बारे में आप पूछते हैं, इसलिए कोई संदर्भ नहीं है जो मैं आपको दे सकता हूं, केवल एक राय।

बोली जाने वाली भाषाएं संदर्भ के आधार पर किसी भी गति से विकसित होती हैं, और वे अप्रत्याशित मानव संदर्भों के रूप में अप्रत्याशित तरीके से ऐसा करते हैं। WW2 के परिणाम का जापानी भाषा पर बहुत प्रभाव पड़ा। ब्रिटिश, आस्ट्रेलियाई, दक्षिण अफ्रीकी और उत्तरी अमेरिकी समान भाषा नहीं बोलते हैं। आज़ादी के दो सौ साल बाद (जो पूर्व कालोनियों को लगता है कि स्पेन की स्पेनिश पुरातन है ) स्पेनिश स्पैनिश उपनिवेश हुआ करते थे, के बीच क्रिया अपघटन का उपयोग काफी अलग हो गया है ।

बस ध्वन्यात्मकता पर दक्षता का बल अलग-अलग क्षेत्रों पर अलग-अलग आवृत्तियों के साथ उपयोग किए जाने वाले अलग-अलग शब्दों को अलग-अलग उच्चारण करता है: बहुत आम शब्दों को स्किम्ड, या गलत वर्तनी, और कम आम लोगों को यथासंभव सटीक रूप से कहा जाता है।

प्राकृतिक भाषाओं, उनकी विविधताओं, बारीकियों, और विकास के साथ हम कंप्यूटर की मांग के निर्धारण के लिए उपयुक्त नहीं हैं। (जी! गलत व्याख्याओं और दूसरी व्याख्याओं की समानता को देखते हुए, ऐसा लगता है कि वे मनुष्यों के बीच सबसे सरल बातचीत के लिए भी उपयुक्त नहीं हैं [लड़की / लड़के-दोस्त जो कहते हैं और जो वास्तव में इसका मतलब है के बारे में चुटकुले से परहेज करना)


हमारे शोध में (मेरे पास एक ट्यूटर था) हमने ग्रीक और लैटिन में देखा क्योंकि उनके पास अच्छी तरह से परिभाषित व्याकरण थे जो हर भूमिका को अच्छी तरह से कवर करते थे, जो कि एक वाक्य में उनकी घोषणा से हो सकता था। यह बहुत अच्छा नहीं था, और लोगों ने वास्तव में उन भाषाओं को कैसे रिकॉर्ड किया, इसका रिकॉर्ड यह कहता है कि यह उनके व्याकरणों से बहुत अलग था, जैसा कि आधुनिक भाषाओं के साथ होता है।
अपाला

4
प्राचीन ग्रीक और लैटिन के बारे में - इस मुद्दे का हिस्सा यह है कि जीवित ग्रंथ प्रकृति में औपचारिक होते हैं - निबंध, अनुबंध, कानूनी नियम आदि, यदि आप उन संदेशों के बारे में सोचते हैं जो हम दिन-प्रतिदिन भेजते हैं - "हाय हनी, कृपया प्राप्त करें घर पर दूध "और" जिम - 9 बजे के लिए केसी रिपोर्ट को याद रखें "- प्राचीन रोम के इन क्षणिक संदेशों में से अधिकांश समय में हमेशा के लिए खो जाएंगे।
होरस्कॉल

2
यह पूरी तरह सच नहीं है। मेरी माँ कभी-कभी अपने हाई-स्कूल लैटिन कक्षाओं के बारे में बात करती है, और उन्होंने एक अनुवाद का उल्लेख किया है, जो रोमन पैट्रिशियन से अपने रथ चालक के लिए एक मेमो है। गिस्ट था, "कृपया, जल्दबाजी के घंटे के दौरान, ऐसा करने वाले रथ के पीछे नहीं फंसें। मुझे नहीं पता कि वह अपने घोड़ों को क्या खिलाता है, लेकिन बदबू आ रही है।"
जॉन आर। स्ट्रोम

4

मैंने प्रश्न को फिर से पढ़ा, और मुझे लगता है कि मेरे मूल उत्तर ने इसे संबोधित नहीं किया। यहाँ एक और कोशिश है।

नहीं, प्रोग्रामिंग भाषा भाषा विज्ञान के बारे में कोई गंभीर शोध नहीं हुआ है जिससे मैं अवगत हूं। दो मुख्य शाखाओं और एक सबब्रांच के लिए भाषा वंशावली का पता लगाया गया है:

इस क्षेत्र में दशकों से हममें से उन लोगों के लिए यह स्पष्ट है कि प्रोग्रामिंग भाषाओं ने हस्तक्षेप किया है, और इस तरह से कोई भी सबसे आधुनिक प्रोग्रामिंग भाषाओं में किसी भी शुद्ध प्रतिमान के अधिकांश पहलुओं को पाता है , जिसे अब मल्टीराडिग्म प्रोग्रामिंग भाषाएं कहा जाता है : सी #, पायथन, जावा, ।। .. पहले से ही OCaml और Haskell जैसी शुद्ध कार्यात्मक भाषाओं में आपको कुछ भी करने के लिए पर्याप्त प्रक्रियात्मक ( मोनैड्स के माध्यम से ) और OO सुविधाएँ शामिल हैं।

जो हुआ है, मुझे लगता है, यह स्पष्ट है कि यह महंगा हो गया था (जब मूर्खतापूर्ण नहीं) प्रोग्रामिंग भाषाओं को स्विच करने के लिए बस एक दिए गए उपप्रोग्राम के लिए एक सही प्रतिमान लागू करने में सक्षम होना चाहिए ।

अत्यधिक समानांतर और अतुल्यकालिक प्रणालियों के क्षेत्र में प्रवृत्ति का अपवाद बना हुआ है। वहां पसंदीदा भाषाएं कड़ाई से कार्यात्मक हैं, एर्लांग की तरह , शायद इसलिए कि ऐसे जटिल प्रणालियों के बारे में कार्यात्मक रूप से सोचना आसान है।

विकासवाद का गैर-विरोधाभासी हिस्सा वाक्य-विन्यास पर रहा है। जिन भाषाओं ने क्रिप्टिक कार्यक्रमों को प्रोत्साहित या अनुमति दी है, वे कम और कम उपयोग किए जाते हैं ( APL , AWK , और यहां तक ​​कि पर्ल और LISP)। आज के वर्चस्व वाले वाक्य रचनाएं सी (सी ++, सी #, जावा, ऑब्जेक्टिव-सी, स्काला, गो, आईएमएल, सीएसएस, जावास्क्रिप्ट और भी पायथन), पास्कल (फोरट्रान 90+) जैसी अधिक पठनीय (आसानी से लिखने योग्य) भाषाओं के विपरीत हैं। x), स्मॉलटॉक (रूबी), ML / मिरांडा (OCaml, Haskell, Erlang), और SGML (HTML, XML)।

यह आरेख पूरी तरह से सही नहीं है, और यह अद्यतित नहीं है, लेकिन यह एक अच्छा विचार देता है कि 1970 की भाषा-प्रति-साइट युग के बाद से प्रोग्रामिंग भाषाओं ने कितना परिवर्तन किया है।

प्रोग्रामिंग भाषा का विकास


1
यह बहुत अधिक है जैसे मैं क्या देख रहा था। मुझे लगता है कि मैं भी औपचारिक व्याकरण के साथ काम करने से आने वाले वाक्य रचना के साथ स्पष्ट जुड़ाव के शीर्ष पर आकृति विज्ञान और स्वर विज्ञान के साथ प्रत्यक्ष संबंध की तलाश कर रहा हूं।
जॉन पूर्डी

@Jon खैर, दूसरी स्पष्ट प्रवृत्ति यह है कि अंग्रेजी थी और सभी प्रोग्रामिंग भाषाओं में अंतर्निहित प्राकृतिक भाषा है, जो दोनों वाक्यात्मक और व्याकरणिक रूप से अंतर्निहित है। प्रोग्रामिंग भाषाएं बाएं से दाएं, क्रिया-प्रथम हैं। उदाहरण के लिए, जापानी, बहुत अलग है, लेकिन मुझे जापानी शैली की प्रोग्रामिंग भाषा विकसित करने के लिए कोई प्रयास नहीं है। en.wikipedia.org/wiki/J
जींस_language#Sentence_structure

@ अप्लाला: एसओवी ऑर्डर स्टैक-ओरिएंटेड भाषाओं में आम है, इन्फिक्स ऑपरेटर एसवीओ के रूप में गिने जाते हैं, और फ़ंक्शन (लिस्प पैथोलॉजिकल उदाहरण हैं) वीएसओ हैं। अंग्रेजी निश्चित रूप से एक मजबूत प्रभाव है, लेकिन मुझे लगता है कि काम पर अन्य कारक हैं ... मुझे यह शोध स्वयं करना पड़ सकता है। : पी
जॉन पूर्डी

@ जॉन हां, मैं फोर्थ और पोस्टस्क्रिप्ट के बारे में भूल गया, जो स्टैक-आधारित और एसओवी दोनों हैं। यदि आप अनुसंधान शुरू करते हैं तो कृपया मुझे बताएं। मैं विश्वविद्यालय में भाषा सिद्धांत में विशेषज्ञता प्राप्त करता हूं, और प्रोग्रामिंग भाषाएं अब भी मेरा शौक हैं। मेरे पास उनमें से कई (सिमुला, प्रोलॉग, एलआईएसपी) के पहले-दूसरे याद हैं।
अपाला

@Jon आपको यह दिलचस्प लग सकता है कि कई स्पैनिश भाषी प्रोग्रामर स्पैनिश में पहचानकर्ताओं का उपयोग करना पसंद करेंगे, भले ही वे प्रोग्रामिंग भाषाओं, पुस्तकालयों, रूपरेखा, मानकों और उनके द्वारा उपयोग किए जाने वाले टूल से बुरी तरह मेल खाते हों। उनके कार्यक्रम "स्पैंग्लिश" में समाप्त होते हैं। मैंने पूर्व-यूरोपीय लोगों की तरह रोमन / लैटिन विरासत के साथ अन्य भाषाओं में देशी भाषाओं के साथ प्रोग्रामर के साथ पसंद देखी है। मुझे इस बारे में कोई जानकारी नहीं है कि सुदूर-पूर्व (चीनी, जापानी, कोरियाई), रूसी या अरब प्रोग्रामर क्या करना पसंद करते हैं।
अपाला

1

मुझे @ अपाला के उत्तर पसंद हैं, जो कुछ प्रमुख सामान्य-उद्देश्य वाली भाषाओं में अभिसरण दिखाते हैं। यह केवल समझ में आता है, क्योंकि एक अच्छा विचार जल्द ही या बाद में दूसरों द्वारा उठाया जा सकता है।

मैं यह जोड़ूंगा कि जब भी कोई भाषा का उपयोग कर रहा होता है, तो वे आवश्यक रूप से इसे बढ़ा रहे होते हैं, शब्दों को जोड़कर, इसे हाथ में डोमेन के लिए अधिक उन्मुख भाषा में परिवर्तित कर देते हैं। कभी-कभी यह बिल्कुल सीधा होता है, कभी-कभी नहीं। यहाँ एक उदाहरण है जो इतना सीधा नहीं था।

एक संपत्ति जिसे मैं सामान्य प्रयोजन की भाषा में सराहना करता हूं, वह वह सीमा है, जो नई डोमेन-विशिष्ट भाषाओं की परिभाषा में सहायता करती है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.