7

मैं अपने कार्यक्रम से लिंक करने के लिए एक अच्छी पटकथा भाषा की तलाश में हूं। मैं 2 महत्वपूर्ण विशेषताएँ रहा हूँ:स्क्रिप्टिंग भाषाएं

  • स्क्रिप्टिंग भाषा कठिन निष्पादन में जोड़ा जाना चाहिए (3 पार्टी प्रतिष्ठानों की जरूरत नहीं)। वितरण को सरल बनाने के लिए मेरे लिए यह महत्वपूर्ण है।
  • स्क्रिप्टिंग, कुछ रन-टाइम डिबगिंग विकल्प की अनुमति चाहिए

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

+4

आपको अपने कार्यक्रम के बारे में अधिक जानकारी प्रदान करनी चाहिए, यानी भाषा का उपयोग और लक्ष्य ओएस। – Anax

+0

अधिक महत्वपूर्ण सवाल यह होगा कि पुस्तकालयों की आपको क्या आवश्यकता है। – Lothar

उत्तर

2

मैं अपने दो सेंट पाइथन के लिए रखूंगा। मुझे बहुत सारे विवरण नहीं पता हैं, लेकिन कंप्यूटर ग्राफिक्स सूट ब्लेंडर पायथन स्क्रिप्टिंग को लागू करने का एक अद्भुत काम करता है।

जहां तक ​​मेरा,

import sys 
sys.executable 

/blender/blender.exe शो ब्लेंडर 2.5 दुभाषिया निष्पादन अंदर से चलाया जाता है में बता सकते हैं और अच्छा डिबगिंग समर्थन नहीं है, यह भी एक पूर्ण इंटरैक्टिव है अंदर दुभाषिया।

अधिक जानकारी के लिए देखें: http://www.blender.org/

9

Luaडिज़ाइन किया गया है इस के लिए:

  • स्थिर जोड़ने? चेक!
  • debugging? चेक करें!
13

लुआ और पायथन दोनों आपके द्वारा निर्दिष्ट सुविधाओं को प्रदान कर सकते हैं, इसलिए उनमें से एक को अन्य मानदंडों पर निर्भर करेगा।

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

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

+1

दुर्भाग्य से पायथन में "एक एकल निष्पादन योग्य" लिंकिंग के लिए वास्तविक समर्थन की कमी है। डीएलएल/तो libs आसानी से स्थिर रूप से संकलित और लिंक नहीं कर सकते हैं। LUA एक गंभीर पुस्तकालय नहीं होने से समस्या को रोकता है। – Lothar

+2

सभ्यता 5 प्रदर्शन कारणों से लुआ में स्विच किया गया। – Jonas

7

आमतौर पर, लुआ किसी अन्य प्रोजेक्ट में एम्बेड करने के लिए बेहतर विकल्प है। पाइथन एक स्टैंडअलोन प्लेटफ़ॉर्म के रूप में बेहतर है क्योंकि लाइब्रेरी समर्थन इतना व्यापक है। अधिक जानकारी के लिए Lua Versus Python देखें।

व्यक्तिगत रूप से, मैं हाथ में नौकरी के आधार पर अक्सर उपयोग करता हूं। मैं हमेशा सी/सी ++ अनुप्रयोगों या स्क्रिप्टिंग कार्यक्षमता में एम्बेड करने के लिए लुआ का उपयोग करता हूं जो सी/सी ++ साझा पुस्तकालयों (यानी एक डीएलएल) से आयात किया जाता है। पाइथन हमेशा स्टैंडअलोन कार्यों के लिए मेरी पहली पसंद है जिसे कम-स्तर वाले सी/सी ++ कोड की आवश्यकता नहीं होती है।

1

मुझे वास्तव में एम्बेड करने के लिए लुआ पसंद है, लेकिन एक और विकल्प के रूप में, जावास्क्रिप्ट सी, सी ++ (स्पाइडरमोन्की और वी 8) और जावा (राइनो) कार्यक्रमों में आसानी से एम्बेड करने योग्य है।

+0

+1 सच है, यह एक और व्यवहार्य विकल्प है। मैं केवल तभी अनुशंसा करता हूं यदि आप, या अधिक उचित रूप से आपके उपयोगकर्ता/स्क्रिप्टर्स को पहले से ही यह पता चलने की संभावना है। एक बात जो मैं उपरोक्त मेरे उत्तर में उल्लेख करना भूल गया वह यह है कि जब तक आप अपने स्वयं के उपयोग के लिए स्क्रिप्टिंग इंजन को एम्बेड नहीं कर रहे हैं, तो आपको उन लोगों की संभावित प्राथमिकताओं और आवश्यकताओं पर विचार करना चाहिए जो स्क्रिप्टिंग इंटरफ़ेस का उपयोग करेंगे। –

+0

साइमन: मुझे यकीन नहीं है कि मैं उससे कितना सहमत हूं। एक समय था जब सभी ने कहा कि वे एक विस्तार भाषा के रूप में REXX चाहते थे, और मैं 10+ सालों में REXX के साथ देखे गए एक भी प्रोग्राम का नाम नहीं दे सकता। मैं * किसी को भी नहीं जानता * जिन्होंने लिस्प के लिए उनके संपादक के लिए पूछा (यहां तक ​​कि लिस्प प्रोग्रामर!), लेकिन अब Emacs को देखो। जावास्क्रिप्ट (मोटे तौर पर 'जावा जैसी सिंटैक्स के साथ योजना') मूल रूप से वेबपृष्ठों को लिखने वाले विशिष्ट लोगों के सिर पर था, फिर भी किसी भी तरह से लोग समायोजित करने में कामयाब रहे। मुझे लगता है कि अगर भाषा पर्याप्त शक्तिशाली है, और उपयोगकर्ता आपके प्रोग्राम/मंच को हैक करना चाहते हैं, तो उपयोगकर्ता इसे समझ लेंगे। – Ken

0

मैं मिश्रण में टीसीएल जोड़ूंगा। यह अन्य कार्यक्रमों में आसानी से एम्बेडेड करने के लिए डिज़ाइन किया गया है।

1

टीसीएल, लुआ और जावास्क्रिप्ट (सभी पहले से ही उल्लेख किए गए) के अलावा, Guile एक और भाषा स्पष्ट रूप से इसके लिए डिज़ाइन की गई है।