George Hotz | Programming | Fun with MuZero and MCTS on a lovely Sunday | CartPole | DeepMind AI
لغات البرمجة ذات التصنيف التجاري اليوم - C ++ وجافا على وجه الخصوص - هي معقدة للغاية وغير مناسبة بشكل مناسب لبيئات الحوسبة اليوم ، جادل مهندس روب المرموق روب بايك في حديث يوم الخميس في مؤتمر أورايلي مفتوح المصدر.
قدم بايك قضيته ضد مثل هذه "لغات البرمجة الصناعية" خلال حديثه في المؤتمر في بورتلاند ، أوريغون.
"أعتقد أن هذه اللغات صعبة الاستخدام للغاية ، ودقيقة للغاية ، ومعقدة للغاية. إنها مطولة أكثر من اللازم ، ويبدو أن دقتها ، وتعقيدها وصلابتها أن يتزايد مع مرور الوقت ، "قال بايك. "إنهم ذروة بيع ، ويستخدمون بشكل واسع للغاية."
شرح بايك أوجه القصور في هذه اللغات كطريقة لوصف الأهداف التي لديه ومهندسو Google الآخرون لتطوير لغة برمجة جديدة قاموا بتطويرها ، تسمى Go.
كدليل على تعقيد هذه اللغات ، أظهر بايك بعض الأمثلة على كود C ++. ومن الأمثلة على ذلك إعلان متغير امتد عبر خط كامل من الشاشة.
"كيف يكون لدينا مثل هذه الأشياء [يجب أن تكون] الطريقة القياسية للحوسبة التي يتم تدريسها في المدارس وتستخدم في الصناعة؟ " سأل ، بلاغي. وقال إن هذا النوع من البرمجة "بيروقراطي للغاية. يجب أن تكون كل خطوة مبررة للمترجم." بينما اعترف بايك بأنه كان متيزًا إلى حد ما ، أكد أن مثل هذه الأسئلة لا يزال يتعين طرحها. جاء C ++ بسبب إحباط الناس بالعمل مع لغة C منخفضة المستوى ، وجافا جاءت كطريقة لتبسيط C ++. ومع مرور الوقت ، تم إضافة ميزات جديدة إلى كلتا اللغتين ، مما يجعلها أكثر تعقيدًا.
"الضجيج يأتي مع التطور". [
] وأضاف بايك أن هذه اللغات تم تطويرها قبل ظهور معالجة متعددة النواة. وعلى نطاق واسع ، حتى لا تستوعب هذه البيئات الجديدة بسهولة.
بايك ليس الموظف الوحيد في Google الذي يعبر عن عدم رضاه عن اللغات التجارية التقليدية.
في مؤتمر USENIX السنوي الشهر الماضي ، مهندس Gmail Adam de Boor فاجأ الجمهور من خلال ملاحظة أن خدمة Gmail في الشركة تمت كتابتها بالكامل بلغة جافا سكريبت ، وأن جميع رموزها ، التي تبلغ قيمتها حوالي 443000 سطرًا ، تمت كتابتها يدويًا.
وأشار إلى أنه في حين أن جافا أكثر تعبيرًا ، فإنه أيضًا أكثر تعلماً. "في هذه النقطة بالنسبة لي ، إنها مسألة اختيار اللغة التي تستخدمها" ، قال دو بور.
جافا سكريبت هي واحدة من مجموعة كاملة من اللغات - بعضها تشمل روبي وبيثون - تم تطويرها خلال العشرة أعوام الماضية. سنوات استجابة لتزايد تعقيد C ++ و Java. ولكن مع وجود بناء أكثر بساطة ، فإن مثل هذه اللغات لها عيوبها أيضًا ، كما يجادل
هذه اللغات الجديدة تميل إلى أن تكون أبطأ ، ولا تتوسع كذلك ، ويمكن أن تأوي المزيد من الأخطاء ، Pike مُفصلة.
اللغات تميل إلى أن يتم تفسيرها بدلاً من تجميعها ، بمعنى أنه لا يتم تجميع البرامج المكتوبة بهذه اللغات قبل تشغيلها ، لذلك تميل إلى التشغيل أبطأ نتيجة لذلك. كما أنها تميل إلى أن يتم كتابتها ديناميكيًا ، مما يعني أن المبرمجين لا يحتاجون إلى تحديد نوع البيانات التي ستحتفظ بها المتغيرات.
"الطباعة الديناميكية ليست جيدة بالضرورة. ستحصل على أخطاء ثابتة في وقت التشغيل والتي ينبغي عليك حقًا وقال: "مع وضع كل هذا في الاعتبار ، وصف بايك غو بأنه محاولة لدمج أفضل صفات مجموعتي اللغات.
" Go هو محاولة للجمع بين السلامة والأداء من اللغات المكتوبة بشكل ثابت مع الراحة والمتعة من اللغات التفسيرية المطبوعة ديناميكيًا "، قبل أن يضيف ،" إلى الحد الذي ينجح فيه يجب عليك الحكم على نفسك. "
عضو واحد من الجمهور ، لاري أوغستين وافق الرئيس التنفيذي لمزود برنامج إدارة علاقات العملاء SugarCRM ، مع تقييم بايك بأن C ++ و Java قد أصبحا معقدين للغاية ، رغم أنه أشار إلى أن هذا يحدث عادة مع كل اللغات عند نموها لتلبية مجموعة أوسع من حالات الاستخدام.
"السبب في أن هذه اللغات قد ازدادت تعقيدا هو أنه كلما زاد استخدامها ، زادت الأخطاء والغموض الذي وجدناه ، ومحاولات إزالة تلك الغموض والأخطاء خلقت شيئا أكثر تعقيدا" ، قال أوغستين ، الخلفية في هندسة البرمجيات وتصميم لغة البرمجة.
"أنا أقدر هدفه" ، قال عن جهود بايك. وقال أوغستين: "السؤال هو هل يمكن أن يحقق هدفه المستهدف؟ أم أن غو [يصبح أكثر تعقيدا] مع استخدام المزيد من الناس له."
يغطّي جواب جاكسون برمجيات الشركات والتكنولوجيا العامة الأخبار العاجلة عن
The IDG News Service
. اتبع Joab على تويتر علىJoab_Jackson. عنوان البريد الإلكتروني لـ Joab هو [email protected]