2010-04-04 17 views
33

मुझे आश्चर्य है कि क्या कोई स्थैतिक टाइप, एम्बेड करने योग्य स्क्रिप्टिंग भाषाएं हैं। पायथन, जावास्क्रिप्ट, आदि बहुत अच्छी भाषाएं हैं, लेकिन वे गतिशील रूप से टाइप किए गए हैं (यानी, रन टाइम पर प्रकार चेक किए जाते हैं)। मैं बस सोच रहा हूं कि क्या किसी को किसी भी स्थिर टाइप की गई स्क्रिप्टिंग भाषाओं के बारे में पता है जिसे सी ++ एप्लिकेशन में एम्बेड किया जा सकता है?क्या कोई स्थैतिक टाइप, एम्बेड करने योग्य स्क्रिप्टिंग भाषाएं हैं?

+5

पाइथन ढीला टाइप कैसे किया जाता है? पायथन में कई ऑपरेशन एक टाइप एरर फेंकते हैं जो सी ++ में अपरिभाषित व्यवहार का कारण बनता है। – sepp2k

+2

उनमें से अधिकतर (पायथन, रूबी, ...) को परिभाषा (@ रनटाइम, जो है) के आधार पर दृढ़ता से टाइप किया जा सकता है। आप अपनी विशिष्ट 'दृढ़ता से टाइप की गई' परिभाषा पर विस्तार करना चाह सकते हैं। – ChristopheD

+1

ओह प्रिय, मैं इस से बाहर एक बुनफाइट ब्रीइंग देख सकता हूं ... – skaffman

उत्तर

3

ठीक है, Ch है - साथ एम्बेड C/C++ दुभाषिया

+0

क्या आप च पर थोड़ा और विस्तार कर सकते हैं? क्या यह क्रॉस-प्लेटफार्म है?क्या यह जीपीएल या एक अलग लाइसेंस के तहत जारी किया गया है? दस्तावेज अद्यतित है? –

+0

@ जॉर्ज: मैंने वास्तव में यह कोशिश नहीं की है (व्यक्तिगत रूप से मुझे बिंदु नहीं दिख रहा है), लेकिन यह क्रॉस प्लेटफॉर्म और मुफ़्त है। ऐसा प्रतीत होता है कि यह अच्छी तरह से प्रलेखित है और इसके साथ एक व्यावसायिक संस्करण भी है (अनुमानतः) पूर्ण समर्थन –

+7

और किस दुनिया में सी 'सांख्यिकीय रूप से टाइप' के रूप में गिना जाता है? –

2

कैसे के बारे में सी #? एक सी # का मोनो के कार्यान्वयन की जाँच करें "पटकथा भाषा" आरईपीएल (http://www.mono-project.com/CsharpRepl)

अद्यतन: आप नहीं जानते कि क्या एक आरईपीएल है, यह तुम क्या देखते है जब आप किसी भी तर्क के बिना अजगर चलाते हैं, या आईआरबी

11

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

हालांकि, एलयू जैसे अन्य लोगों के रूप में उपयोग करना आसान नहीं है, और केवल एक ही .zip डाउनलोड है - इसका मतलब है .exe इंस्टॉलर, .deb संकुल, .dmg या कुछ भी नहीं। आम तौर पर यह ठीक है क्योंकि आप अपने प्रोजेक्ट के किसी भी तरह से एएस को बंडल करना चाहते हैं। मुख्य रूप से लुआ की तुलना में मुख्य रूप से पुस्तकालय बहुत बड़ा है (लेकिन इसमें अधिक सुविधाएं हैं)। ऐसा नहीं है कि बहुत से लोग इसका इस्तेमाल करते हैं, इसलिए उदाहरण और मदद ढूंढना बहुत मुश्किल है, लेकिन अच्छे दस्तावेज़ हैं इसलिए इसे शुरू करना मुश्किल नहीं होना चाहिए।

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

+0

"सी-स्टाइल बैगेज के बारे में चिंता किए बिना": वास्तव में, एंजेलस्क्रिप्ट मुझे "स्क्रिप्टिंग भाषा" के रूप में अर्हता प्राप्त करने के लिए उपयोग करने के लिए बहुत भारी लगता है। – Stefan

1

हास्केल स्थिर रूप से टाइप किया गया है। और आप शायद किसी अन्य प्रोग्राम में ghci या गले लगा सकते हैं (दोनों दुभाषिया हैं)। लेकिन यह आसान नहीं है, afaik।

+0

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

+2

हास्केल बिल्कुल ऑर्डर लगाया गया है। उदाहरण के लिए आईओ क्रियाओं को अनुक्रमित किया गया क्रम वह क्रम है जिसमें वे होंगे। – Evan

संबंधित मुद्दे