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

Fantom
پارادایم برنامه‌نویسیچند مدلی
توسعه‌دهندهبرایان فرانک، اندی فرانک
ظهوریافته در2005[۱]
انتشار پایدار
۱٫۰٫۶۷ / ۹ ژانویه ۲۰۱۵؛ ۹ سال پیش (۲۰۱۵-09}})[۲]
پویا، ایستا
پروانهAcademic Free License version 3.0
وبگاه
متأثر از
جاوا، ارلنگ، سی شارپ، اسکالا، روبی

فانتوم یک زبان برنامه‌نویسی شئ گرا است که به وسیله برایان و اندی فرانک[۳] ساخته شده‌است و روی ماشین مجازی جاوا، جاوا اسکریپت و زمان اجرای زبان مشترک دات نت اجرا می‌شود. (دات نت از وضعیت نمونهٔ اولیۀ[۴] در نظر گرفته شده، پشتیبانی می‌کند) هدف اولیهٔ طراحی آن فراهم کردن یک کتابخانهٔ استاندارد رابط برنامه‌نویسی نرم‌افزار[۵] بود که مشخص کند بالاخره کد فانتوم در نهایت روی ماشین مجازی جاوا اجرا می‌شود یا روی زمان اجرای زبان مشترک دات نت. مشابه سی شارپ و جاوا، فانتوم از نحو آکولاد استفاده می‌کند. این زبان از برنامه‌نویسی تابعی با بستار و هم روندی در مدل بازیگری پشتیبانی می‌کند. فانتوم دارای هر دو نوع دادهٔ ایستا و پویا است.

نوع داده

[ویرایش]

سیستم نوع دادهٔ فانتوم بسیار ساده است. همهٔ متغیرها از نوع دادهٔ ایستا هستند، مثل سی شارپ و جاوا. فانتوم اجازهٔ نوع دادهٔ عمومی را به دلیل پیچیدگی نمی‌دهد ولی چند نوع دادهٔ عمومی مانند لیست، مپ و تابع در خود دارد. فانتوم یک رابط برنامه‌نویسی نرم‌افزار انعکاسی آسان دارد. فانتوم برای ویندوز و سکوهای یونیکس (شامل سیستم عامل) وجود دارد.[۶]

پاد

[ویرایش]

در فانتوم واحد گسترش پاد نامیده می‌شود. پادها نقش فضای نام، بسته و پودمان را ایفا می‌کنند. آن‌ها به صورت فایل‌هایی با پسوند pod. ذخیره می‌شوند که دارای پرونده‌هایی فشرده شامل اف سی کد، مستندات و پرونده‌های منبع ی که برای اجرای پاد لازم است، هستند.

ابزار ویجت فانتوم

[ویرایش]

فانتوم با ابزار ویجت استانداردی به نام کار می‌کند.[۷] مانند فانتوم، ابزار ویجت فانتوم نیز یه گونه‌ای طراحی شد که بین دستگاه‌های متفاوت قابل حمل باشد. در حال حاضر روی ماشین مجازی جاوا با استفاده از ابزار ویجت استاندارد تفسیر می‌شود. مفسر جاوا اسکریپت که به وسیلهٔ عنصر بوم و جاوا اف ایکس پشتیبانی می‌شود به برنامه‌های ابزار ویجت فانتوم اجازه می‌دهد تا برنامه‌های خود را روی مرورگر وب اجرا کند. نقشه‌هایی برای مفسر زمان اجرای زبان مشترک دات نت به وسیله فرم پنجره‌ای وجود دارد. پاد می‌تواند در هر تعداد نوعی برای استفاده در کتابخانه‌ها و برنامه‌های دیگر تعریف شود. نام یک پاد می‌تواند نام نوع را کاملاً مشخص کند.

مثال "سلام، دنیا!

[ویرایش]

مثال معروف سلام، دنیا! نوشته شده در فانتوم را در زیر می‌بینیم:

// Hello from Fantom!
class HelloWorld
{
  static Void main()
  {
    echo("Hello, World!")
  }
}

تغییر نام

[ویرایش]

اسم اصلی زبان برنامه‌نویسی فانتوم، فان بود. فان نام محله‌ای در ریچموند ایالت ویرجینیا است که سازندگان زبان در آن زندگی می‌کردند. بعد از گسترش اعضای گروه سازندهٔ این زبان و برای راحتی جستجو، در نوامبر ۲۰۰۹[۸] اسم این زبان به‌طور رسمی از فان به فانتوم تغییر پیدا کرد.[۹]

دیگر ویژگی‌ها

[ویرایش]

فانتوم ویژگی‌های پرکاربرد دیگری نیز دارد:

  • فانتوم با اعمال یک سری محدودیت، از وارد کردن کلاس‌ها و مدل‌های جاوا پشتیبانی می‌کند.[۱۰]
  • نوع دادهٔ عدد صحیح ۶۴ بیتی است. بر خلاف جاوا و سی شارپ، فانتوم نوع دادهٔ عدد صحیح بزرگ یا کوچک ندارد.
  • ترتیب و عدم ترتیب کلاس‌های رشته‌های از/به.[۱۱]
  • فانتوم از چندتایی مرتب پشتیبانی نمی‌کند.[۱۲]

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

[ویرایش]

پانویس

[ویرایش]
  1. Blog post about history of Fantom
  2. "Fantom". 8 January 2015.
  3. «FAQ». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  4. «Roadmap». Fantom. بایگانی‌شده از اصلی در ۱۱ دسامبر ۲۰۱۵. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  5. «WhyFantom». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  6. McAllister, Neil (2012-01-03). "10 programming languages that could shake up IT". InfoWorld. Retrieved 2015-10-30.
  7. "fwt – Fantom". Fantom.org. 2015-01-08. Archived from the original on 16 August 2011. Retrieved 2015-10-30.
  8. "scala, haskell and fantom programming language, Scala, Java (Programming Languages)". scribd (به انگلیسی). Retrieved 2017-06-27.
  9. «Fan is officially now Fantom». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  10. «JavaFFI». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  11. «Serialization». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.
  12. «Cartesian product?». Fantom. دریافت‌شده در ۲۰۱۷-۰۶-۲۷.

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

[ویرایش]