اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

مرحبًا @علي العبدالله،

إن هذا السؤال يتكرر لكثير من المبرمجين الشغوفين للبرمجة. 

لكن تنفيذه ليس بالأمر السهل أبدًا، حيث يتطلب منك الكثير من العمل ومن أهم شيء يطلب منك هو إنشاء مترجم للغة التي تقوم بصناعتها.

حيث يعتبر المترجم جزء أساسي من لغز صناعة اللغة الجديدة، كما أن صناعة لغة برمجة جديدة يتطلب أكثر من ذلك:

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

كما يجب عليك تعلم اللغات ذات المستوى الأدنى مثل C وغيرها في الحاسب وذلك لكي تستطيع إنشاء اللغة التي باحجتها، لكن يجب أن يكون لك هدف لغة ولماذا سوف يستخدمها المبرمجين وما الفائدة منها وغيرها الكثير من الأسئلة التي يجب أن تفكر فيها قبل البدء بمثل هذه الخطوة.

لكن كبداية يمكنك العمل على تطوير مكتبات للغات الموجودة ومن ثم الانتقال لمثل هذه الخطوة.

أشكرك.

  • 0
نشر

نعم يمكن ذلك بكل تأكيد، أما عن اللغات أو التقنيات المستخدمة فكثيرة جداً ومتنوعة.

 

نظرياً يمكنك كتابة لغة برمجة بأي لغة برمجة تريد مثلاً php مبرمجة بـC وjulia مبرمجة بـscheme.

 

هناك لغات برمجة مبرمجة بنفس اللغة مثلاً C مبرمجة بـC وdart مبرمجة بـdart ، قد تقول كيف ذلك ؟

ببساطة أنت تبدأ برمجة لغة البرمجة ﻷول مرة باستعمال لغة برمجة أخرى مثلاً تريد اختراع لغة برمجة سميتها حسوب تبدأ برمجتها مثلاً بـC ، بمجرد انتهاء أول نسخة يكون لديك ملف تنفيذي exe عبارة عن كومبايلر يستطيع ترجمة كود بلغة حسوب، بعد ذلك تكتب كود بلغتك الجديدة وتقوم بعملية compile لينتج ملف تنفيذي آخر هو الكومبايلر للغة البرمجة نفسها.

 

ميزات الطريقة السابقة أنه بتطور لغة البرمجة يتطور الكومبايلر الذي يطور لغة البرمجة الذي... وهكذا دواليك.

 

تستخدم أيضاً لغة Haskell في برمجة لغات البرمجة اﻷخرى باستعمال مكتبات parsing مثل megaparsec.

 

باختصار يمكنك برمجة لغة برمجة بأي لغة برمجة تريد.

  • 0
نشر

إن صناعة لغة برمجية أمر في غاية الصعوبة و التعقيد، إذ يجب عليك معرفة و إتقان عدة أمور، أهمها ان تعرف السبب الذي ستصمم هذه اللغة من أجله (على سبيل المثال: برمجيات للأنظمة المضمنة، تطبيقات الهواتف الجوالة، تطبيقات سطح المكتب ..الخ). 

كما يجب عليك الإلمام أيضا بلغة الآلة و كيفية تحويل اللغات المنخفضة المستوى (Assembly) إلى لغة الآلة ( 0-1) و طبعا يجب عليك التوسع في معرفة أسس تصميم المحولات/المترجمات (compiler) و المفسرات (Interpreter) و الفرق بينهما و مجال استخدام كل منها، بالإضافة إلى أهمية الإطلاع على أمثلة عملية مفتوحة المصدر لبناء لغات برمجية.

  • 0
نشر

السلام عليكم ورحمة الله وبركاته

نعم يمكنك صناعة لغة برمجه جديدة بنفسك ولكن الأمر يختلف قليلاً عما تظن

فبعد أن تحدد الهوية والمجال الذي تريد استخدام لغتك الخاصه فيه هناك مراحل عديدة لتصنع لغة برمجة جديده وهي

أولاً: تصميم اللغة نفسها ومعرفة الجمل والكلمات التي سيتم استخدامها وما هو الدور الذي ستقوم به هذه الجمل(syntax)

ثانياً: أن تقوم بعمل مترجم خاص بهذه اللغة وهو الذي يقوم بتحويل الجمل الخاصة باللغة وترجمتها للحاسوب حتى يتمكن من أداء المطلوب(compiler)

ثالثاً: عليك إنشاء مكتبة قياسية وهذه تكون معتمده على لغة منخفضه مثل لغة C حتى تتمكن من ترجمة الدوال والعناصر الخاصة بلغتك

رابعاً: عليك إنشاء الأدوات اللازمة لدعم لغتك الخاصة في المحررات البرمجية التي تقوم بالتعامل مع الجمل والأخطاء

إن كنت تشعر ببعض الغموض والصعوبة فهذا صحيح صنع لغة برمجية أمر صعب ولكنه رائع ورحلته ممتعة للغاية ولمزيد من التفاصيل تجدها هنا

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...