هذا هو الأمر comterp الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
comterp - مترجم الأوامر الموزع المتظاهر
موجز
comterp
comterp عن بعد
comterp الخادم "منفذ"
comterp المسجل "المنفذ"
comterp العميل "host" "portnum" ["file"]
comterp telcat "host" "portnum" ["file"]
comterp تشغيل "ملف"
comterp "expr"
الوصف
يوضح comterp مترجم الأوامر المدمج في ivtools. مستخدم (أو عميل
البرنامج) يمكن أن يتفاعل مع comterp عبر stdin و stdout أو telnet (عندما يكون ACE مدمجًا).
صيغة الأمر عبارة عن قائمة أوامر مفصولة بفاصلة منقوطة مع عدد عشوائي من
معلمات محاطة بأقواس ، مع دعم المعلمات الاختيارية والكلمة الأساسية
الحجج ، أي:
command2 (arg1 arg2 arg3: key1 val1: key2 val2) ؛
command1 (arg1 arg2 arg3: key1 val1: key2 val2)
يمكن تضمين التعبيرات الثنائية المشابهة لـ C في أي مكان في لغة الأوامر ، باستخدام
العوامل في الجدول أدناه. يمكن إنشاء المتغيرات بسرعة مع مهمة
عامل التشغيل (على سبيل المثال ، "ball = 1" ينشئ عددًا صحيحًا من المتغير "ball" مضبوطًا على 1). لم يتم إنهاؤه
تتسبب التعبيرات في ملحق سطر أوامر تلقائي (حتى يحدد المحلل اللغوي
التعبير كامل). يمكن استخدام "() و" {} "و" [] "بالتبادل.
COMMAND OPTIONS
comterp
استدعاء مترجم أوامر واحد للتفاعل معه عبر stdin و stdout.
كومترب عن بعد
قم باستدعاء مترجم أوامر واحد ، مثل الافتراضي ، وقم بتضمين أمر بعيد لـ
الوصول إلى comterp's الأخرى في وضع الخادم.
خادم comterp "منفذ"
يستمع إلى الاتصالات ويقبلها على المنفذ ، ثم قم بإعداد مترجم أوامر للانتظار
لأوامر المعالجة من هذا الاتصال.
مسجل comterp "portnum"
يستمع إلى الاتصالات ويقبلها على المنفذ ، ثم ببساطة قم بإعادة توجيه الرسائل الواردة
إلى stdout ، بينما تتأرجح مع خطوط جديدة. لأغراض التصحيح ، ليس حقًا استخدامًا لـ
المترجم.
عميل comterp "مضيف" "منفذ" ["ملف"]
الاتصال بمنفذ على مضيف وإرسال / استقبال مخازن نصية منتهية بسطر جديد. ل
أغراض التصحيح ، وليس استخدام المترجم.
comterp telcat "host" "portnum" ["file"]
اتصل بمنفذ على مضيف ، حدد الملف ، ثم أغلق الاتصال. ليس حقا استخدام
المترجم سواء.
comterp تشغيل "ملف"
تشغيل محتويات الملف ثم الخروج.
comterp "expr"
تقييم التعبير المفرد ثم الخروج.
مشغل الجدول
نوع أمر الأولوية اسم أمر المشغلين
--------- ------------ -------- ----- ----
. نقط 130 R-to-L ثنائي
`bquote 125 R-to-L أحادي البادئة
! ينفي 110 R-to-L أحادي البادئة
~ bit_not 110 R-to-L- بادئة أحادية
++ incr 110 R-to-L أحادي البادئة
++ incr_after 110 R-to-L أحادي postfix
- ناقص 110 R-to-L- بادئة أحادية
- decr 110 R-to-L أحادي البادئة
- decr_after 110 R-to-L أحادي postfix
** كرر 90 L-to-R الثنائية
.. كرر 80 L-to-R ثنائي
٪ mod 70 L-to-R ثنائي
* mpy 70 L-to-R ثنائي
/ div 70 L-to-R ثنائي
+ أضف 60 L-to-R ثنائي
- فرعي 60 L إلى R ثنائي
<< lshift 55 L-to-R ثنائي
>> rshift 55 L-to-R ثنائي
<lt 50 L-to-R ثنائي
<= lt_or_eq 50 L-to-R ثنائي
> gt 50 L-to-R ثنائي
> = gt_or_eq 50 L-to-R ثنائي
! = not_eq 45 L-to-R ثنائي
== مكافئ 45 L-to-R ثنائي
& bit_and 44 L-to-R ثنائي
^ bit_xor 43 L-to-R ثنائي
| bit_or 42 L-to-R ثنائي
&& و 41 L-to-R ثنائي
|| أو 40 L-to-R ثنائي
، tuple 35 L-to-R binary
،، تيار concat 33 L-to-R ثنائي
$ stream 32 R-to-L- بادئة أحادية
قائمة $$ 32 R-to-L أحادي البادئة
٪ = mod_assign 30 R-to-L ثنائي
* = mpy_assign 30 R-to-L ثنائيًا
+ = add_assign 30 R-to-L ثنائي
- = تعيين فرعي 30 R-to-L ثنائي
/ = div_assign 30 R-to-L ثنائيًا
= تعيين 30 R-to-L ثنائي
؛ تسلسل 10 L-to-R ثنائي
الرياضيات الأوامر:
n = min (ab) - إرجاع الحد الأدنى من a و b
n = max (ab) - إرجاع الحد الأقصى لـ a و b
n = abs (a) - إرجاع القيمة المطلقة لـ
dbl = exp (x) - تُرجع القيمة e المرفوعة إلى أس x
dbl = log (x) - تُرجع اللوغاريتم الطبيعي لـ x
dbl = log10 (x) - تُرجع لوغاريتم x ذو الأساس 10
dbl = log2 (x) - تُرجع لوغاريتم x ذو الأساس 2
dbl = pow (xy) - تُرجع قيمة x المرفوعة إلى أس y
dbl = acos (x) - إرجاع جيب التمام القوسي لـ x بالتقدير الدائري
dbl = asin (x) - تُرجع الجيب القوسي لـ x بالتقدير الدائري
dbl = atan (x) - تُرجع مماس القوس لـ x بالتقدير الدائري
dbl = atan2 (yx) - تُرجع مماس القوس لـ y على x
dbl = cos (x) - إرجاع جيب تمام x راديان
dbl = sin (x) - تُرجع جيب الزاوية لـ x راديان
dbl = tan (x) - إرجاع ظل الزاوية لـ x راديان
dbl = sqrt (x) - تُرجع الجذر التربيعي لـ x
dbl = pi () - إرجاع قيمة pi
dbl = radtodeg (dbl) - تحويل الراديان إلى درجات
dbl = degtorad (dbl) - تحويل الدرجات إلى راديان
num = floor (num) - إرجاع أقرب قيمة عدد صحيح أقل من أو تساوي الوسيطة
num = ceil (num) - تُرجع أقرب قيمة عدد صحيح أكبر من أو تساوي الوسيطة
num = round (num) - إرجاع أقرب قيمة عدد صحيح
نسيب تحول لأي لبس MATRIX الأوامر:
النقطة = xform (x، y a00، a01، a10، a11، a20، a21) - التحويل التقريبي لإحداثيات x و y
affine = معكوس (a00، a01، a10، a11، a20، a21) - تحويل أفيني معكوس
مصفوفة =خرب(مصفوفة) - نقل مصفوفة عشوائية
مصفوفة = مصفوفة * مصفوفة - ضرب المصفوفة
إحصائي / عشوائي الأوامر:
sum (val1 [، val2 [، ...، valn]]) - إرجاع مجموع القيم
يعني (val1 [، val2 [، ...، valn]]) - متوسط إرجاع القيم
var (val1 [، val2 [، ...، valn]]) - إرجاع تباين القيم
stddev (val1 [، val2 [، ...، valn]]) - إرجاع الانحراف المعياري للقيم
rand ([minval، maxval]) - إرجاع رقم عشوائي بين 0 و 1 أو minval، maxval
srand (seedval) - مولد رقم عشوائي للبذور
قائمة الأوامر:
lst = list ([olst | strm | val]: strmlst: attr: size n) - إنشاء قائمة أو نسخ قائمة أو تحويل
مجرى
val = at (list | attrlist | str n: set val: ins val) - إرجاع (أو تعيين أو إدراج بعد) العنصر التاسع
في قائمة أو سلسلة
num = size (list | attrlist | str) - حجم إرجاع قائمة (أو سلسلة)
val = index (list | str val | char | str: last: all: substr) - مؤشر إرجاع القيمة (أو char أو
سلسلة) في قائمة (أو سلسلة) ، لا شيء إذا لم يتم العثور عليها.
مجرى الأوامر:
val = next (stream) - إرجاع القيمة التالية من الدفق
strm = Stream (ostrm | list | attrlist | val) - نسخ الدفق أو تحويل القائمة
cnt = كل (strm) - تيار اجتياز يعيد طوله
comp = filter (comps classid) - مرشح تيار من comps لمطابقة classid
مراقبة أوامر (باستخدام بريد.. اعلاني تقييم):
val = cond (testexpr trueexpr falseexpr) - قم بتقييم testexpr ، وإذا كان صحيحًا ، فقم بتقييم و
إرجاع trueexpr ، وإلا قم بتقييم وإرجاع falseexpr
val = if (testexpr: then expr: else expr) - قيم testexpr ونفذ: then
إذا كان التعبير صحيحًا ، فإن التعبير: else if false.
val = لـ (initexpr whileexpr [nextexpr [bodyexpr]]: body expr) - for loop
val = while ([testexpr [bodyexpr]]: nilchk: until: body expr) - while loop
val = switch (val key-body-pairs) - بيان التبديل (: casen for pos. ،: case_n for neg. ،
خلاف ذلك: رمز)
تابع - انتقل إلى التكرار التالي لحلقة for أو while
كسر ([retval]) - الخروج من حلقة for أو while
أخرى أوامر
help (cmdname [cmdname ...]: all: posteval) - مساعدة للأوامر
val = trace ([flag]: get) - تبديل أو ضبط وضع التتبع
pause ([msgstr]) - إيقاف تنفيذ البرنامج النصي مؤقتًا حتى C / R.
الخطوة () - تبديل تنفيذ النص التدريجي
fileobj | pipeobj = فتح ([اسم الملف [modestr]]: pipe: in: out: err) - أمر فتح الملف
إغلاق (fileobj | pipeobj) - أمر إغلاق الملف
[str] = طباعة ([fmtstr] [val [val1 [... valn]]]: سلسلة |: str: out: err: file fileobj | pipeobj
: بادئة str) - قيمة طباعة بسلسلة تنسيق اختيارية
str = gets (fileobj | pipeobj) - تحصل على سلسلة منتهية بسطر جديد من ملف
val = global (رمز) | global (رمز) = val | عالمي (رمز: واضح) | عالمي (: cnt) - اصنع رمزًا
شامل
int | lst = symid (رمز [رمز ...] |: max) - إرجاع معرف (معرفات) عدد صحيح مرتبط بـ
حرف او رمز)
sym | lst = الرمز (symid [symid ...]) - رمز الإرجاع المرتبط بمعرف (أرقام) عدد صحيح
val | lst = symval (رمز [رمز ...]) - القيمة (القيم) المعادة المرتبطة بالرمز
المتغيرات
sym | lst = symadd (sym | str [sym | str ...]) - أنشئ رمز (رموز) وارجع بدون بحث.
sym = symvar (sym) - إرجاع الرمز كما هو
str = symstr (sym) - إرجاع نسخة سلسلة من الرمز
n = strref (str | symid) - إرجاع عدد مرجع السلسلة
lst = الانقسام (الرمز | السلسلة: tokstr [delim]: tokval [delim]: keep: reverse) - رمز الانقسام
أو سلسلة في قائمة الأحرف (أو الرموز).
str = Join (clist: sym) - ربط قائمة الأحرف في سلسلة
str = substr (str n | str: after: nonil) - استخراج الأحرف من سلسلة (: إرجاع nonil
سلسلة إذا لم يكن هناك تطابق)
bool = eq (str1 str2: n len) - مقارنة سلسلة جزئية
bool = eq (sym1 sym2: sym) - مقارنة الرموز
postfix (arg1 [arg2 [arg3 ... [argn]]]) - صدى حجج postfix غير المُقيَّمة (مع
[narg | nkey] بعد أوامر محددة ، {narg | nkey} بعد أوامر غير محددة ، (narg) بعد
مفاتيح ، و * أوامر ما بعد التقييم التالية)
تحليل (fileobj) - تحليل تعبير واحد من ملف
arr = posteval (arg1 [arg2 [arg3 ... [argn]]]) - بعد تقييم كل وسيطة ثابتة (حتى
لا شيء) والعودة الصفيف
sym = attrname (سمة) - إرجاع حقل الاسم للزوج المنقط
val = attrval (سمة) - حقل القيمة المرجعة للزوج المنقط
dotlst = dot (name) - أنشئ قائمة زوج منقط فارغ
quit () - قم بإنهاء المترجم
خروج () - الخروج من التطبيق بأكمله
فارغ () - بيان فارغ
val = run (filename: str: popen) - تشغيل الأوامر من ملف (أو سلسلة)
val = remote (hoststr portnum cmdstr: nowait) - قم بتقييم سلسلة الأمر عن بُعد بعد ذلك
تقييم سلسلة النتائج محليا
val = EVAL (cmdstr | funcobj [cmdstr | funcobj ...]: symret) - قيم السلسلة (أو funcobj) على أنها
الأوامر ، قم بإرجاع الرمز اختياريًا بدلاً من الصفر
funcobj = func (body: echo) - قم بتغليف مجموعة من الأوامر في كائن قابل للتنفيذ
val = shell (cmdstr) - تقييم الأمر في shell
انت نائم(مللي ثانية) - النوم ميكروثانية
كتم الصوت ([علم]) - ضبط أو تبديل علامة كتم الصوت
لا شيء ([...]) - قبول أي وسيطات والعودة لا شيء
c = char (num: u) - تحويل أي رقم إلى حرف
s = short (num: u) - تحويل أي رقم إلى قصير
i = int (num: u) - تحويل أي عدد إلى عدد صحيح
l = long (num: u) - تحويل أي رقم إلى طويل
f = float (num) - تحويل أي رقم إلى عدد عشري
d = double (num) - تحويل أي عدد إلى ضعف
sym | lst = type (val [val ...]) - رمز (رموز) إرجاع للقيمة (القيم)
sym | lst = class (val [val ...]) - رمز (رموز) لفئة الإرجاع لقيمة (قيم) نوع الكائن
int = ctoi (char) - تحويل الحرف إلى عدد صحيح
flag = isspace (char) - إرجاع true إذا كان الحرف عبارة عن مسافة بيضاء
flag = isdigit (char) - إرجاع صحيح إذا كان الحرف رقمًا رقميًا
flag = isspace (char) - إرجاع true إذا كان الحرف أبجديًا
str = arg (n) - إرجاع وسيطة سطر الأوامر
n = narg (n) - إرجاع عدد وسيطات سطر الأوامر
num = nand (ab) - اتجاه أحادي NAND (تم إلغاء AND)
num = ولا (ab) - أحادي المعامل NOR (نفي OR)
num = xnor (ab) - باتجاه أحادي XNOR (XOR نفي)
فقط IN الخادم MODE
str = timeexpr (comstr: sec n) - سلسلة الأمر للتنفيذ على فترات
استخدم comterp عبر الإنترنت باستخدام خدمات onworks.net