Wren: زبان برنامه‌نویسی اسکریپتی سریع، سبک و کانکارنت

Wren: زبان برنامه‌نویسی اسکریپتی سریع، سبک و کانکارنت

Wren یک زبان برنامه‌نویسی نسبتاً سریع است. این زبان برنامه‌نویسی را می‌توان به نوعی همان Smalltalk ولی با پکیج‌هایی به اندازهٔ Lua و همراه با محیط دَشی برای Erlang دانست که شمایلی مدرن و ساختاری دولوپرپسند دارد.

Wren کوچک است
ماشین مجازی این زبان برنامه‌نویسی چیزی صرفاً در حدود ۴۰۰۰ دستور دارد؛ یعنی آنکه شما می‌توانید کل آن را تنها در نیمی از روز بررسی و مطالعه کنید. البته باید بدانید اگرچه که Wren کوچک است، ولی به هیچ وجه فشرده نبوده بلکه بخش‌های مختلف آن به خوبی کامنت‌گذاری شده و خوانا هستند.

Wren سریع است
مزیت رقابتی این زبان برنامه‌نویسی نسبت به سایر زبان‌های برنامه‌نویسی دینامیک این است که از یک کامپایلر سریع برخوردار است.

Wren مبتنی بر کلاس است
زبان‌های اسکریپت‌نویسی بسیاری وجود دارند ولی بسیاری از آنها مدل‌های شیئ‌گرایی غیرمعمولی داشته یا آنکه هیچ مدل شیئ‌گرایی ندارند اما این در حالی است که Wren کلاس‌ها و بالتبع شیئ‌گرایی را در مرکزیت کار قرار داده است.

Wren کانکارنت است
این زبان برنامه‌نویسی کانکارنت است. به عبارت دیگر، قادر خواهید بود تا برنامه‌هایی بنویسید که از ماژول‌های مختلفی تشکیل شده و این ماژول‌ها در حین اجرا با یکدیگر به تعامل خواهند پرداخت.

Wren یک زبان اسکریپت‌نویسی است
هدف Wren به کار گرفته شدن در اپلیکیشن‌ها است. این زبان هیچ نوع وابستگی به سایر منابع نداشته و از یک لایبرری کوچک و استاندارد به همراه یک API ساده و قابل استفاده با زبان C برخوردار است. همچنین برنامه‌های نوشته شده با Wren به سادگی به نسخه‌های C99 ،C++98 و بالاتر کامپایل می‌شوند.

System.print("Hello, world!")

class Wren { 
  flyTo(city) { 
    System.print("Flying to %(city)") 
  } 
}

var adjectives = Fiber.new { 
  ["small", "clean", "fast"].each {|word| Fiber.yield(word) } 
}

while (!adjectives.isDone) System.print(adjectives.call())

همان‌طور که در بالا مشاهده‌ می‌شود، نوشتن برنامهٔ معروف Hello World در این زبان برنامه‌نویسی و یا ساخت کلاس بسیار ساده است.