SYMPL (زبان برنامهنویسی)
SYMPL یک زبان برنامهنویسی منسوخ شده است که توسط شرکت کنترل دیتا (CDC) برای استفاده در سیستمهای کامپیوتری سری CDC 6000 در دهههای 1970 و 1980 توسعه یافت. این زبان بر اساس زیرمجموعهای از نسخهٔ JOVIAL شرکت CDC بود و به عنوان جایگزینی برای زبان اسمبلی مورد استفاده قرار میگرفت. همچنین، تعدادی از محصولات نرمافزاری مهم CDC در SYMPL پیادهسازی شدند؛ از جمله کامپایلرها، کتابخانهها، یک ویرایشگر تمامصفحه و زیرسیستمهای اصلی.
SYMPL یک زبان کامپایل شده، دستوری و رویهای است. در مقایسه با زبان Fortran در آن زمان، SYMPL از ویژگیهای زیر پشتیبانی میکرد:
- نوعدهی قوی دادهها: تمامی متغیرها باید قبل از استفاده اعلام شوند
- متغیرهای بولین
- اعداد صحیح با عرض بیت متغیر (هر دو نوع علامتدار و بدون علامت)
- متغیرهای "وضعیت" (اعداد شمارشی)
- ساختارهای داده - شامل ساختارهای تخصیص دادهشده پویا "مبتنی"
- ساختارهای برنامهنویسی ساختیافته
- توابع تو در تو
- دستکاری "مهرهای" (بیت) و کاراکتر با استفاده از نحو میانی (میانوند)
- یک قابلیت ماکرو ساده
یک ویژگی متمایز در SYMPL، که در جداول JOVIAL نیز یافت میشود، این است که آرایههای متغیرهای چند آیتمی میتوانند با چیدمان حافظه "سریال" یا "موازی" مشخص شوند. چیدمان "سریال" به این صورت است که ورودیهای آرایه به ترتیب در حافظه قرار میگیرند، همانطور که در بیشتر زبانهای برنامهنویسی رایج است. چیدمان "موازی"، هر یک از آیتمهای فردی در هر یک از ورودیهای آرایه را با هم گروهبندی میکند. به عنوان مثال، اگر هر ورودی آرایه دارای آیتمهای y ،x و z باشد، چیدمان موازی x[n]...x[0] را در حافظه با هم گروهبندی میکند، سپس y[n]...y[0] و سپس z[n]...z[0]. این ویژگی میتواند دسترسی به همه آیتمهای مشابه در سراسر آرایه را سرعت ببخشد، زیرا همه آنها بهطور متوالی با یکدیگر قرار دارند.
سادهسازیهای این زبان نسبت به JOVIAL شامل عدم وجود نوع داده ثابت، عدم وجود ساختارهای جدول و عدم وجود مفهوم COMPOOL
میشود. اگرچه به جای COMPOOL
ها، قابلیت متن سیستم خاص CDC اجازه میدهد تا اعلامیههای دادههای مشترک را کپسولهسازی کند.