| GUILE(1) | GNU Guile 3.0 | GUILE(1) |
نام (NAME)
guile - زبان گسترش پروژه گنو (GNU)
خلاصه دستور (SYNOPSIS)
guile [-L DIRECTORY] [-l FILE] [-e FUNCTION] [\] [-c EXPR] [-s SCRIPT] [--] [SCRIPT [ARGs for SCRIPT]]
تنها پرکاربردترین گزینهها در اینجا فهرست شدهاند؛ برای مشاهده باقی موارد به ادامه متن رجوع کنید.
توضیحات (DESCRIPTION)
گنو گایل (GNU Guile) پیادهسازی زبان برنامهنویسی اسکیم (Scheme) است. این ابزار استانداردهای زبانی R5RS و R6RS را گسترش داده و ویژگیهای تکمیلی لازم برای کاربردهای واقعی را فراهم میکند.
گایل برای استفاده تعاملی، اسکریپتنویسی پایه، و گسترش برنامههای بزرگتر، و همچنین برای توسعه برنامههای مستقل اسکیم بسیار مناسب است.
خود فایل اجرایی guile یک کامپایلر تعاملی مستقل و محیط زمان اجرا (run-time) برای برنامههای اسکیم فراهم میکند؛ هم برای استفاده تعاملی و هم برای اجرای اسکریپتها یا برنامههای اسکیم.
این صفحه راهنما تنها دستورالعملهای مختصری برای فراخوانی guile از طریق خط فرمان ارائه میدهد. لطفاً برای اطلاعات بیشتر، مستندات info گایل را مطالعه فرمایید (دستور info "(guile)Invoking Guile" را در خط فرمان وارد نمایید).
گزینهها (OPTIONS)
- -L DIRECTORY
- افزودن DIRECTORY به ابتدای مسیر بارگذاری ماژولهای گایل. دایرکتوریهای مشخصشده به ترتیبی که در خط فرمان ذکر شدهاند و پیش از هر دایرکتوری دیگری در متغیر محیطی GUILE_LOAD_PATH جستجو میشوند. مسیرهای اضافهشده در اینجا، در حین اجرای فایل ~/.guile کاربر اعمال نمیشوند.
- -C DIRECTORY
- مشابه -L، اما مسیر بارگذاری را برای فایلهای کامپایلشده تنظیم میکند.
- -l FILE
- بارگذاری کد منبع اسکیم از FILE و ادامه پردازش خط فرمان.
- -e FUNCTION
- پس از خواندن SCRIPT، اعمال FUNCTION بر روی آرگومانهای خط فرمان. توجه داشته باشید که FUNCTION ارزیابی میشود؛ بنابراین برای نمونه، (@ (my-module) my-proc) در اینجا معتبر است.
- \
- «سوییچ متا» (meta switch)، که برای دور زدن محدودیتهای اسکریپتهای #! به کار میرود. برای جزئیات بیشتر، بخش «The Meta Switch» را در مستندات texinfo ببینید.
- --
- توقف پردازش آرگومانها و شروع guile در حالت تعاملی.
- -c EXPR
- توقف پردازش آرگومانها و ارزیابی EXPR به عنوان یک عبارت اسکیم.
- -s SCRIPT-FILE
- بارگذاری منبع اسکیم از SCRIPT-FILE و اجرا به عنوان یک اسکریپت. توجه داشته باشید که در بسیاری از موارد استفاده از -s لازم نیست؛ میتوان guile را به سادگی به صورت guile SCRIPT-FILE ARG... فراخوانی کرد.
- -ds
- اجرای -s SCRIPT در این نقطه از توالی گزینهها. توجه داشته باشید که این آرگومان باید همراه با -s استفاده شود.
- --debug
- راهاندازی guile با ماشین مجازی خطایابی (debugging VM). بهطور پیشفرض، زمانی که guile به صورت تعاملی فراخوانی شود خطایابی فعال است؛ در غیر این صورت غیرفعال خواهد بود.
- --no-debug
- راهاندازی guile بدون ماشین مجازی خطایابی، حتی اگر guile به صورت تعاملی در حال اجرا باشد.
- --auto-compile
- کامپایل خودکار فایلهای منبع (رفتار پیشفرض).
- --fresh-auto-compile
- نامعتبر دانستن حافظه پنهان (کش) کامپایل خودکار و اجبار به کامپایل مجدد.
- --no-auto-compile
- غیرفعالسازی کامپایل خودکار فایلهای منبع.
- --language LANG
- برای باقی آرگومانهای خط فرمان، فرض میشود که فایلهای مشخصشده با -l و عبارتهای ارسالشده با -c به زبان LANG نوشته شدهاند که باید نام یکی از زبانهای پشتیبانیشده توسط کامپایلر باشد. هنگام اجرا در حالت تعاملی، زبان REPL روی LANG تنظیم میشود.
- --listen[=P]
- گوش دادن روی یک درگاه (پورت) یا سوکت برای اتصالهای راه دور REPL. برای جزئیات بیشتر به دفترچه راهنما مراجعه کنید.
- --use-srfi=N,M...
- بارگذاری افزونههای SRFI شامل N، M و غیره. برای نمونه، --use-srfi=8,13.
- --r6rs, --r7rs
- تطبیق محیط اولیه گایل برای پشتیبانی بهتر از R6RS یا R7RS. برای برخی نکات و هشدارها، بخشهای «R6RS Incompatibilities» و «R7RS Incompatibilities» را در صفحات info ببینید.
- -x EXTENSION
- افزودن EXTENSION به فهرست پسوندهای بارگذاری guile .
- -h, --help
- توصیف گزینههای خط فرمان و خروج.
- -v, --version
- نمایش نسخه guile و خروج.
- -q
- در حالت تعاملی، از بارگذاری فایل مقداردهی اولیه کاربر، ~/.guile جلوگیری میکند.
محیط (ENVIRONMENT)
- GUILE_LOAD_PATH
- اگر متغیر $GUILE_LOAD_PATH پیش از شروع guile تنظیم شده باشد، مقدار آن برای گسترش مسیر جستجوی فایلهای اسکیم هنگام بارگذاری استفاده میشود. این متغیر باید فهرستی از دایرکتوریها باشد که با دونقطه (:) از یکدیگر جدا شدهاند و به ابتدای مقدار پیشفرض %load-path اضافه خواهند شد.
- GUILE_LOAD_COMPILED_PATH
- اگر متغیر $GUILE_LOAD_COMPILED_PATH پیش از شروع guile تنظیم شده باشد، مقدار آن برای گسترش مسیر جستجوی فایلهای کامپایلشده اسکیم (فایلهای .go) هنگام بارگذاری استفاده میشود. این متغیر باید فهرستی از دایرکتوریها باشد که با دونقطه (:) از یکدیگر جدا شدهاند و به ابتدای مقدار پیشفرض %load-compiled-path اضافه خواهند شد.
فایلها (FILES)
- ~/.guile
- یک اسکریپت گایل که پیش از وقوع هرگونه پردازش دیگر اجرا میشود. برای نمونه، فایل .guile زیر واسط خطخوان (readline) گایل را فعال میکند:
همچنین ببینید (SEE ALSO)
مستندات کامل گایل به صورت یک راهنمای Texinfo نگهداری میشود. اگر برنامههای info و guile به درستی در سیستم شما نصب شده باشند، دستور
- info guile
باید دسترسی شما به راهنمای کامل را فراهم کند.
وبگاه http://www.schemers.org مقدمهای کلی درباره زبان اسکیم ارائه میدهد.
اشکالزدایی و گزارش باگ (REPORTING BUGS)
یک فهرست پستی به نشانی <bug-guile@gnu.org> برای گزارش باگها و اصلاحات گایل وجود دارد. اما پیش از گزارش هر مورد به عنوان باگ، لطفاً مطمئن شوید که واقعاً یک اشکال است، نه یک سوءتفاهم یا یک قابلیت تعمدی. از شما میخواهیم بخش «Reporting Bugs» را در کتابچه راهنمای مرجع گایل (یا سیستم Info) برای نکاتی درباره نحوه و زمان گزارش باگ مطالعه فرمایید. همچنین، شماره نسخه Guile مورد استفاده خود را در هر گزارش باگی که ارسال میکنید درج نمایید. اگر باگها به صورت ایزوله و تفکیکشده گزارش شوند، با احتمال بسیار بیشتری برطرف خواهند شد؛ بنابراین به نفع شماست که آنها را به گونهای گزارش دهید که به سادگی قابل بازتولید باشند.
حق نشر (COPYING)
حق نشر © 2010, 2011, 2025 متعلق به بنیاد نرمافزارهای آزاد (Free Software Foundation, Inc.)
مجوز تهیه و توزیع نسخههای عیناً برابر با این سند اعطا میشود، مشروط بر آنکه اعلان حق نشر و این اعلان مجوز در تمامی نسخهها حفظ شوند.
مجوز کپی و توزیع نسخههای تغییریافته این سند تحت شرایط کپی عین متن اعطا میشود، مشروط بر آنکه کل اثر مشتقشده حاصل تحت شرایط اعلان مجوزی دقیقاً یکسان با این اعلان توزیع شود.
مجوز کپی و توزیع ترجمههای این سند به زبانهای دیگر تحت شرایط فوق برای نسخههای تغییریافته اعطا میشود، مگر اینکه این اعلان مجوز در ترجمهای که به تأیید بنیاد نرمافزارهای آزاد رسیده است ذکر شود.
نویسندگان (AUTHORS)
رابرت مرکل (Robert Merkel) به نشانی <rgmerk@mira.net> این صفحه راهنما را نوشته است. راب براونینگ (Rob Browning) به نشانی <rlb@defaultvalue.org> به آن افزوده است.
guile یک نرمافزار گنو (GNU) است. گایل در اصل بر پایه مفسر SCM اوبری جافر (Aubrey Jaffer) توسعه یافته و حاصل کار افراد بسیار زیادی است.
| 2017-05-22 | GNU |