Travel Agency

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

 

CPython

اولین و پر استفاده ترین پیاده سازی از پایتون نوشته شده در زبان C. این پیاده سازی معمولاً همان است که به عنوان Python جا افتاده ولی وقتی مردم بخواهند در مورد آن و نحوه کارش حرف بزنند آن را CPython صدا می زنند.

Stackless Python

تقریباً خیلی زیاد شبیه CPython است. کریستیان تیسمر (Christian Tismer) حلقه main مفسر CPython رو دستکاری کرد تا استفاده از پشته C در این پیاده سازی رو به حداقل برسونه. این یعنی در هنگام صدا زدن یک تابع بازگشتی Stackless Python از پشته استفاده نمیکنه و این یعنی اگه CPython چندهزار بار میتونه یک تابع بازگشتی رو (به دلیل پر شدن پشته) صدا بزنه، این پیاده سازی میتونه بدون محدودیت اینکار رو انجام بده.

Stackless همچنین از CPython کمی سریعتره (حدود 10 درصد)، از نخ های سبک و دنباله دار پشتیبانی می کنه و یک جامعه متشکل از چندین کاربر حرفه ای پیدا کرده که سعی می کنن برنامه های خیلی قوی با اون پیاده سازی کنن مثل یک بازی آنلاین دو نفره. صفحه اصلی این پیاده سازی http://www.stackless.comاست.

Jython

Jython یک پیاده سازی پایتون نوشته شده تحت جاوا است. (این پیاده سازی اول JPython نام گرفت ولی به خاطر مشکلات علامت تجاری به این اسم شناخته شد.) جایتون کدهای پایتون را به بایت کد های جاوا کامپایل می کند و می تواند به طور مستقیم از تمام کلاسهای جاوا استفاده کند. صفحه اصلی جایتون:http://www.jython.org.

IronPython

این پیاده سازی در کنار NET Common Language Runtime. کار می کند. این پروژه هنوز در مراحل اولیه به سر می برد اما کارایی اولیه اش بسیار عالی بوده است. جیم هوگونین (Jim Hugunin)، مدیر سرپرست این پروژه، توسط مایکروسافت استخدام شد تا روی پشتیبانی پویای زبان از CLR کار کند و یکی از کارهای او کامل کردن پیاده سازی IronPython است.

PyPy

این پیاده سازی توسط خود پایتون نوشته شده است و به زبانهای سطح پایین ترجمه می شود. PyPy، یک پیاده سازی منعطف، سریع و فوق العاده از پایتون را که می تواند با Psyco و Stackless کار کند را فراهم کرد. در دسامبر 2004 این پروژه جایزه بودجه اتحادیه اروپا را کسب کرد و توسعه دهندگانش توانستند کار خود را به صورت تمام وقت تا سال 2006 انجام دهند.

Python برای NET.

این پیاده سازی در واقع با پیاده سازی CPython کار می کند اما یک برنامه مدیریت شده تحت NET. است و استفاده از کتابخانه های NET. را میسر می کند. این پیاده سازی توسط برایان لوید (Brian Lloyd) طراحی شده است. برای اطلاعات بیشتر به اینجا مراجعه کنید.

Vyper

وایپر پیاده سازی دیگری از پایتون است که با زبان برنامه نویسی Objective Caml نوشته شده است. تمام توسعه دهندگان این پیاده سازی دیگر در پیش ما نیستند اما سورس کد آن هنوز موجود است: صفحه اصلی وایپر.

لینک منبع: http://www.python.org/dev/implementations/

----

نویسنده: پدرام بهروزی


کلمات کلیدی:


نوشته شده توسط Abteen 94/10/8:: 1:59 صبح     |     () نظر