فارو (زبان برنامه‌نویسی)

فارو () یک پیاده‌سازی متن باز از زبان و محیط برنامه‌نویسی اسمال تاک است. فارو ویژگی‌های زنده زبان برنامه‌نویسی مانند دستکاری فوری اشیاء، به روز رسانی آنی و کامپایل دوباره آنی را دارد. محیط برنامه‌نویسی زنده در قلب سیستم است.

معرفی 
فارو یک واژه یونانی (Φάρος) به معنی فانوس دریایی است. لوگو فارو یک نقاشی از فانوس دریایی درون حرف آخر فارو یعنی O است.

تاریخچه 
فارو به عنوان شاخه Squeak، یک محیط برنامه‌نویسی متن باز اسمال تاک ساخته شده با تیم Smalltalk-80 (دن اینگالز و الن کی) به وجود آمده است. به روی مهندسی نرم‌افزار و تکنیک‌های پیاده‌سازی مدرن تمرکز دارد. فارو توسط کنسرسیوم فارو (برای کمپانی‌ها) و انجمن فارو (برای کاربران) پشتیبانی می‌شود.

کاربرد فارو

کمپانی‌ها و مشاوران 
بعضی از کمپانی‌ها از فارو برای پیاده‌سازی پروژه‌های خود استفاده می‌کنند. به‌طور خاص، از موارد زیر استفاده می‌کنند:

برای پیاده‌سازی پویای وب از seaside

برای پیاده‌سازی سرور از zinc

برای آنالیز داده و نرم‌افزارهای انواع زبان‌های برنامه‌نویسی از Moose

برای رابط کاربری پیشرفته از کتابخانه گرافیکی

برای نمایش داده از Roassal

کنسرسیوم فارو اخیراً برای کمپانی‌هایی که می‌خواهند از پروژه فارو پشتیبانی کننده به وجود آمده است. انجمن فارو اخیراً برای کاربرانی که می‌خواهند از پروژه فارو پشتیبانی کنند به وجود آمده است.

کارایی و ماشین مجازی 
فارو بروی یک ماشین مجازی که تقریباً کاملاً در اسمال تاک نوشته شده‌است تکیه کرده‌است. اوایل ۲۰۰۸، یک ماشین مجازی جدید (cog) برای squek, pharo و newspeak پیاده‌سازی شده‌است که کارایی آن نزدیک به سریع‌ترین ماشین مجازی اسمال تاک است. در ۲۰۱۴/۲۰۱۵ جامعه ماشین مجازی در حال کار بر روی spur، یک مدیریت حافظه جدید برای cog که دوباره کارایی را بالا برده و پشتیبانی بهتری برای ماشین مجازی ۶۴-بیتی دارد.

منابع 

 http://pharo.org/
 

زبان‌های برنامه‌نویسی ماشینی پویا
زبان‌های برنامه‌نویسی کلاس محور
نرم‌افزارهای دارای اجازه‌نامه ام‌آی‌تی