سفارش تبلیغ
صبا ویژن

پیاده سازی پایتون

مسیر اصلی پیاده سازی پایتون، که با عنوان سی پایتون نیز شناخته می‌شود، در نشست C در استاندارد C89 نوشته شد. سی پایتون برنامه‌های پایتون را به بایت کد تبدیل می‌کند، که سپس توسط ماشین مجازی اجرا می‌شود. سی پایتون با یک کتابخانه استاندارد بزرگ که به صورت مخلوطی از C و پایتون نوشته شده، توزیع شده‌است. سی پایتون در ورژن‌های مختلف بر روی سیستم عامل های زیادی کار می‌کند، شامل مایکروسافت ویندوز و بیشتر سیستم‌های پیشرفته یونیکس.

پایتون بدون پشته، انشعابی از سی پایتون است که ریز برنامه‌ها را اجرا می‌کند؛ و از پشته حافظه استفاده نمی‌کند. سی پایتون از GIL استفاده می‌کند تا وقتی برنامه پایتون بدون پشته، وابسته به OS است و می‌تواند به صورت همزمان اجرا شود، در هر لحظه فقط به یک زیر برنامه اجازه اجرا داده شود. پایتون برای استفاده در میکرو کنترلرها با وظایف محدود دیگر سیستم عامل های مرجع، متناسب تر است. پیش بینی می‌شود که پایتون بدون پشته بتواند تقریباً روی همان سیستم عاملی که سی پایتون اجرا می‌شود، اجرا شود.

جایتون (به انگلیسی: Jython) برنامه‌های پایتون را به بایت کد جاوا کامپایل می‌کند، که بدین ترتیب می‌تواند با هر ماشین مجازی جاوا اجرا شود و همچنین این امکان فراهم می‌شود که توابع کتابخانه‌ای کلاس جاوا از برنامه پایتون به کار گرفته شود. آی رون پایتون از همین شیوه برای اجرای برنامه‌های پایتون روی چارچوب دات‌نت استفاده می‌کند.

پای پای (به انگلیسی: PyPy) یک پیاده سازی تجربی از پایتون است که می‌تواند چندین تایپ از بایت کد را تولید نماید.

چندین برنامه در بسته مفسر پایتون با برنامه‌های کاربردی (یا آغازگر) وجود دارد که مستقلاً اجرا می‌شوند مانند یونیکس، لینوکس، ویندوز، AmigaOS 4 یا Mac OS X. بسیاری از کتابخانه‌های سه قسمتی (و حتی بعضی از یک قسمتی‌ها) فقط روی ویندوز، لینوکس، BSD و Mac OS X موجود هستند.

در نوکیا 2005 یک مفسر پایتون برای موبایل‌های سری 60 با نام PyS60 تولید شد که شامل بسیاری از ماژولها از سی پایتون بود، و همچنین برخی ماژول‌های اضافه شده برای یکپارچه شدن با سیستم‌عامل اضافه گردید. این پروژه به منظور اجرا روی همه پایگاه‌های مختلف S60، به روز نگاه داشته می‌شود.

همچنین مفسری به نام پایتون سی ای برای ابزار ویندوز CE (شامل بسته PC) وجود دارد. که در آن ابزارهایی برای اجرای آسان و توسعه GUI اضافه شده‌است. اطلاعات بیشتر را می‌توانید روی وب‌گاه PythonCE بیابید.

پایتون چینی زبان برنامه نویسی پایتونی است که از لغت نامه زبان چینی استفاده می‌کند. در کنار کلمات رزرو شده و نام متغیرها، بیشتر عمل گرهای تایپ داده، در چینی می‌توانند به خوبی کد دهی شوند.

تفسیر معنایی

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

برنامه‌های واسط دیگر، امکانات آن را در مفسر پایه افزایش می‌دهند. به طور مثال IDLE و IPython. با استفاده از برنامه واسط پایتون، خصوصیاتی مشابه تکمیل خودکار کد، نگه داشتن زمان اجرای برنامه، و رنگی کردن کلمات کلیدی بدان اضافه می‌شود.

برخی از پیاده سازی‌ها نه تنها به صورت بایت کد می‌توانند کامپایل کنند، بلکه می‌توانند کد پایتون را به کد ماشین تبدیل کنند. تا کنون، این عمل فقط برای زیر مجموعه‌های خاصی از امکانات پایتون انجام شده‌است. پای پای این روش را پذیرفته و ورژن‌های قابل کامپایل برای مجموعه ی خاصی از امکانات پایتون را RPython نامیده است.

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

منابع

wikipedia.com

pylearn.com

python.org