زبانهای برنامه نویسی سیستم سطح پایین یکی از دشوارترین زبان ها در مهندسی نرم افزار است ، چون برنامه نویسان سیستم باید به طور معمول با جزئیات آن زبان برنامه نویسی ارتباط برقرار کنند و محققان ترجیه می دهند از آن دوری کنند. Deca، با استفاده از چند دهه در زبانهای برنامه نویسی، تا حدی حالات مختلف در برنامه نویسی تابعی، نوع سیستم، نوع داده و زیر روالهای توسعه پذیر، برنامه نویسی ماژولی و تحقیقات زبانهای برنامه نویسی سیستم را به تصویر کشید. سیستم Deca همچنین زیر نوعها و رابط نوع را در تحقیقات پیشرفته پشتیبانی می کند.
خصوصیات و احتیاجات یک برنامه نویسی سیستم شامل موارد زیر است:
*برنامه های سیستم در یک حافظه مورد اجرا می شوند.
* ذخیره سازی با مدیریت کاربر یک نیاز است.
* برنامه های سیستم توسط کارایی I/O فراخوانی میشود.
* برنامه نویسی حالت الزامی است.
انتزاع، کپسوله سازی و ماژول بندی
هر زبان برنامه سازی نیازمند فراهم کردن برخی انتزاعات و همچنین برخی ساختارهای ماژون بندی بر روی سخت افزاری که بر روی آن در حال اجرا است می باشد تا برای کاربر بلوکهای مفیدی را فراهم کند . نکته مهم ماژوله بندی، کپسوله سازی و استفاده مجدد از کدها است. ماژولها ، داده و کد را جداسازی کنند که این خصوصیت به معنی کپسوله سازی کدها و داده های پنهانی است.
برای کسب اطلاعات بیشتر میتوانید به منبع زیر مراجعه کنید:
Eric L. McCorkle. Modern features for systems programming languages. In Proceedings of the 44th