چیکن (پیاده سازی اسکیم). چیکن ( به صورت CHICKEN ) یک زبان برنامه نویسی است، به ویژه یک کامپایلر و مفسّر که گویشی از زبان برنامه نویسی اسکیم را پیاده سازی می کند و کد منبع Scheme را به C استاندارد کامپایل می کند. بیشتر سازگار با R5RS است و افزونه های زیادی را به استاندارد پیشنهاد می دهد. استاندارد جدیدتر R7RS از طریق یک کتابخانه افزونه پشتیبانی می شود. [ ۲] چیکن یک نرم افزار رایگان و منبع باز است که تحت مجوز BSD در دسترس است. این برنامه بیشتر در Scheme اجرا می شود، بعضی از قسمت ها در C برای عملکرد یا آسان تر تعبیه کردن در برنامه های به زبان برنامه نویسی C است.
تمرکز چیکن به سرعت از شعار آن مشخص می شود: «یک سیستم اسکیم عملی و قابل حمل».
تمرکز اصلی چیکن استفادهٔ عملی از Scheme برای نوشتن نرم افزار در دنیای واقعی است. Scheme به دلیل استفاده در برنامه های درسی علوم کامپیوتر و آزمایش زبان برنامه نویسی کاملاً مشهور است، اما در تجارت و صنعت کاربرد کمی داشته است. [ ۳] جامعهٔ چیکن مجموعهٔ بزرگی از کتابخانه ها را برای انجام کارهای مختلف تولید کرده است. Chicken wiki ( نرم افزاری که آن را اجرا می کند، خود یک برنامه چیکن است ) هم شامل لیستی از نرم افزارهایی است که به زبان چیکن نوشته شده اند. [ ۴]
هدف دیگر چیکن قابل حمل بودن است. با کامپایل کردن در یک نمایش میانی، در این حالت C قابل حمل ( همانند Gambit و Bigloo ) ، برنامه های نوشته شده در چیکن را می توان برای سیستم عامل های رایج مانند Linux، macOS، سایر سیستم های مشابه یونیکس، ویندوز، هایکو و پلتفرم های تلفن همراه iOS و Android کامپایل کرد. [ ۵] همچنین دارای پشتیبانی داخلی برای ترجمهٔ دوگانه برنامه ها و برنامه های افزودنی است[ ۶] که به شما اجازه می دهد در پلتفرم های سامانهٔ نهفته مختلف مورد استفاده قرار گیرد.
مانند بسیاری از کامپایلرهای اسکیم، چیکن از C استاندارد به عنوان نمایش میانی استفاده می کند. یک برنامهٔ Scheme توسط کامپایلر چیکن به C ترجمه می شود و سپس یک کامپایلر C برنامهٔ C را به کد ماشین برای معماری رایانه مورد نظر ترجمه کرده، یک برنامهٔ قابل اجرا تولید می کند. در دسترس بودن جهانی C آن را برای این منظور مفید می کند.
طراحی چیکن از مقاله ۱۹۹۴[ ۷] توسط هنری بیکر الهام گرفته شده است که یک استراتژی ابتکاری برای کامپایل کردن Scheme به C طرح کرده است. یک برنامهٔ Scheme به تابع های C کامپایل می شود. این توابع C هرگز به دستور return نمی رسند. در عوض، آن ها بعد از کامل شدن، continuation جدید را صدا می زنند. این continuationها توابع C هستند و به عنوان آرگومان های اضافی به سایر توابع C منتقل می شوند. آن ها توسط کامپایلر محاسبه می شوند.
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلفتمرکز چیکن به سرعت از شعار آن مشخص می شود: «یک سیستم اسکیم عملی و قابل حمل».
تمرکز اصلی چیکن استفادهٔ عملی از Scheme برای نوشتن نرم افزار در دنیای واقعی است. Scheme به دلیل استفاده در برنامه های درسی علوم کامپیوتر و آزمایش زبان برنامه نویسی کاملاً مشهور است، اما در تجارت و صنعت کاربرد کمی داشته است. [ ۳] جامعهٔ چیکن مجموعهٔ بزرگی از کتابخانه ها را برای انجام کارهای مختلف تولید کرده است. Chicken wiki ( نرم افزاری که آن را اجرا می کند، خود یک برنامه چیکن است ) هم شامل لیستی از نرم افزارهایی است که به زبان چیکن نوشته شده اند. [ ۴]
هدف دیگر چیکن قابل حمل بودن است. با کامپایل کردن در یک نمایش میانی، در این حالت C قابل حمل ( همانند Gambit و Bigloo ) ، برنامه های نوشته شده در چیکن را می توان برای سیستم عامل های رایج مانند Linux، macOS، سایر سیستم های مشابه یونیکس، ویندوز، هایکو و پلتفرم های تلفن همراه iOS و Android کامپایل کرد. [ ۵] همچنین دارای پشتیبانی داخلی برای ترجمهٔ دوگانه برنامه ها و برنامه های افزودنی است[ ۶] که به شما اجازه می دهد در پلتفرم های سامانهٔ نهفته مختلف مورد استفاده قرار گیرد.
مانند بسیاری از کامپایلرهای اسکیم، چیکن از C استاندارد به عنوان نمایش میانی استفاده می کند. یک برنامهٔ Scheme توسط کامپایلر چیکن به C ترجمه می شود و سپس یک کامپایلر C برنامهٔ C را به کد ماشین برای معماری رایانه مورد نظر ترجمه کرده، یک برنامهٔ قابل اجرا تولید می کند. در دسترس بودن جهانی C آن را برای این منظور مفید می کند.
طراحی چیکن از مقاله ۱۹۹۴[ ۷] توسط هنری بیکر الهام گرفته شده است که یک استراتژی ابتکاری برای کامپایل کردن Scheme به C طرح کرده است. یک برنامهٔ Scheme به تابع های C کامپایل می شود. این توابع C هرگز به دستور return نمی رسند. در عوض، آن ها بعد از کامل شدن، continuation جدید را صدا می زنند. این continuationها توابع C هستند و به عنوان آرگومان های اضافی به سایر توابع C منتقل می شوند. آن ها توسط کامپایلر محاسبه می شوند.

wiki: چیکن (پیاده سازی اسکیم)