لیمبو (زبان برنامه‌نویسی) - ویکی‌پدیا، دانشنامهٔ آزاد

لیمبو (زبان برنامه‌نویسی)
طراحی شده توسطشان دوروارد، فیل وینترباتوم و راب پایک
توسعه‌دهندهآزمایشگاه‌های بل، ویتا نووا هولدینگز
ظهوریافته در۱۹۹۵
سیستم‌عاملاینفرنو
پروانهمتن‌باز
وبگاه
پیاده‌سازی‌های بزرگ
ماشین مجازی دیس

لیمبو (به انگلیسی: Limbo) یک زبان برنامه‌نویسی برای نوشتن سیستم‌های توزیع‌شده‌است و همین‌طور زبانی است که از آن برای نوشتن برنامه‌های کاربردی سیستم‌عامل اینفرنو استفاده شده‌است. این زبان در آزمایشگاه‌های بل توسط شان دوروارد، فیل وینترباتوم و راب پایک نوشته شده‌است. کامپایلر لیمبو کدهای مقصود مستقل از ماشین تولید می‌کند. ماشین مجازی دیس این کدها را تفسیر و اجرا می‌کند یا اینکه آن‌ها را درست قبل از زمان اجرا برای بهبود کارایی کامپایل می‌کند. در نتیجه کلیه برنامه‌های سیستم‌عامل اینفرنو کاملاً پرتابل بوده و بر روی سخت‌افزارها و معماری‌های مختلفی اجرا می‌شوند.

قابلیت‌ها و ویژگی‌ها

[ویرایش]

برخی از ویژگی‌های این زبان عبارتند از:

ماشین مجازی

[ویرایش]

ماشین مجازی دیس (Dis) که کد لیمبو را اجرا می‌کند، با دستورالعمل‌هایی برای محاسبات، کنترل جریان، حرکت داده‌ها، ایجاد فرایند، همگام‌سازی و برقراری ارتباط بین فرایندها، بارگیری ماژول‌های کد و پشتیبانی از انواع داده‌های سطح بالاتر: رشته‌ها، آرایه‌ها، لیست‌ها و کانال‌های ارتباطی[۱] از ترکیبی از شمارش مرجع و بازیافت حافظه در لحظه برای داده‌های چرخه‌ای استفاده می‌کند.[۲]

مثال‌ها

[ویرایش]

لیمبو از تعاریف سبک آیدا به شکل زیر استفاده می‌کند:

 name := type value;  name0,name1 : type = value;  name2,name3 : type;  name2 = value; 

سلام دنیا

[ویرایش]
 implement Command;   include "sys.m";      sys: Sys;   include "draw.m";   include "sh.m";   init(nil: ref Draw->Context, nil: list of string)  {      sys = load Sys Sys->PATH;      sys->print("Hello World!\n");  } 

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

[ویرایش]

منابع

[ویرایش]
  1. "Dis Virtual Machine Specification". Vita Nuova. 2000. Retrieved 2 February 2015.
  2. Lorenz Huelsbergen and Phil Winterbottom. "Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization" (PDF). {{cite journal}}: Cite journal requires |journal= (help)