.\" Written by Robert Merkel (rgmerk@mira.net) .\" augmented by Rob Browning .\" Process this file with .\" groff -man -Tascii foo.1 .\" .\" title section date source manual .TH GUILE 1 "2011-03-04" GNU "GNU Guile 2.2" . .SH "نام (NAME)" guile \- زبان گسترش پروژه گنو . .SH "خلاصه دستور (SYNOPSIS)" .B guile .RB [\| \-L .IR DIRECTORY \|] .RB [\| \-l .IR FILE \|] .RB [\| \-e .IR FUNCTION \|] .\".RI [\| \\\\ \|] .RB [\| \e \|] .RB [\| \-c .IR EXPR \|] .RB [\| \-s .IR SCRIPT \|] .RB [\| \-\- \|] .RI [\| SCRIPT .RI [\| ARGs\ for\ SCRIPT \|]\c .RI ] تنها کاربردی‌ترین گزینه‌ها در اینجا فهرست شده‌اند؛ برای مشاهده باقی موارد به ادامه متن مراجعه کنید. . .SH "توضیحات (DESCRIPTION)" پروژه GNU Guile یک پیاده‌سازی از زبان برنامه‌نویسی Scheme است. این نرم‌افزار استانداردهای زبانی R5RS و R6RS را گسترش داده و قابلیت‌های اضافی لازم برای استفاده‌های کاربردی و واقعی را فراهم می‌کند. نرم‌افزار Guile برای استفاده تعاملی، اسکریپت‌نویسی پایه، و گسترش برنامه‌های کاربردی بزرگتر، و همچنین برای توسعه برنامه‌های مستقل به زبان Scheme بسیار مناسب است. خود فایل اجرایی .B guile یک کامپایلر تعاملی مستقل و یک محیط زمان‌اجرا (runtime) برای برنامه‌های Scheme فراهم می‌کند؛ هم برای استفاده تعاملی و هم برای اجرای اسکریپت‌ها یا برنامه‌های Scheme. این صفحه راهنما صرفاً راهنمایی کوتاهی درباره نحوه فراخوانی .B guile از طریق خط فرمان ارائه می‌دهد. لطفاً برای اطلاعات بیشتر به مستندات info نرم‌افزار Guile مراجعه کنید (دستور \fBinfo "(guile)Invoking Guile"\fR را در خط فرمان وارد کنید). . .SH "گزینه‌ها (OPTIONS)" .TP .BI -L \ DIRECTORY افزودن \fIDIRECTORY\fR به ابتدای مسیر بارگذاری ماژول‌های Guile. . .TP .BI -l \ FILE بارگذاری کد منبع Scheme از \fIFILE\fR. . .TP .BI -e \ FUNCTION پس از خواندن \fISCRIPT\fR، تابع \fIFUNCTION\fR را روی آرگومان‌های خط فرمان اعمال می‌کند. توجه داشته باشید که \fIFUNCTION\fR ارزیابی می‌شود، بنابراین، برای مثال، .B (@ (my-module) my-proc) در اینجا معتبر است. . .TP .B \e «سوئیچ متا» (meta switch)، برای دور زدن محدودیت‌های اسکریپت‌های #! استفاده می‌شود. برای جزئیات بیشتر به بخش «The Meta Switch» در مستندات texinfo مراجعه کنید. . .TP .B -- پایان دادن به پردازش آرگومان‌ها و آغاز به کار .B guile در حالت تعاملی (interactive). . .TP .BI -c \ EXPR پایان دادن به پردازش آرگومان‌ها، و ارزیابی \fIEXPR\fR به عنوان یک عبارت Scheme. . .TP .BI -s \ SCRIPT-FILE بارگذاری کد منبع Scheme از \fISCRIPT-FILE\fR و اجرای آن به عنوان یک اسکریپت. توجه داشته باشید که در بسیاری از موارد استفاده از \fB-s\fR ضروری نیست؛ می‌توان .B guile را به سادگی به صورت زیر فراخوانی کرد: .B guile .I SCRIPT-FILE ARG... . .TP .B -ds اجرای \fB\-s \fISCRIPT\fR در این نقطه از توالی گزینه‌ها. توجه داشته باشید که این آرگومان باید در کنار \fB\-s\fR استفاده شود. . .TP .B --debug راه‌اندازی .B guile با ماشین مجازی اشکال‌زدایی (debugging VM). به طور پیش‌فرض، اشکال‌زدایی زمانی که .B guile به صورت تعاملی فراخوانی شود روشن است؛ در غیر این صورت خاموش است. . .TP .B --no-debug راه‌اندازی .B guile بدون ماشین مجازی اشکال‌زدایی، حتی اگر .B guile به صورت تعاملی اجرا شود. . .TP .B --auto-compile کامپایل خودکار فایل‌های منبع (رفتار پیش‌فرض). . .TP .B --no-auto-compile غیرفعال‌سازی کامپایل خودکار فایل‌های منبع. . .TP \fB\-\-listen\fR[=\fIP\fR] شنود روی یک پورت یا سوکت برای اتصالات دوردست REPL. برای جزئیات بیشتر به دفترچه راهنما مراجعه کنید. . .TP \fB\-\-use\-srfi\fR=\fIN,M\fR... بارگذاری افزونه‌های SRFI شامل \fIN\fR، \fIM\fR و غیره. برای مثال: \fB \-\-use\-srfi\fR=\fI8,13\fR. . .TP .BI -x \ EXTENSION افزودن \fIEXTENSION\fR به فهرست پسوندهای بارگذاری .B guile. . .TP \fB\-h\fR, \fB\-\-help\fR نمایش شرح گزینه‌های خط فرمان و خروج. . .TP \fB\-v\fR, \fB\-\-version\fR نمایش نسخه guile و خروج. . .TP .B -q در حالت تعاملی، از بارگذاری فایل پیکربندی اولیه کاربر، .I ~/.guile جلوگیری می‌کند. . .SH "محیط (ENVIRONMENT)" .\".TP \w'MANROFFSEQ\ \ 'u .TP .B GUILE_LOAD_PATH اگر .RB $ GUILE_LOAD_PATH پیش از راه‌اندازی .B guile مقداردهی شده باشد، مقدار آن برای گسترش مسیر جستجوی فایل‌های Scheme هنگام بارگذاری استفاده می‌شود. این متغیر باید فهرستی از دایرکتوری‌ها باشد که با دونقطه (:) از هم جدا شده‌اند، و به ابتدای مسیر پیش‌فرض .B %load-path افزوده خواهد شد. .TP .B GUILE_LOAD_COMPILED_PATH اگر .RB $ GUILE_LOAD_COMPILED_PATH پیش از راه‌اندازی .B guile مقداردهی شده باشد، مقدار آن برای گسترش مسیر جستجوی فایل‌های کامپایل‌شده Scheme (فایل‌های .go) هنگام بارگذاری استفاده می‌شود. این متغیر باید فهرستی از دایرکتوری‌ها باشد که با دونقطه (:) از هم جدا شده‌اند، و به ابتدای مسیر پیش‌فرض .B %load-compiled-path افزوده خواهد شد. . .SH "فایل‌ها (FILES)" .TP .I ~/.guile اسکریپت Guile که پیش از هر پردازش دیگری اجرا می‌شود. برای مثال، قطعه کد .I .guile زیر، رابط readline نرم‌افزار guile را فعال می‌کند: .RS 9 .B (use-modules (ice-9 readline)) .RS 0 .B (activate-readline) . .SH "همچنین ببینید (SEE ALSO)" مستندات کامل Guile به صورت یک کتابچه راهنمای Texinfo نگهداری می‌شود. اگر برنامه‌های .B info و .B guile به درستی روی سیستم شما نصب شده باشند، دستور .IP .B info guile .PP باید دسترسی به مستندات کامل را فراهم کند. نشانی مقدمه‌ای کلی برای زبان Scheme ارائه می‌دهد. . .SH "گزارش باگ‌ها (BUGS)" یک فهرست پستی، bug-guile@gnu.org، برای گزارش باگ‌ها و اصلاحیه‌های Guile وجود دارد. اما پیش از گزارش یک مورد به عنوان باگ، لطفاً مطمئن شوید که واقعاً یک باگ است، نه یک سوءتفاهم یا یک قابلیت تعمدی. از شما تقاضا می‌شود بخش «Reporting Bugs» را در مستندات مرجع Guile (یا سامانه Info) برای کسب راهنمایی در مورد چگونگی و زمان گزارش باگ‌ها مطالعه کنید. همچنین، شماره نسخه Guile مورد استفاده خود را در هر گزارش باگی که ارسال می‌کنید درج نمایید. باگ‌ها در صورتی که بتوان آن‌ها را تفکیک و جداسازی کرد، شانس بالایی برای رفع شدن دارند، بنابراین به نفع شماست که آن‌ها را به گونه‌ای گزارش کنید که به سادگی قابل بازتولید باشند. . .SH "کپی‌رایت و تکثیر (COPYRIGHT)" حق نشر (C) 2010, 2011 بنیاد نرم‌افزارهای آزاد (Free Software Foundation, Inc.) اجازه تکثیر و توزیع نسخه‌های بدون تغییر این سند داده می‌شود، مشروط بر اینکه اعلان حق نشر و این اعلان مجوز در تمامی نسخه‌ها حفظ شوند. اجازه تکثیر و توزیع نسخه‌های تغییریافته این سند تحت شرایط تکثیر بدون تغییر داده می‌شود، مشروط بر اینکه تمام اثر اشتقاقی حاصل تحت شرایط اعلانی همسان با این اعلان مجوز توزیع شود. اجازه تکثیر و توزیع ترجمه‌های این سند به زبانی دیگر، تحت شرایط فوق برای نسخه‌های تغییریافته داده می‌شود، به استثنای اینکه این اعلان مجوز ممکن است در ترجمه‌ای بیان شود که توسط بنیاد نرم‌افزارهای آزاد تأیید شده باشد. . .SH "نویسندگان (AUTHORS)" Robert Merkel این صفحه راهنما را نوشت. Rob Browning مواردی را به آن اضافه کرد. .B guile یک نرم‌افزار گنو (GNU) است. ‏Guile در ابتدا بر اساس مفسر SCM اثر Aubrey Jaffer ساخته شده است، و حاصل کار افراد بسیاری است.