क्या कोई प्रोग्रामिंग भाषा सिद्धांत विदेशी फ़ंक्शन इंटरफेस (एफएफआई) और कई भाषा बाइंडिंग का वर्णन करता है?


16

क्या कोई प्रोग्रामिंग भाषा सिद्धांत विदेशी फ़ंक्शन इंटरफेस (एफएफआई) और कई भाषा बाइंडिंग का वर्णन करता है?

मैंने स्टैकओवरफ्लो पर कुछ कार्यान्वयन मुद्दे पूछे हैं , जो यहां उपयुक्त नहीं है। लेकिन मैं इस साइट के दृष्टिकोण से पूछना चाहता हूं और देखना है कि मुझे यहां से क्या मिल सकता है।

वास्तव में आपके उत्तर की सराहना करते हैं!

के लिए डेव क्लार्क को धन्यवाद मेटा पर उनका जवाब !

जवाबों:


17

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

पेपर जेएनआई लाइट: गैंग टैन द्वारा कोर जेएनआई के लिए एक ऑपरेशनल मॉडल मौजूदा जेएनआई काम करता है का एक औपचारिक शब्दार्थ प्रस्तुत करता है। पिछले पेपर के विपरीत, यह एक संस्थापक दृष्टिकोण से मुद्दों का पता लगाने की कोशिश करने के बजाय क्या हो रहा है, इसके निम्न स्तर के विवरणों में से कई को औपचारिकता है।

माइकल फुर्र और जेफरी फोस्टर द्वारा फॉरेन फंक्शन कॉल्स की चेकिंग टाइप सेफ्टी जैसे टाइप- फंक्शन फॉरेन फंक्शन कॉल्स पर काम करते हैं, यह भी एक औपचारिक फ्रेमवर्क प्रदान करते हैं जिसमें टाइप सिस्टम को वाक्यांश देना और उसकी साउंडनेस को साबित करना है।

इन पत्रों में संदर्भों को देखने और यह पता लगाने में कि वे Google विद्वान का उपयोग करके उद्धृत किए गए हैं, आपको उस क्षेत्र में क्या किया गया है, इसकी अधिक गहन तस्वीर को खोजने में मदद करेगा।


10

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

हालाँकि, मार्क पूरी तरह से दोष के बिंदु पर सही है, और मैथ्यूज़ पेपर जो डेव बताते हैं, इस मुद्दे पर भी चर्चा करता है।


1
"वेल टाइपेड प्रोग्राम्स" पेपर वास्तव में सही उद्धरण प्रदान करता है, और इसके विशिष्ट योगदान का दावा करता है "प्रदान करता है" एक प्रकार की प्रणाली को दोष (अनुबंधों से) की धारणा पेश करके अनुबंधों, क्रमिक प्रकारों, और संकर प्रकारों पर हाल के काम का एक समान दृष्टिकोण। जातियों के साथ (क्रमिक और संकर प्रकारों के लिए मध्यवर्ती भाषाओं के समान), एक प्रणाली को उपजाना जिसे हम विकासवादी प्रकार कहते हैं। "
sclv

2
मेरी माफी सैम "दोष" की उत्पत्ति के लिए एक हिस्सा था, जो उन सभी को पूरा श्रेय देने में विफल रहने के लिए सैम। यह सिर्फ उन कागजों के साथ हुआ, जो वाडलर ने सह-लेखित किए, जिन्होंने मुझे इस विचार से परिचित कराया और मैं सबसे आसानी से परिचित हूं।
मार्क हैमन

9

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

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

उम्मीद है कि आप देख सकते हैं कि एफएफआई और बाइंडिंग के लिए यह कैसे उपयोगी हो सकता है जो विभिन्न प्रकार की प्रणालियों के साथ भाषाओं पर लागू होता है।

संपादित करें: "दोष" की अवधारणा के पूर्ण बौद्धिक इतिहास के लिए सैम टीएच का उत्तर देखें।

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