ديناميكية جيدة لغة البرمجة .صافي التوصية [مغلقة]

StackOverflow https://stackoverflow.com/questions/172793

  •  05-07-2019
  •  | 
  •  

سؤال

حسنا, بعد وقت طويل في الكتابة .صافي البرامج في C# بدأت تشعر بالغضب والإحباط عن كل ما النحوية القمامة التي تأتي مع ثابت كتابة اللغات.الآن أريد تغيير حيوي كتابة اللغات التي تستفيد من المبادرة القطرية.لذا بحثت قليلا حول و لم يعجبني ما رأيت.أولا أنا بحثت عن IronPython.ولكن المشروع يبدو غير منظم ، فإنه فقط لا تبدو جيدة على الإطلاق.ثم سمعت عن بو.أحببت بو المثالي لكن يبدو المشروع توقف.ثم سمعت من IronRuby ، ولكن المشروع لا يزال في مرحلة تجريبية ، و لذلك قررت ان انتظر حتى يحصل على أكثر نضجا.

حتى لم أجد جيد CLR متوافق لغة ديناميكية ، أنا أسأل يا رفاق ماذا كنت(كنت) استخدام ؟

منذ بدأ الناس يطلبون ما هو سبب عدم اختيار IronPython.حسنا السبب هو كما ذكر في وقت سابق ، يبدو غير منظم.لماذا ؟

1 - الصفحة الرئيسية نقاط إلى صفحة أخرى في codeplex, الصفحة الرئيسية يجب أن تكون نظيفة و مجرد نقطة مزايا IronPython ، واتخاذ IronRuby الصفحة كمثال http://www.ironruby.net/ أن يخفي اللغة-عملية مسح الاشياء من المستخدم(على الرغم من أن المستخدم لديه الوصول إلى IronRuby هو svn قبل استخدامه).ما نوع القضايا IPython كان يحاول addres عندما أنشئت من أجلها.هل هناك صفحة مع هذا النوع من المعلومات ؟ الصفحة هناك ، ولكن خفية على مزيد من المعلومات صفحة' بين مجموعة من معنى وصلات إلى مقالات.على بو صفحة لها في مشهد واضح يدعى البيان http://boo.codehaus.org/BooManifesto.pdf .

هناك المزيد ولكن الشعور الذي لدي هو أن IPython هو مجرد تصنع في البيت مترجم ، على الرغم من أن ذلك يمكن أن يكون في الواقع.شعرت أنه أكثر أمانا تحميل بو واستخدام IronPython(ولكن لا تقلق مايكروسوفت أيضا تحميلها IPython).

عن البط-الكتابة بو ثابت كتابة كلاهما يبدو أن تعمل بشكل جيد بالنسبة لي.

هل كانت مفيدة؟

المحلول

كنت لا تزال تستخدم بو.لست متأكدا لماذا تعتقد بو قد توقف.التنمية في بعض الأحيان يبدو بطيئا, ولكن هناك العديد من الناس حاليا العمل على إصلاح الأخطاء كما يتبين من هذه قائمة مؤخرا القضايا الثابتة (البق).

بالنسبة لأولئك غير مألوفة مع بو انها مشابهة جدا بيثون ، بل يشمل الأمور أن الثعبان لا (مثل سلسلة الاستيفاء و syntatic وحدات الماكرو).يمكنك تجميع بو البرامج أو استخدام بوو من خلال "بو التفاعلية شل" booish.

بالمناسبة لم يعجبني IronPython إما عندما نظرت إليها قبل بضع سنوات.لي بدا مستقيم ميناء الثعبان إلى CLI ، ولكن بقدر ما يمكنني أن أقول أنه لم تشمل الميزات الجديدة النموذجية .صافي تتطلب التنمية.

تحرير:IronPython لا يبدو أن تقدمت منذ نظرت لأول مرة في ذلك (شكرا على كيرت الإشارة إلى هذا).ومع ذلك لم يكلفوا أنفسهم عناء البحث في IronPython مرة أخرى منذ وجدت بو.

نصائح أخرى

من حيث الاستخدام العملي IronPython سيكون أفضل رهان الآن.

