پرش به محتوا

نظریه زبان‌های برنامه‌نویسی

از ویکی‌پدیا، دانشنامهٔ آزاد

این مقاله در حال ترجمه از ویکی انگلیسی است. لطفا حذف نشود. الگو:توضیح کوتاه

حرف یونانی λ (لامبدا) به طور غیررسمی نماد حوزهٔ نظریهٔ زبانهای برنامه نویسی است.الگو:منبع نیاز این استفاده از حساب لامبدا الهام گرفته که یک مدل محاسباتی است و در دههٔ ۱۹۳۰ توسط آلونزو چرچ معرفی شد. این نماد روی جلد کتاب کلاسیک ساختار و تفسیر برنامههای کامپیوتری[۱] و مقالات موسوم به مقالات لامبدا (۱۹۷۵-۱۹۸۰) اثر جرالد جی ساسمن و گای استیل (خالقان زبان اسکیم) ظاهر شد.الگو:بیانیه فنی

نظریهٔ زبانهای برنامه نویسی (به انگلیسی: Programming Language Theory، مخفف: PLT) شاخه ای از علوم رایانه است که به طراحی، پیاده سازی، تحلیل، توصیف و طبقه بندی زبانهای صوری معروف به زبانهای برنامه نویسی میپردازد. این حوزه ارتباط نزدیکی با زمینه های دیگری مانند ریاضیات، مهندسی نرم افزار و زبان شناسی دارد.

تاریخچه

[ویرایش]

در برخی جنبهها، تاریخچهٔ نظریهٔ زبانهای برنامهنویسی حتی پیش از توسعهٔ خود زبانها آغاز شد. حساب لامبدا که در دههٔ ۱۹۳۰ توسط آلونزو چرچ و استفن کول کلینی توسعه یافت، توسط برخی بهعنوان اولین زبان برنامهنویسی جهان شناخته میشود، هرچند هدف اصلی آن مدلسازی محاسبات بود، نه توصیف الگوریتمها برای رایانه. بسیاری از زبانهای تابعی مدرن را میتوان «پوششی نازک» بر روی حساب لامبدا دانست.

اولین زبان برنامهنویسی ساختهشده، پلانکالکول بود که در دههٔ ۱۹۴۰ توسط کنراد تسوزه طراحی شد، اما تا سال ۱۹۷۲ ناشناخته ماند. اولین زبان موفق سطح بالا، فورترن (۱۹۵۴-۱۹۵۷) بود که توسط تیمی در آیبیام به رهبری جان بکوس ساخته شد. موفقیت فورترن منجر به تشکیل کمیتهٔ علمی برای توسعهٔ زبان «جهانی» الگول ۵۸ شد. همزمان، جان مککارتی در امآیتی، لیسپ را به عنوان اولین زبان آکادمیک موفق ایجاد کرد.

گاهشمار

[ویرایش]
    • دههٔ ۱۹۵۰**

- نوام چامسکی سلسلهمراتب چامسکی را در زبانشناسی معرفی کرد که تأثیر مستقیمی بر نظریهٔ زبانها گذاشت.

    • دههٔ ۱۹۶۰**

- ۱۹۶۲: توسعهٔ سیمولا به عنوان اولین زبان شیگرا. - ۱۹۶۴: پیتر لندین حساب لامبدا را برای مدلسازی زبانها بهکار برد و ماشین SECD را معرفی کرد. - ۱۹۶۹: جی. راجر هیندلی الگوریتم استنتاج نوع هیندلی–میلنر را ارائه داد.

    • دههٔ ۱۹۷۰**

- ۱۹۷۲: توسعهٔ پرولاگ و برنامهنویسی منطقی. - ۱۹۷۵: توسعهٔ اسکیم با قابلیتهای پیشرفته مانند تداومها.

    • دههٔ ۱۹۸۰**

- ۱۹۸۵: انتشار میراندا و آغاز توسعهٔ هسکل.

زیرشاخه ها و زمینه های مرتبط

[ویرایش]

نظریهٔ زبانهای برنامهنویسی با حوزههای زیر در همتنیده است:

معناشناسی صوری

[ویرایش]

سه رویکرد اصلی: ۱. **معناشناسی دلالتی** (ارتباط با ریاضیات) ۲. **معناشناسی عملیاتی** (شبیهسازی اجرا) ۳. **معناشناسی اصلاحی** (استنتاج از قوانین).

نظریهٔ نوع

[ویرایش]

مطالعهٔ سیستمهای نوع برای جلوگیری از خطاها. مثال: سیستم نوع ایستا در ML.

تحلیل و تبدیل برنامه

[ویرایش]

بررسی ویژگیهای برنامه (مانند خطاهای امنیتی) و تبدیل بین فرمتهای مختلف.

نشریات و کنفرانسها

[ویرایش]

- **کنفرانسها**: POPL، PLDI، ICFP - **نشریات**: TOPLAS، JFP

جستارهای وابسته

[ویرایش]

منابع

[ویرایش]
  1. ساختار و تفسیر برنامه های کامپیوتری (ویراست ۲). کمبریج، ماساچوست: انتشارات امآیتی. ۱۹۹۶. OCLC 34576857. شابک ۰-۲۶۲-۰۱۱۵۳-۰. از پارامتر ناشناخته |نامخانوادگی= صرف‌نظر شد (کمک); از پارامتر ناشناخته |همکاران= صرف‌نظر شد (کمک); پارامتر |first1= بدون |last1= در Authors list وارد شده‌است (کمک)

پیوند به بیرون

[ویرایش]