رد کردن این محتوا

زبان برنامه نویسی Jafang

در سال های زیادی که کار برنامه نویسی انجام داده ام همیشه ضعف های زیادی در زبان های برنامه نویسی بوده است. به همین دلیل بر آن شدم که یک زبان برنامه نویسی جدید به نام Jafang بسازم که ایده هایی که مد نظرم هست در آن پیاده کنم.

چرا اسم این زبان رو گذاشتم Jafang ؟

به دلیل تفاوت زیاد این زبان برنامه نویسی با زبان های موجود اسم این زبان را Jafang گذاشتم چون احتمالا تا مدت ها حتی خودم هم درکش نمی کنم.
ولی این زبان کار را بسیار ساده می کند و حجم کدها را بسیار کم می کند بنابراین، مجبور به استفاده از آن هستیم.

زبان Jafang چه ویژگی هایی دارد ؟

در حال حاضر اولویت اول این زبان کم کردن تعداد کلمات کلیدی، ساخت ساختارهای ساده و افزایش سرعت برنامه نویسی می باشد.
به عنوان مثال به جای ساخت ساختارهایی مثل struct ، class و … در C++ یا مشابه آن ها در زبان های دیگر مثلا در پاسکال interface , class , record , object  و …  ، فقط یک ساختار structure داریم.

همینطور در همه ی ساختارهای دیگر که امکان ساده سازی وجود دارد این عمل تکرار شده است. مثلا به جای for , foreach , while , repeat until  و … فقط یک ساختار Loop داریم که همه را پوشش می دهد.
علاوه بر این سعی شده در ساختارها همه ی المان ها به صورت قابل شخصی سازی باشد به عنوان مثال همه ی موجودیت های این زبان به صورت متغییری تعریف می شوند و همه چیز را می توانیم در برنامه باز نویسی کنیم.

کامپایلر Jafang چه ویژگی هایی دارد ؟

یکی از امکانات کامپایلر تشخص خودکار نوع متغییرها است، به این شکل که به کاربر اجازه می دهد نوع متغییرها را تعیین نکند و البته مانع تعیین نوع نمی شود. یکی از مشکلات برنامه نویسان تعیین نوع است، به عنوان مثال اگر همه ی فعالیت های ما در زمینه ی اعداد باشد و نوع اعداد را Float تعیین کنیم در حالی که کارها در حوزه ی Integer باشد، هم سرعت برنامه کم می شود و هم فضای بیشتری توسط این متغییر ها در رم اشغال می شود.

این کامپایلر به دو صورت مترجم و مفسری کار می کند، به این معنا که کد برنامه می تواند مستقیما توسط کامپایلر اجرا شود و هم می تواند به زبان ماشین کامپایل شود و بعد اجرا شود.

کامپایلر Jafang بر خلاف اکثر کامپایلر ها که به زبان اسمبلی کامپایل می کنند به زبان Free Pascal کامپایل می کند و باقی مراحل را به آن می سپارد.
البته در آینده ممکن است به زبان های دیگر هم کامپایل کند. در برنامه ی کار این کامپایلر ، کامپایل به زبان های Javascript  و C++ هم هست.

مدیریت حافظه

در این زبان برنامه نویسی سه روش مدیریت حافظه وجود دارد.

روش اول مدیریت حافظه به صورت Reference Counting می باشد که کاربر می تواند با این روش به راحتی در هرجایی که لازم به ساخت شیء باشد آن را بسازد و بعد از پایان کار آن را رها کند. به محض رها شدن متغییر مربوط به شیء حافظه ی شیء نیز رها می شود.

روش دوم مدیرت حافظه توسط خود کاربر است. در این روش کاربر با کلمه ی کلیدی new حافظه را اختصاص می دهد و با کلمه ی کلیدی free این حافظه را آزاد می کند.

روش سوم  در روش سوم حافظه ی اختصاص داده شده توسط new توسط Garbage Collector رصد می شود و در صورتی که هیچ لینکی به این بخش از حافظه نباشد آن را آزاد می کند.

مجوز (LICENSE) :

در حال حاضر License این زبان برنامه نویسی GNU General Public License است. می توانید یک نسخه از آن را در اینجا ببینید.

منتشر شده Jafang

اولین نظر دهنده باشید

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *