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

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

زبان برنامه‌نویسی فارو
توسعه‌دهندهکنسرسیوم فارو
ظهوریافته در۲۰۰۸ (۲۰۰۸)
انتشار پایدار
۷.۰
۲۲ ژانویه ۲۰۱۹ (۲۰۱۹-۰۱-22)
زبان پیاده‌سازی
اسمال‌تاک
سیستم‌عاملمایکروسافت ویندوز، لینوکس، مک‌اواس و غیره
پروانهپروانه ام‌آی‌تی، و بخش‌هایی مجوز آپاچی[1]
وبگاه
متأثر از
اسمال‌تاک (Squeak)

معرفی

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

تاریخچه

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

کاربرد فارو

کمپانی‌ها و مشاوران

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

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

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

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

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

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

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

کارایی و ماشین مجازی

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

منابع

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.