ريد (لغة برمجة)
لغة البرمجة Red مصممة لتجاوز قيود لغة البرمجة Rebol . [ 3 ] طُرحت Red عام 2011 على يد نيناد راكوتشيفيتش، [ 4 ] وهي لغة برمجة إجرائية ووظيفية في آن واحد . يتشابه تركيبها واستخدامها العام مع لغة Rebol المفسرة. [ 5 ]
تهدف خيارات تنفيذ لغة Red إلى إنشاء لغة برمجة متكاملة : [ 4 ] [ 6 ] يمكن استخدام Red للبرمجة عالية المستوى للغاية ( لغات خاصة بالمجال (DSLs) وواجهات المستخدم الرسومية (GUIs)) والبرمجة منخفضة المستوى ( أنظمة التشغيل وبرامج تشغيل الأجهزة ). ويكمن جوهر هذا النهج في أن اللغة تتكون من جزأين: Red/System و Red . [ 7 ]
- Red/System يشبه لغة C، ولكنه مُعبأ في بنية معجمية Rebol - على سبيل المثال، سيكتب المرء بدلاً من .
ifx>y [print"Hello"]if(x>y){printf("Hello\n");} - لغة Red هي لغة متجانسة الرموز ، قادرة على البرمجة الوصفية بدلالات شبيهة بلغة Rebol . [ 3 ] [ 8 ] مكتبة وقت تشغيل Red مكتوبة بلغة Red/System، وتستخدم منهجًا هجينًا: فهي تُجمّع ما يمكن استنتاجه بشكل ثابت، وتستخدم مترجمًا مضمنًا في الحالات الأخرى. تتضمن خارطة طريق المشروع مُجمّعًا فوريًا للحالات المتوسطة، لكن لم يتم تنفيذه بعد.
يسعى برنامج Red إلى الحفاظ على استقلاليته عن أي مجموعة أدوات أخرى ؛ فهو يُولّد شفرته البرمجية بنفسه. [ 3 ] ولذلك، يُمكن ترجمة برامج Red [ 6 ] من أي منصة يدعمها إلى أي منصة أخرى، عبر خيار سطر الأوامر. يُوزّع كل من Red و Red/System كبرمجيات مفتوحة المصدر بموجب ترخيص BSD ثلاثي البنود (المعدّل). أما مكتبة وقت التشغيل، فتُوزّع بموجب ترخيص Boost Software License الأكثر تساهلاً .
ابتداءً من الإصدار 0.6.4، يتضمن Red جامع قمامة "Simple GC". [ 9 ]
مقدمة
تم تقديم لغة البرمجة Red في هولندا في فبراير 2011 خلال مؤتمر Rebol & Boron [ 10 ] من قِبل مؤلفها نيناد راكوتشيفيتش. وفي سبتمبر 2011، عُرضت لغة البرمجة Red على جمهور أوسع خلال يوم حرية البرمجيات 2011. [ 11 ] [ 12 ] يُعد راكوتشيفيتش مطورًا مخضرمًا في Rebol، ويُعرف بكونه مبتكر خادم HTTP المسمى Cheyenne . [ 13 ]
سمات
تتشابه بنية لغة Red ودلالاتها إلى حد كبير مع لغة Rebol . [ 4 ] [ 14 ] ومثل Rebol، تدعم Red بقوة البرمجة الوصفية ولغات المجال المتخصصة (DSLs)، مما يجعلها أداة فعالة لإنشاء لغات المجال المتخصصة المضمنة. تتضمن Red لهجةً تُسمى Red/System، وهي لغة بمستوى C توفر إمكانيات برمجة الأنظمة . [ 7 ] يسهل دمج Red مع الأدوات واللغات الأخرى كمكتبة ارتباط ديناميكي (DLL) (libRed)، وهي خفيفة الوزن للغاية (حوالي 1 ميجابايت). كما أنها قادرة على الترجمة المتقاطعة إلى منصات مختلفة (انظر قسم الترجمة المتقاطعة أدناه) وإنشاء حزم للمنصات التي تتطلبها (مثل ملفات APK على نظام Android). [ 7 ] تتضمن Red أيضًا نظام واجهة مستخدم رسومية تفاعلية بالكامل ومتعدد المنصات يعتمد على محرك تدفق بيانات تفاعلي، ولهجة رسم ثنائية الأبعاد تُضاهي SVG، ودعمًا لوحدات الماكرو في وقت الترجمة ووقت التشغيل، وأكثر من 40 نوع بيانات قياسي.
الأهداف
فيما يلي قائمة أهداف ريد كما تم عرضها في يوم حرية البرمجيات 2011: [ 11 ] [ 12 ]
- البساطة ("لا ينبغي أن تكون بيئة التطوير المتكاملة ضرورية لكتابة التعليمات البرمجية.")
- الإيجاز ("التعبير العالي يزيد الإنتاجية إلى أقصى حد.")
- السرعة (إذا كانت بطيئة للغاية، فلن تكون متعددة الأغراض بما فيه الكفاية).
- كن "صديقاً للبيئة"، وحافظ على بصمة بيئية صغيرة ("لأن الموارد ليست بلا حدود".)
- الانتشار ("منتشر في كل مكان.")
- قابلية النقل، اكتب مرة واحدة وشغّل في كل مكان ("هذا أقل ما يُتوقع من لغة برمجة.").
- المرونة ("ليست الأفضل، لكنها مناسبة لأي مهمة!")
التطبيقات التجارية
يتم حاليًا تطوير التطبيقات التجارية التالية على منصة Red:
تطوير
من المخطط أن يتم تطوير لعبة Red على مرحلتين:
- المرحلة الأولية: كتابة مترجمات Red و Red/System بلغة Rebol 2
- مرحلة التمهيد : مترجمات Red و Red/System مكملة بمترجم Red للترجمة في الوقت المناسب (JIT)، وكلها مكتوبة بلغة Red.
الترجمة المتقاطعة
اعتبارًا من عام 2018تشمل أهداف الترجمة المتقاطعة المدعومة ما يلي: [ 4 ]
- نظام التشغيل DOS : ويندوز، x86 ، تطبيقات سطر الأوامر (وواجهات المستخدم الرسومية)
- ويندوز : ويندوز، x86، تطبيقات واجهة المستخدم الرسومية
- لينكس : لينكس، x86
- Linux-ARM: Linux ، ARMv5 ، armel (soft-float)
- راسبيري باي : لينكس ، ARMv5 ، armhf (الفاصلة الصلبة)
- فري بي إس دي : x86
- داروين : نظام التشغيل macOS Intel، تطبيقات سطر الأوامر (وواجهة المستخدم الرسومية)
- أندرويد : أندرويد، ARMv5
- أندرويد-x86: أندرويد، x86
( اعتبارًا من عام 2018)تطبيقات Red تعمل بنظام 32 بت . وتخطط الشركة للانتقال إلى نظام 64 بت في المستقبل . [ 4 ]
انظر أيضاً
مراجع
- ↑ "مبتكر اللون الأحمر" . جيت هاب .
- ↑ "تحسينات ريد" . red-lang . تم الاسترجاع في 1 أبريل 2025 .
- 1 2 3 "البدء في برمجة واجهات المستخدم الرسومية باستخدام لغة Red" . Studytonight . تم الاطلاع عليه في 17 سبتمبر 2021 .
- 1 2 3 4 5 بالبيرت 2018 .
- ↑ "مقابلة مع نيناد راكوسيفيتش حول لغة البرمجة Red، المستوحاة من لغة Rebol" . ليس درسًا تعليميًا عن Monad . 28 أغسطس 2015. مؤرشف من الأصل في 23 مارس 2023. تم الاطلاع عليه في 28 أغسطس 2015 .
- 1 2 "6 لغات برمجة غير عادية ورائدة يجب تعلمها في عام 2023" . makeuseof.com . 18 أكتوبر 2023.
- 1 2 3 لوكاس، ماثيس (21 يوليو 2023). "ريد: لغة برمجة إجرائية ووظيفية، وهي أيضًا لغة شاملة" . Developpez.com . تم الاطلاع عليه في 16 يناير 2023 .
- ↑ ساسو، ألكسندرو (22 نوفمبر 2018). "مراجعة لفيلم Red" . سوفتبيديا . تم الاسترجاع في 21 فبراير 2024 .
- ↑ lucindamichele. "0.6.4 Simple GC and Pure Red GUI Console" . تم الاطلاع عليه بتاريخ 16-12-2018 .
الميزة الرئيسية للإصدار 0.6.4 هي ما نسميه Simple GC (جامع البيانات المهملة). ومن المخطط تطوير جامع بيانات مهملة أكثر تطورًا في المستقبل.
- ↑ « لغة البرمجة الحمراء الجديدة تحصل على واجهة خلفية للمقاطع الصوتية » ، osnews.com ، مايو 2011.
- 1 2 « لغة البرمجة الحمراء: ريد في يوم حرية البرمجيات 2011 » ، red-lang.org ، 14 سبتمبر 2011.
- 1 2 "يوم حرية البرمجيات 2011: لغة البرمجة الحمراء، لهجة جديدة من لغة ريبول" . يوتيوب . 16 سبتمبر 2011. تم الاطلاع عليه في 17 يناير 2023 .
- ↑ « ما هي شايان؟ » تمت الإشارة إليها آخر مرة في نوفمبر 2017.
- ↑ "بنية الخرائط الديناميكية" . OhioLINK . ديسمبر 2021.
- ↑ «DiaGrammar» ، red-lang.org ، مارس 2020.
- ↑ «SmartXML» ، redata.dev .
للمزيد من القراءة
- بالبيرت، إيفو (مايو 2018). تعلم اللون الأحمر - أساسيات اللون الأحمر . دار نشر باكت . رقم ISBN 978-1789130706.
روابط خارجية
- الموقع الرسمي

- أحدث الإصدارات من الموقع الرسمي
- ريد على جيت هاب
- Redprogramming.com
- تمت أرشفة Helpin' Red بتاريخ 28 سبتمبر 2021 على موقع Wayback Machine.
- لغات البرمجة
- لغات برمجة الأنظمة
- لغات برمجة ذات بنية قابلة للتوسيع
- لغات البرمجة الخاصة بالمجال
- لغات البرمجة عالية المستوى
- لغات البرمجة المتجانسة
- لغات البرمجة الإجرائية
- اللغات الوظيفية
- برامج مجانية متعددة المنصات
- برامج متعددة المنصات
- مترجمات مجانية ومفتوحة المصدر
- مترجمون فوريون مجانيون ومفتوحو المصدر
- البرامج التي تستخدم ترخيص BSD
- البرامج التي تستخدم ترخيص Boost
- لغات البرمجة التي تم إنشاؤها في عام 2011
- برنامج 2011
