موجو (زبان برنامهنویسی)
طراحی شده توسط | کریس لاتنر |
---|---|
توسعهدهنده | شرکت مدولار |
ظهوریافته در | ۲۰۲۳ |
سیستمعامل | نرمافزار چندسکویی |
وبگاه | |
متأثر از | |
پایتون، راست |
موجو (به انگلیسی: Mojo) یک زبان برنامه نویسی است که توسط شرکت مدولار[۱][۲][۳] توسعه یافتهاست. در ماه مه ۲۰۲۳ توسط مرورگر در دسترس قرار گرفت.[۱][۴] این زبان قادر است برخی از برنامههای پایتون را اجرا کند.[۴] توسعه دهندگان چندین هدف برای بهبود موجو دارند.[۱][۴]
طراحی و توسعه مبدأ
[ویرایش]در سال ۲۰۲۲، شرکت مدولار توسط کریس لاتنر، معمار اصلی زبان برنامه نویسی سوئیفت، و تیم دیویس، رهبر فکری یادگیری ماشینی در گوگل، تأسیس شد.[۵]
در سپتامبر ۲۰۲۲، یک ساخت اولیه از موجو به صورت داخلی توسط شرکت مدولار[۶] با ویژگیهای کامپایل پیشرفته که توسط MLIR، چارچوب کامپایلر نمایندگی چند سطحی میانی ارائه شده بود، منتشر شد.[۷][۱][۸]
سیستم نوع آن ترکیبی است (چیزی بین استاتیک و پویا)، با توجه به اینکه توسعهدهنده میتواند با انتخاب کلمه کلیدی (بین fn و def) تایپ استاتیک با کارایی بالا را برای تعریف عملکرد خود انتخاب کند.
موتور استنتاج مدولار همراه شامل یک کامپایلر و زمان اجرا است.[۹]
مقایسه با پایتون
[ویرایش]هدف زبان برنامه نویسی Mojo سازگاری کامل با اکوسیستم پروژه ژوپیتر است. هنوز بهطور کامل با کدهای Python 3.x سازگار نیست، فقط زیرمجموعهای از نحو آن را فراهم میکند، مثلاً آرگومانهای کلمه کلیدی برای توابع، کلمه کلیدی جهانی، درک فهرست و فرهنگ لغت و پشتیبانی از کلاسها را فراهم میکند. علاوه بر این، Mojo همچنین ویژگیهایی را اضافه میکند که برنامهنویسی سطح پایین عملکردی را امکانپذیر میسازد: "fn" برای ایجاد توابع تایپ شده، کامپایل شده و "struct" برای جایگزینهای بهینهشده با حافظه برای کلاسها. یک ساختار در Mojo شبیه کلاس پایتون است: هر دو از متدها، فیلدها، بارگذاری بیش از حد اپراتورها، دکوراتورها برای برنامهنویسی متا پشتیبانی میکنند.[۴] موجو میتواند با استفاده مجدد از زمان اجرا CPython، کدهای موجود پایتون 3.x را فراخوانی کند. ماژولار قصد دارد یکپارچگی را برای وارد کردن شفاف ماژولهای Clang C/C++ و ایجاد شفاف رابط عملکرد خارجی بین C/C++ و Mojo اضافه کند.
موجو دارای یک چک کننده قرض است که از راست تأثیر گرفتهاست و از این نظر به پایتون شباهت ندارد.
نمونههای برنامه نویسی
[ویرایش]برنامه سلام جهان:
print('Hello, world!')
جستارهای وابسته
[ویرایش]نسخه ها
[ویرایش]- در 19 اکتبر 2023 نسخه mac منتشر شد.[۱۱]
منابع
[ویرایش]- ↑ ۱٫۰ ۱٫۱ ۱٫۲ ۱٫۳ Krill, Paul (4 May 2023). "Mojo language marries Python and MLIR for AI development". InfoWorld (به انگلیسی).
- ↑ Claburn, Thomas (5 May 2023). "Modular reveals Mojo, Python superset with C-level speed". The Register (به انگلیسی).
- ↑ Pandey, Mohit (3 May 2023). "This New Programming Language is Likely to Replace Python". Analytics India Magazine.
- ↑ ۴٫۰ ۴٫۱ ۴٫۲ ۴٫۳ Yegulalp, Serdar (7 June 2023). "A first look at the Mojo language". InfoWorld (به انگلیسی).
- ↑ Claburn, Thomas (2023-05-05). "Modular finds its Mojo, a Python superset with C-level speed". The Register. Retrieved 2023-08-08.
- ↑ "Modular Docs - Mojo🔥 changelog". docs.modular.com.
- ↑ Lattner, Chris; Pienaar, Jacques (2019). "MLIR Primer: A Compiler Infrastructure for the End of Moore's Law". Retrieved 2022-09-30.
{{cite journal}}
: Cite journal requires|journal=
(help) - ↑ Lattner, Chris; Amini, Mehdi; Bondhugula, Uday; Cohen, Albert; Davis, Andy; Pienaar, Jacques; Riddle, River; Shpeisman, Tatiana; Vasilache, Nicolas; Zinenko, Oleksandr (2020-02-29). "MLIR: A Compiler Infrastructure for the End of Moore's Law". arXiv:2002.11054 [cs.PL].
- ↑ "Modular Docs - Modular AI Engine". docs.modular.com. Archived from the original on 11 June 2023. Retrieved 3 September 2023.
- ↑ "Modular: Mojo - It's finally here!". www.modular.com (به انگلیسی). Retrieved 2023-10-19.
- ↑ "Mojo is now available on Mac". www.modular.com (به انگلیسی). Retrieved 2023-10-19.