Đây là lệnh comterp có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
comterp - trình diễn phiên dịch lệnh phân tán
SYNOPSIS
máy tính
máy tính xa
máy tính máy chủ "portnum"
máy tính người ghi nhật ký "portnum"
máy tính khách hàng "máy chủ" "portnum" ["tệp"]
máy tính telcat "máy chủ" "portnum" ["tệp"]
máy tính chạy "tệp"
máy tính "expr"
MÔ TẢ
comterp trình diễn trình thông dịch lệnh được tích hợp vào ivtools. Một người dùng (hoặc khách hàng
chương trình) có thể tương tác với comterp thông qua stdin và stdout hoặc telnet (khi ACE được tích hợp sẵn).
Cú pháp lệnh là danh sách lệnh được phân tách bằng dấu chấm phẩy với số lượng tùy ý
các tham số được đặt trong dấu ngoặc đơn, với sự hỗ trợ cho các tham số tùy chọn và từ khóa
các đối số, tức là:
command2 (arg1 arg2 arg3: key1 val1: key2 val2);
command1 (arg1 arg2 arg3: key1 val1: key2 val2)
Biểu thức nhị phân giống C có thể được nhúng vào bất kỳ đâu trong ngôn ngữ lệnh, bằng cách sử dụng
trong bảng dưới đây. Các biến có thể được tạo nhanh chóng với một nhiệm vụ
toán tử (tức là "ball = 1" tạo một biến số nguyên "ball" được đặt thành 1). Chưa kết thúc
biểu thức gây ra một phần mở rộng dòng lệnh tự động (cho đến khi trình phân tích cú pháp xác định
biểu thức là hoàn thành). "()," {} "và" [] "đều có thể được sử dụng thay thế cho nhau.
COMMAND LỰA CHỌN
máy tính
Gọi một trình thông dịch lệnh duy nhất để tương tác qua stdin và stdout.
điều khiển từ xa comterp
Gọi một trình thông dịch lệnh duy nhất, như mặc định và bao gồm một lệnh từ xa cho
truy cập comterp khác ở chế độ máy chủ.
máy chủ comterp "portnum"
Nghe và chấp nhận các kết nối trên portnum, sau đó thiết lập trình thông dịch lệnh để đợi
cho và xử lý các lệnh từ kết nối đó.
comterp logger "portnum"
Nghe và chấp nhận các kết nối trên portnum, sau đó chỉ cần chuyển tiếp các tin nhắn đến
để stdout, trong khi tìm kiếm trở lại với các dòng mới. Đối với mục đích gỡ lỗi, không thực sự sử dụng
thông dịch viên.
máy khách comterp "máy chủ" "portnum" ["tệp"]
Kết nối với một portnum trên máy chủ lưu trữ và gửi / nhận bộ đệm văn bản kết thúc dòng mới. Vì
mục đích gỡ lỗi, không thực sự là sử dụng trình thông dịch.
comterp telcat "máy chủ" "portnum" ["tệp"]
Kết nối với một portnum trên máy chủ lưu trữ, chuyển tệp, sau đó đóng kết nối. Không thực sự là một công dụng
của thông dịch viên.
comterp chạy "tệp"
Chạy nội dung của tệp rồi thoát.
comterp "expr"
Đánh giá biểu thức đơn sau đó thoát ra.
NHÀ ĐIỀU HÀNH BẢNG
Toán tử Tên lệnh Loại thứ tự ưu tiên
--------- ------------ -------- ----- ----
. chấm 130 nhị phân R-to-L
`bquote 125 R-to-L tiền tố một ngôi
! phủ định tiền tố một ngôi 110 R-to-L
~ bit_not 110 R-to-L tiền tố đơn vị
++ incr 110 R-to-L tiền tố một ngôi
++ incr_ after 110 R-to-L tiền tố một ngôi
- trừ 110 tiền tố một ngôi R-to-L
- tiền tố một ngôi mười decr 110 R-to-L
- decr_ after 110 R-to-L anary-postfix
** lặp lại 90 nhị phân L-to-R
.. lặp lại 80 nhị phân L-to-R
% mod 70 L-to-R nhị phân
* mpy 70 L-to-R nhị phân
/ div 70 L-to-R nhị phân
+ thêm 60 nhị phân L-to-R
- sub 60 L-to-R nhị phân
<< lshift 55 L-to-R nhị phân
>> rshift 55 L-to-R nhị phân
<lt 50 L-to-R nhị phân
<= lt_or_eq 50 nhị phân L-to-R
> gt 50 nhị phân L-to-R
> = gt_or_eq 50 nhị phân L-to-R
! = not_eq 45 nhị phân L-to-R
== eq 45 nhị phân L-to-R
& bit_and 44 nhị phân L-to-R
^ bit_xor 43 nhị phân L-to-R
| bit_or 42 nhị phân L-to-R
&& và 41 nhị phân L-to-R
|| hoặc 40 nhị phân L-to-R
, bộ 35 nhị phân L-to-R
,, stream concat 33 nhị phân L-to-R
$ stream 32 R-to-L tiền tố một ngôi
$$ list 32 R-to-L tiền tố một ngôi
% = mod_assign 30 nhị phân R-to-L
* = mpy_assign 30 nhị phân R-to-L
+ = add_assign 30 nhị phân R-to-L
- = sub_assign 30 nhị phân R-to-L
/ = div_assign 30 nhị phân R-to-L
= gán 30 nhị phân R-to-L
; seq 10 nhị phân L-to-R
TOÁN HỌC HÀNG HÓA:
n = min (ab) - trả về giá trị nhỏ nhất của a và b
n = max (ab) - trả về giá trị tối đa của a và b
n = abs (a) - trả về giá trị tuyệt đối của a
dbl = exp (x) - trả về giá trị e được nâng lên thành lũy thừa của x
dbl = log (x) - trả về logarit tự nhiên của x
dbl = log10 (x) - trả về logarit cơ số 10 của x
dbl = log2 (x) - trả về logarit cơ số 2 của x
dbl = pow (xy) - trả về giá trị của x được nâng lên thành lũy thừa của y
dbl = acos (x) - trả về cung cosin của x tính bằng radian
dbl = asin (x) - trả về cung sin của x tính bằng radian
dbl = atan (x) - trả về cung tiếp tuyến của x tính bằng radian
dbl = atan2 (yx) - trả về cung tiếp tuyến của y trên x
dbl = cos (x) - trả về cosin của x radian
dbl = sin (x) - trả về sin của x radian
dbl = tan (x) - trả về tang của x radian
dbl = sqrt (x) - trả về căn bậc hai của x
dbl = pi () - trả về giá trị của pi
dbl = radtodeg (dbl) - chuyển đổi radian sang độ
dbl = degtorad (dbl) - chuyển đổi độ sang radian
num = floor (num) - trả về giá trị số nguyên gần nhất nhỏ hơn hoặc bằng đối số
num = ceil (num) - trả về giá trị số nguyên gần nhất lớn hơn hoặc bằng đối số
num = round (num) - trả về giá trị số nguyên gần nhất
CHỦ NGHĨA BIẾN ĐỔI VÀ MATRIX HÀNG HÓA:
point = xform (x, y a00, a01, a10, a11, a20, a21) - biến đổi affine của tọa độ x, y
affine = invert (a00, a01, a10, a11, a20, a21) - biến đổi affine đảo ngược
ma trận =xpose(ma trận) - chuyển vị một ma trận tùy ý
ma trận = ma trận * ma trận - phép nhân ma trận
THỐNG KÊ / NGẪU NHIÊN HÀNG HÓA:
sum (val1 [, val2 [, ..., valn]]) - trả về tổng giá trị
mean (val1 [, val2 [, ..., valn]]) - giá trị trung bình trả về
var (val1 [, val2 [, ..., valn]]) - trả về phương sai của các giá trị
stddev (val1 [, val2 [, ..., valn]]) - trả về độ lệch chuẩn của các giá trị
rand ([minval, maxval]) - trả về số ngẫu nhiên từ 0 đến 1 hoặc minval, maxval
srand (seedval) - trình tạo số ngẫu nhiên hạt giống
DANH SÁCH HÀNG HÓA:
lst = list ([olst | strm | val]: strmlst: attr: size n) - tạo danh sách, sao chép danh sách hoặc chuyển đổi
dòng
val = at (list | attrlist | str n: set val: ins val) - return (hoặc set hoặc insert sau) item thứ n
trong một danh sách hoặc chuỗi
num = size (list | attrlist | str) - trả về kích thước của một danh sách (hoặc chuỗi)
val = index (list | str val | char | str: last: all: substr) - trả về chỉ số của giá trị (hoặc char hoặc
string) trong danh sách (hoặc chuỗi), nil nếu không tìm thấy.
SUỐI HÀNG HÓA:
val = next (stream) - trả về giá trị tiếp theo từ stream
strm = stream (ostrm | list | attrlist | val) - sao chép luồng hoặc chuyển đổi danh sách
cnt = each (strm) - luồng truyền tải trả về độ dài của nó
comp = filter (comps classid) - dòng lọc của comps để phù hợp với classid
KIỂM SOÁT HÀNG (sử dụng gửi đánh giá):
val = cond (testexpr trueexpr falseexpr) - đánh giá testexpr, và nếu đúng, đánh giá và
trả về trueexpr, nếu không thì đánh giá và trả về falseexpr
val = if (testexpr: then expr: else expr) - đánh giá testexpr và thực thi: then
biểu thức nếu đúng, biểu thức: else nếu sai.
val = for (initexpr whileexpr [nextexpr [bodyexpr]]: body expr) - vòng lặp for
val = while ([testexpr [bodyexpr]]: nilchk: Until: body expr) - vòng lặp while
val = switch (val key-body-pair) - câu lệnh switch (: casen cho pos.,: case_n cho neg.,
ngược lại: biểu tượng)
tiếp tục - bỏ qua lần lặp tiếp theo của vòng lặp for hoặc while
break ([retval]) - thoát ra khỏi vòng lặp for hoặc while
KHÁC HÀNG
help (cmdname [cmdname ...]: all: posteval) - trợ giúp về lệnh
val = trace ([flag]: get) - chuyển đổi hoặc đặt chế độ theo dõi
tạm dừng ([msgstr]) - tạm dừng thực thi tập lệnh cho đến khi C / R
step () - chuyển đổi thực thi tập lệnh theo từng bước
fileobj | pipeobj = open ([filename [khiêm tốn]]: pipe: in: out: err) - lệnh mở tệp
close (fileobj | pipeobj) - lệnh đóng tệp
[str] = print ([fmtstr] [val [val1 [... valn]]]: string |: str: out: err: file fileobj | pipeobj
: prefix str) - giá trị in với chuỗi định dạng tùy chọn
str = get (fileobj | pipeobj) - lấy một chuỗi kết thúc dòng mới từ một tệp
val = global (ký hiệu) | global (ký hiệu) = val | global (ký hiệu: clear) | global (: cnt) - tạo biểu tượng
toàn cầu
int | lst = symid (ký hiệu [ký hiệu ...] |: max) - trả về (các) id số nguyên được liên kết với
(các) biểu tượng
sym | lst = Symbol (symid [symid ...]) - trả về (các) biểu tượng được liên kết với (các) id số nguyên
val | lst = symval (ký hiệu [ký hiệu ...]) - (các) giá trị trả về được liên kết với ký hiệu
(các) biến
sym | lst = symadd (sym | str [sym | str ...]) - tạo (các) biểu tượng và trả về mà không cần tra cứu.
sym = symvar (sym) - trả về biểu tượng nguyên trạng
str = symstr (sym) - trả về phiên bản chuỗi ký hiệu
n = strref (str | symid) - trả về số tham chiếu chuỗi
lst = split (ký hiệu | string: tokstr [delim]: tokval [delim]: keep: reverse) - ký hiệu tách
hoặc chuỗi thành danh sách các ký tự (hoặc mã thông báo).
str = join (clist: sym) - nối danh sách ký tự thành chuỗi
str = substr (str n | str: after: nonil) - trích xuất các ký tự từ một chuỗi (: nonil trả về
chuỗi nếu không khớp)
bool = eq (str1 str2: n len) - so sánh một phần chuỗi
bool = eq (sym1 sym2: sym) - so sánh ký hiệu
postfix (arg1 [arg2 [arg3 ... [argn]]]) - echo đối số postfix không được đánh giá (với
[narg | nkey] sau các lệnh đã xác định, {narg | nkey} sau các lệnh không xác định, (narg) sau
và một * lệnh sau đánh giá sau)
phân tích cú pháp (fileobj) - phân tích cú pháp một biểu thức từ một tệp
arr = posteval (arg1 [arg2 [arg3 ... [argn]]]) - đánh giá sau mọi đối số cố định (cho đến khi
nil) và mảng trả về
sym = attrname (thuộc tính) - trả về trường tên của cặp dấu chấm
val = attrval (thuộc tính) - trường giá trị trả về của cặp dấu chấm
dotlst = dot (name) - xây dựng danh sách cặp dấu chấm trống
bỏ () - thoát khỏi trình thông dịch
exit () - thoát toàn bộ ứng dụng
rỗng () - câu lệnh trống
val = run (tên tệp: str: popen) - chạy lệnh từ tệp (hoặc chuỗi)
val = remote (hoststr portnum cmdstr: nowait) - đánh giá từ xa chuỗi lệnh sau đó
đánh giá cục bộ chuỗi kết quả
val = eval (cmdstr | funcobj [cmdstr | funcobj ...]: symret) - đánh giá chuỗi (hoặc funcobj) là
lệnh, tùy chọn trả về biểu tượng thay vì nil
funcobj = func (body: echo) - đóng gói nội dung lệnh vào một đối tượng thực thi
val = shell (cmdstr) - đánh giá lệnh trong shell
bạn ngủ(mili giây) - ngủ micro giây
mute ([flag]) - đặt hoặc chuyển đổi chế độ tắt tiếng cờ
nil ([...]) - chấp nhận bất kỳ đối số nào và trả về nil
c = char (num: u) - chuyển đổi bất kỳ số nào thành một ký tự
s = short (num: u) - chuyển đổi bất kỳ số nào thành số ngắn
i = int (num: u) - chuyển đổi bất kỳ số nào thành int
l = long (num: u) - chuyển đổi bất kỳ số nào thành dài
f = float (num) - chuyển đổi bất kỳ số nào thành float
d = double (num) - chuyển đổi bất kỳ số nào thành số kép
sym | lst = type (val [val ...]) - trả về (các) ký hiệu kiểu cho (các) giá trị
sym | lst = class (val [val ...]) - trả về (các) ký hiệu lớp cho (các) giá trị của kiểu đối tượng
int = ctoi (char) - chuyển đổi ký tự thành số nguyên
flag = isspace (char) - trả về true nếu ký tự là khoảng trắng
flag = isdigit (char) - trả về true nếu ký tự là chữ số
flag = isspace (char) - trả về true nếu ký tự theo thứ tự bảng chữ cái
str = arg (n) - trả về đối số dòng lệnh
n = narg (n) - trả về số đối số dòng lệnh
num = nand (ab) - bitwise NAND (phủ định AND)
num = nor (ab) - bitwise NOR (phủ định HOẶC)
num = xnor (ab) - bitwise XNOR (XOR phủ định)
CHỈ IN MÁY CHỦ PHƯƠNG THỨC
str = timeexpr (comstr: sec n) - chuỗi lệnh thực thi theo khoảng thời gian
Sử dụng comterp trực tuyến bằng các dịch vụ onworks.net