.TH ol 1 "Jan 12, 2021" .SH "نام (NAME)" ol \- کامپایلر و مفسر Owl Lisp .SH "خلاصه دستور (SYNOPSIS)" .B ol .RI [ options ] " " [ path ] " ..." .SH "توضیحات (DESCRIPTION)" ‏Owl Lisp یک نگارش کاملاً تابعی از R7RS Scheme است. از ol می‌توان برای ارزیابی تعاملی برنامه‌ها و کامپایل آن‌ها به باینری‌های محلی (native) از طریق C استفاده کرد. .PP .SH "گزینه‌ها (OPTIONS)" این برنامه از ساختار معمول خط فرمان گنو پیروی می‌کند که در آن گزینه‌های طولانی با دو خط تیره (\(aq\-\(aq) آغاز می‌شوند. خلاصه‌ای از گزینه‌های ضروری خط فرمان در ادامه آورده شده است. فهرست کامل در صفحهٔ راهنما نمایش داده می‌شود. .TP .B \-h, \-\-help نمایش خلاصه‌ای از گزینه‌ها. .TP .B \-v, \-\-version نمایش نسخهٔ برنامه. .TP .B \-e, \-\-eval string ارزیابی string، چاپ مقدار آن، و خروج با وضعیت 0 مگر در صورت وقوع خطا. .TP .B \-t, \-\-test string ارزیابی string و خروج با وضعیت 1 در صورتی که مقدار آن #false باشد، 0 در صورت true بودن، یا 126 در صورت بروز خطا. .TP .B \-o, \-\-output output-file کامپایل فایل داده‌شده به fasl یا کد C، و ذخیرهٔ نتیجه در فایل خروجی مشخص‌شده. .TP .B \-r, \-\-run path بارگذاری بی‌صدای فایل و فراخوانی آخرین مقدار با آرگومان‌های باقیماندهٔ خط فرمان. .TP .B \-x, \-\-output-format format انتخاب قالبی که ol باید ورودی داده‌شده را به آن کامپایل کند. گزینه‌های معتبر در حال حاضر \fIc\fR و \fIfasl\fR هستند. این مقدار معمولاً از پسوند فایل ارائه‌شده در \-o استنتاج می‌شود و بنابراین معمولاً نیازی به تعیین آن نیست. .TP .B -O0, -O1, -O2 تولید بایت‌کد ساده، کامپایل برخی از توابع متداول به C یا کامپایل همهٔ موارد ممکن. این گزینه‌ها تنها هنگام کامپایل به C معنادار هستند. .TP .B \-l, \-\-load path از سرگیری اجرای وضعیت برنامه که با \fIsuspend\fR ذخیره شده است. .SH "مثال‌ها (EXAMPLES)" .TP .B ایجاد یک باینری ساده $ echo '(lambda (args) (for-each print args))' > test.l $ ol -o test.c test.l $ gcc -o test test.c $ ./test foo bar .TP .B کامپایل درون یک لوله (pipe) $ echo '(lambda (args) (print (cons "I got " args)))' | ol -x c -o - | gcc -x c -o test - && ./test 11 22 33 .TP .B مقایسهٔ بارگذاری در برابر اجرای فایل‌ها $ echo '(print "Hello, world!")' > test.l $ ol test.l Hello, world! $ echo '(lambda (args) (print "Hello, world!"))' > test.l $ ol --run test.l arg1 arg2 arg3 Hello, world! .SH "همچنین ببینید (SEE ALSO)" .BR ovm (1), .BR gcc (1), .BR scheme48 (1) .SH "نویسندگان (AUTHORS)" ‏Owl Lisp و این صفحهٔ راهنما توسط Aki Helin نوشته شده‌اند.