2009-06-10 16 views
11

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

एक त्वरित खोज ने Java2Script को जावा-टू-जावास्क्रिप्ट समाधान के रूप में प्रकट किया। क्या कोई अन्य परिपक्व कंपाइलर है जो जावास्क्रिप्ट रनटाइम को लक्षित करता है?

+0

हम http://websharper.com/ विकसित करते हैं जो जावास्क्रिप्ट को F # संकलित करता है। – t0yv0

उत्तर

3

OpenLaszlo ओपन सोर्स एक्सएमएल -> जावास्क्रिप्ट (तकनीकी रूप से डीएचटीएम, फ्लैश को संकलित भी कर सकता है) कंपाइलर पर है। मैंने इसके साथ थोड़ा सा खेला है और यह दिलचस्प लग रहा था, हालांकि इसे कभी गंभीरता से इस्तेमाल नहीं किया है (जब मैंने कोशिश की तो खराब आईडीई समर्थन)।

Objective-j एक समान प्रोजेक्ट है जो उद्देश्य-सी जैसा दिखता है, हालांकि जावास्क्रिप्ट के रूप में चलता है (सुनिश्चित नहीं है कि यह इसे संकलित करता है या जेएस दुभाषिया है)। मुझे इसके बारे में बहुत कुछ पता नहीं है, लेकिन समय-समय पर Ajaxian पर इसके बारे में पोस्ट देखें।

+0

उद्देश्य-जे रनटाइम या समय से पहले संकलित करता है। यद्यपि यह कुछ अतिरिक्त संरचनाओं के साथ ज्यादातर जावास्क्रिप्ट है। – cobbal

+0

उद्देश्य-जे का अर्थ है (जावास्क्रिप्ट इंजन द्वारा)। यह व्यक्तिगत रूप से मेरे स्वाद के लिए थोड़ा अजीब लग रहा है, लेकिन यह http://280atlas.com/ उद्देश्य-जे में लिखा गया है, और यह शानदार दिखता है। हालांकि मुझे यकीन है कि जीडब्ल्यूटी में भी इसी तरह की चीज संभव है। – Chii

+0

उद्देश्य-जे कोड बदसूरत लग रहा है। मुझे ऑब्जेक्टिव-सी कोड से भी नफरत है ... ओपनलाज़ीओ वास्तव में बहुत अच्छा लग रहा है, मैं इसे कुछ समय भी कोशिश कर सकता हूं। –

2

जबकि वहाँ अन्य उत्पादों जो जावास्क्रिप्ट (अन्य टिप्पणी में बताया गया है) करने के लिए संकलन कर रहे हैं, मुझे विश्वास है कि GWT अब तक, है वास्तविक दुनिया के उपयोग के संदर्भ में, वहां सबसे परिपक्व व्यक्ति है। साधारण तथ्य यह है कि Google के कई मूल अनुप्रयोग जीडब्ल्यूटी का उपयोग करते हैं (उदाहरण: नए एडवर्ड्स जीयूआई, Google तरंग, आदि) का मतलब है कि आपको विश्वास हो सकता है कि उत्पाद कम से कम अगले कुछ वर्षों तक बनाए रखा जा रहा है, यह नहीं है बस जल्द ही दूर फीका जा रहा है।

ध्यान में रखना एक और बात यह है कि जीडब्ल्यूटी एक जावा-टू-जावास्क्रिप्ट कंपाइलर से कहीं अधिक है, यह एक अनुकूल कंपेलर भी है, यह मोड होस्ट किया गया है, यह मूल जावास्क्रिप्ट के साथ पूरी तरह से अंतःक्रियाशील है, यह छवि बंडलिंग करता है, यह नए संस्करण में कोड विभाजित करता है, आदि

+0

Google ने सार्वजनिक रिलीज के 3 महीने से भी कम समय में वेव विकास को निलंबित कर दिया, इसलिए पूर्व-निरीक्षण में मुझे यकीन नहीं है कि जीडब्ल्यूटी की अनुमानित दीर्घायु का सबसे अच्छा उदाहरण था। :-) – Ken

4

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

4

Pyjamas पाइथन को जावास्क्रिप्ट में संकलित करता है।

HotRuby जावास्क्रिप्ट और फ्लैश के तहत रूबी स्रोत कोड चलाता है।

Orto जावास्क्रिप्ट में लागू एक JVM है (था?) है। (मूल साइट डाउन है; लिंक एक ब्लॉग एंट्री है।)

ZK framework, जो जीडब्ल्यूटी के खिलाफ अनुकूल रूप से तुलना करना पसंद करता है, जावास्क्रिप्ट उत्पन्न करने के लिए जावा और एक्सएमएल का उपयोग करता है। (वे दावा करते हैं कि जीडब्ल्यूटी से एक ही सामान करने के लिए बहुत कम कोड लेता है।)

और मैंने यह अच्छी तरह से तर्क दिया है कि jQuery एक अलग भाषा है जो जावास्क्रिप्ट में लागू होने और चलाने के लिए होती है। :-)

4

आपके पास haXe भी है। इसमें स्थैतिक, संरचनात्मक, मजबूत और अनुमानित टाइपिंग शामिल है; बीजगणित डेटा प्रकार; बंद समर्थन के साथ लैम्ब्डा अभिव्यक्ति; एक मॉड्यूल सिस्टम और न केवल जावास्क्रिप्ट को संकलित कर सकता है बल्कि फ़्लैश, सी ++, नेको, PHP भी संकलित कर सकता है। जावा समर्थन भी विकास में है।एक Statecharts करने वाली जावास्क्रिप्ट संकलक

0

यहाँ एक परियोजना मैं शुरू करने के लिए एक बेशर्म प्लग है और विकसित करने के लिए जारी कर रहा हूँ 2011 के मध्य में। ClojureScript Google क्लोजर कंपाइलर और क्लोजर फ्रेमवर्क का उपयोग करते हुए, जावास्क्रिप्ट में क्लोजर स्रोत कोड संकलित करता है। ClojureScript कोड ब्राउज़र क्लाइंट, या node.js सर्वर पर दोनों चला सकता है।

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