زبان برنامه نویسی خودتان را بسازید!
آیا دوست دارید خودتان یک زبان برنامه نویسی به وجود آورید؟! ممکن است این جمله برایتان خنده دار باشد و با خودتان بگویید مگر چنین چیزی ممکن است!؟

برای اثبات این جمله، قصد داریم به صورت تصویری و با آموزش های گام به گام، نحوه ی ساخت یک زبان برنامه نویسی را برایتان توضیح دهیم. می توانید قابلیت هایی که دوست دارید در زبان برنامه نویسی خود قرار دهید و حتی آن را به اسم خود منتشر کنید!
قدم اول: با کلمات تخصصی و کلیدی آشنا شوید
نویسندگان کامپایلرها (مترجم ها)، معمولا با دستورات کلیدی آشنا نیستند. قبل از ساخت کامپایلر, دستورات آن را به دقت بررسی کنید. مطمئن باشید هرچیزی که لازم است بلد باشید را آموخته اید.
قدم دوم: تصمیم بگیرید چه چیزی مشکل زبان شما را حل می کند
بررسی کنید که آیا هدفتان پرداختن به یک مشکل خاص یا ایجاد یک زبان جدید است؟
قدم سوم: در مورد معنا و کاربرد زبان خود فکرکنید
- آیا قصد دسترسی مستقیم اشاره گر را دارید؟
- انواع داده در زبان شما چیست؟
- زبان شما استاتیک یا پویا است؟
- مدل حافظه ی شما چیست؟ آیا قصد استفاده از یک زباله روب(garbage collector) یا مدیریت دستی حافظه (manual memory management) را دارید؟ (اگر قصد استفاده از زباله روب را دارید، آن را برای زبان خود آماده کنید).
- مبحث همزمانی (concurrency) را چگونه مدیریت می کنید؟ آیا قصد استفاده از یک نخ که مدلی ساده است را دارید یا می خواهید از روشی پیچیده تر مانند لیندا استفاده کنید؟ (با توجه به اینکه رایانه های امروزه چند هسته ای هستند).
- توابع اولیه در زبان جاسازی شوند یا همه چیز در کتابخانه ها قرار گیرند؟
- سبک زبان شما چگونه باشد؟ تابعی؟ شی گرا؟ نمونه ی اولیه (مانند جاوا اسکریپت)؟ جنبه گرا؟ الگو گرا؟ و یا سبکی کاملا جدید باشد؟
- قصد دارید زبان شما با سایر زبان ها و کتابخانه ها ارتباط داشته باشد؟ این موضوع یکی از نکات بسیار مهم است. در نهایت، پاسخ به چنین سوالاتی می تواند کمک شایانی به شما و زبانی که قصد دارید آن را توسعه دهید، خواهد کرد.
قدم چهارم: هدف زبان شما چیست و کاربران شما چه کسانی خواهند بود؟
یکی از مهم ترین مراحل، بررسی خروجی زبان برنامه نویسی شماست و باید ببینید که قصد دارید که چه پلتفرمی را توسعه دهید. می خواهید در کدام زمینه (کامپیوتر، موبایل، وب سایت و ...) فعالیت داشته باشید؟ آیا کاربران از پلتفرمی که شما انتخاب کرده اید، استقبال خواهند کرد؟
قدم پنجم: ایده های مختلفی را تجربه کنید
اگر زبان برنامه نویسی خود را به صورت کاملا رایگان و متن باز ارائه دهید، مطمئن باشید که پیشرفت قابل توجهی خواهد داشت و مردم از شما، قدر دانی و تشکر خواهند کرد. استفاده از ایده ها و تفکرات سایر برنامه نویسان، می تواند شهرت و قدرت زبان شما را دو چندان کند.
قدم ششم: یک فرمول گرامری برای دستورات زبان خود قرار دهید
قدم هفتم: تصمیم بگیرید که زبان شما ترجمه یا تفسیر شود؟
کاربران مفسرها (interpreted)، برنامه های خود را درون یک محیط کدنویسی، ویرایش می کنند و در نهایت برنامه ها، به صورت مستقیم بر روی مفسر اجرا خواهد شد اما کاربران مترجم ها(compiler), ابتدا کدهای خود را در محیط توسعه، ویرایش کرده و سپس آن را کامپایل و ذخیره می کنند. در نهایت برنامه، در هر جایی اجرا خواهد شد.
قدم هشتم: یک اسکنر یا تجزیه کننده و ابزار جستجو در نظر بگیریم
لازم است در نرم افزار کامپایلر یا مترجم خود، یک اسکنر، برای بررسی صحیح یا غلط بودن کدها در نظر بگیریم. همچنین توانایی شناسایی خطاها و هشدارها را داشته باشد.
قدم نهم: اصولی که در تمامی زبان های برنامه نویسی وجود دارند رعایت شود
فراموش نکنید که یکسری از فرمان ها، در تمامی زبان های برنامه نویسی وجود دارند. چنانچه زبان شما از مواردی نظیر متغیرها، توابع، آرایه ها، کلاس ها و... پشتیبانی نکند، زبان شما مورد استقبال قرار نخواهد گرفت.
قدم دهم: ساخت تولید کننده ی خودکار کد فراموش نشود!
قدم یازدهم: برای تست کردن زبان خود، برنامه های زیادی بنویسید
تصور کنید که زبان برنامه نویسی شما از لحاظ گرامری و دستورالعمل ها دارای خطا می باشد! باید بگوییم فاجعه هست! پس حتما زبان برنامه نویسی خود را با نوشتن برنامه های گوناگون بررسی کنید و سپس زبان خود را منتشر کنید.
قدم دوازدهم: حتما این مورد را در نظر بگیرید که کاربر بتواند برنامه های خود را عیب یابی کند
قدم سیزدهم: برای زبان برنامه نویسی خود مستندات و آموزش هایی قرار دهید
فراموش نکنید که مستنداتی را برای زبان خود در نظر بگیرید تا کاربران بتوانند زبان شما را یاد بگیرند. چنانچه منابع آموزشی برای زبان خود قرار ندهید، مسلما مورد استقبال واقع نخواهد شد.
قدم چهاردهم: زبان خود را منتشر کنید!
منبع: wikihow