لماذا الناس مما يوحي بو ؟ إنه ثابت كتابة اللغة ، وهو ليس ما هذا السؤال يسأل عنه.نعم, وأنا أعلم أنه قد الاختياري بطة الكتابة ، ولكن في الحقيقة لو بو المعلومات ذات الصلة هو مقبول على السؤال مقدم السؤال ينبغي أن يكون حقا تحريرها لتوضيح ذلك.

فيما يتعلق IronPython قلت أنك لم ترغب في ذلك ، ولكن ليس هناك حقا أي استجابة لا يمكن أن تعطي التعليقات الانتقادية التي هي غامضة جدا :)

بدلا من ذلك, وأود أن أقترح عليك أن نلقي نظرة على cPython.بضع نقاط:

  • يمكنك بناء .ملفات exe مع py2exe وغيرها من الأدوات.
  • أكبر بكثير من الوصول إلى 3rd الطرف الثعبان المكتبات و الأطر
  • الوصول إلى واجهات برمجة تطبيقات Windows عبر pywin32
  • بيثون امتداد مكتوب في C هي قابلة للاستخدام (على عكس IronPython ، رغم أن هناك الجهود حاليا لتحسين هذا الوضع)

سوف تجد أن كنت حقا لا تحتاج .صافي لمعظم الأشياء.طبعا كل هذا يعتمد على التطبيق الخاص بك.دمج مع القائمة .رمز الشبكة ثم من الواضح أن لديك لاستخدام IronPython.

أنت تقول أنك تريد "ديناميكية" ، ولكن إذا كان الدافع هو فقط لتجنب "كل ما النحوية القمامة" ، يجب أن يكون لديك نظرة على F#.إنه ثابت كتبته, ولكن على ضوء جملة يشعر من لغة ديناميكية ، وكذلك الوضع التفاعلي (REPL حلقة).

أنا أتفق مع الرأي الذي IronPython يبدو غير منظم, ولكن لقد تم استخدامه لمدة (الصغيرة) مشاريع و لقد كنت سعيدة جدا مع ذلك حتى الآن.

إذا كنت لم أر حتى الآن ، يجب أن تحقق IronPython Studio.

لقد سلكت مسارا مماثلا.خرج بو ، dotLISP, IronPython ، إلخ.

أوصي IronPython.ولكن إذا كنت لا تملك أي بيثون الخبرة ، ثم ربما كنت سوف تتعلم الأساسية الثعبان أسرع من التحميل CPython واستخدام أن الأمثلة و الدروس.

مرة واحدة كنت قد CPython الفهم ، IronPython سيكون أسهل كثيرا أن نفهم.بالطبع, كنت لا تزال بحاجة إلى فهم بعض C# و الوصول إلى .صافي وثائق SDK.دون ذلك ، IronPython من الصعب للغاية الحصول على الأشياء المفيدة القيام به مع.

يمكنك أيضا أن تأخذ نظرة على مروحة اللغة.فإنه ليس من محض ديناميكية انها خليط من كل ساكنة & ديناميكية.و مثل معظم من أحدث اللغات ، بل هو محض OO مع الخليط الوظيفية في ذلك.كما أنها تعمل على كلا JVM CLR منصة.

جملة من الحكمة بل هو أقرب إلى C# مع الكثير من السكر الجملة لذلك تبدو مثل C# تنسجم مع روبي/بيثون.

منذ اللغة هو جديد فقط 3 سنوات من العمر ، أدائها ليس ممتاز حتى الآن.

تحديث 21-فبراير-2014: مروحة غيرت اسمها إلى Fantom

نلقي نظرة على Clojure.CLR النسخة لا تزال في المراحل المبكرة ولكن يمكن أن تحصل على الأرجح نسخة جافا تعمل في .الشبكة عن طريق IKVM

...النحوية القمامة التي تأتي مع ثابت كتابة اللغات...

إذا كان اهتمامك هو النحوية المهملات فإنك قد ترغب أيضا في التحقق من اللغات كتابتها بشكل ثابت مع نوع الاستدلال ، أبرزها F#.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top