์˜์–ดํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

Ad


์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

comterp - ํด๋ผ์šฐ๋“œ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ๊ณต๊ธ‰์ž์—์„œ comterp ์‹คํ–‰

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ๊ณต๊ธ‰์ž์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” comterp ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


comterp - ๋ถ„์‚ฐ ๋ช…๋ น ํ•ด์„๊ธฐ ๋ฐ๋ชจ

๊ฐœ์š”


์ปดํ„ฐํ”„
์ปดํ„ฐํ”„ ๋จผ
์ปดํ„ฐํ”„ ์„œ๋ฒ„ "ํฌํŠธ๋„˜๋ฒ„"
์ปดํ„ฐํ”„ ๋กœ๊ฑฐ "ํฌํŠธ๋„˜๋ฒ„"
์ปดํ„ฐํ”„ ํด๋ผ์ด์–ธํŠธ "ํ˜ธ์ŠคํŠธ" "ํฌํŠธ๋„˜๋ฒ„" ["ํŒŒ์ผ"]
์ปดํ„ฐํ”„ telcat "ํ˜ธ์ŠคํŠธ" "ํฌํŠธ๋„˜๋ฒ„" ["ํŒŒ์ผ"]
์ปดํ„ฐํ”„ "ํŒŒ์ผ" ์‹คํ–‰
์ปดํ„ฐํ”„ "expr"

๊ธฐ์ˆ 


comterp๋Š” ivtools์— ํ†ตํ•ฉ๋œ ๋ช…๋ น ํ•ด์„๊ธฐ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž(๋˜๋Š” ํด๋ผ์ด์–ธํŠธ
ํ”„๋กœ๊ทธ๋žจ)์€ stdin ๋ฐ stdout ๋˜๋Š” telnet(ACE๊ฐ€ ๋‚ด์žฅ๋œ ๊ฒฝ์šฐ)์„ ํ†ตํ•ด comterp์™€ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ช…๋ น ๊ตฌ๋ฌธ์€ ์„ธ๋ฏธ์ฝœ๋ก ์œผ๋กœ ๊ตฌ๋ถ„๋œ ์ž„์˜ ๊ฐœ์ˆ˜์˜ ๋ช…๋ น ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.
์„ ํƒ์  ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ฐ ํ‚ค์›Œ๋“œ๋ฅผ ์ง€์›ํ•˜๋Š” ๊ด„ํ˜ธ๋กœ ๋ฌถ์ธ ๋งค๊ฐœ๋ณ€์ˆ˜
์ธ์ˆ˜, ์ฆ‰:

๋ช…๋ น2(์ธ์ˆ˜1 ์ธ์ˆ˜2 ์ธ์ˆ˜3 : ํ‚ค1 ๋ฐœ1 : ํ‚ค2 ๋ฐœ2);
command1(arg1 arg2 arg3:key1 val1:key2 val2)

C์™€ ์œ ์‚ฌํ•œ ์ด์ง„ ํ‘œํ˜„์‹์€
์•„๋ž˜ ํ‘œ์˜ ์—ฐ์‚ฐ์ž. ํ• ๋‹น์„ ํ†ตํ•ด ๋ณ€์ˆ˜๋ฅผ ์ฆ‰์„์—์„œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์—ฐ์‚ฐ์ž(์˜ˆ: "ball=1"์€ 1๋กœ ์„ค์ •๋œ ์ •์ˆ˜ "ball" ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•จ). ์ข…๋ฃŒ๋˜์ง€ ์•Š์€
์‹์€ ์ž๋™ ๋ช…๋ น์ค„ ํ™•์žฅ์„ ์œ ๋ฐœํ•ฉ๋‹ˆ๋‹ค(ํŒŒ์„œ๊ฐ€ ๋‹ค์Œ์„ ๊ฒฐ์ •ํ•  ๋•Œ๊นŒ์ง€).
ํ‘œํ˜„ ์™„๋ฃŒ). "(), "{}" ๋ฐ "[]"๋Š” ๋ชจ๋‘ ๊ฐ™์€ ์˜๋ฏธ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

COMMAND ์˜ต์…˜


์ปดํ„ฐํ”„

๋‹จ์ผ ๋ช…๋ น ํ•ด์„๊ธฐ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ stdin ๋ฐ stdout์„ ํ†ตํ•ด ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.

์›๊ฒฉ ์ œ์–ด

๊ธฐ๋ณธ๊ฐ’๊ณผ ๊ฐ™์€ ๋‹จ์ผ ๋ช…๋ น ํ•ด์„๊ธฐ๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๋‹ค์Œ์„ ์œ„ํ•œ ์›๊ฒฉ ๋ช…๋ น์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
์„œ๋ฒ„ ๋ชจ๋“œ์—์„œ ๋‹ค๋ฅธ comterp์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค.

comterp ์„œ๋ฒ„ "portnum"

portnum์—์„œ ์—ฐ๊ฒฐ์„ ์ˆ˜์‹ ํ•˜๊ณ  ์ˆ˜๋ฝํ•œ ๋‹ค์Œ ๊ธฐ๋‹ค๋ฆฌ๋„๋ก ๋ช…๋ น ํ•ด์„๊ธฐ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
ํ•ด๋‹น ์—ฐ๊ฒฐ์—์„œ ๋ช…๋ น์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

comterp ๋กœ๊ฑฐ "portnum"

portnum์—์„œ ์—ฐ๊ฒฐ์„ ์ˆ˜์‹ ํ•˜๊ณ  ์ˆ˜๋ฝํ•œ ๋‹ค์Œ ๋“ค์–ด์˜ค๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.
์ค„ ๋ฐ”๊ฟˆ์œผ๋กœ ๋‹ค์‹œ ํ™•์ธํ•˜๋Š” ๋™์•ˆ stdout์œผ๋กœ. ๋””๋ฒ„๊น… ๋ชฉ์ ์œผ๋กœ ์‹ค์ œ๋กœ๋Š”
ํ†ต์—ญ์‚ฌ.

comterp ํด๋ผ์ด์–ธํŠธ "ํ˜ธ์ŠคํŠธ" "ํฌํŠธ๋„˜๋ฒ„" ["ํŒŒ์ผ"]

ํ˜ธ์ŠคํŠธ์˜ ํฌํŠธ ๋ฒˆํ˜ธ์— ์—ฐ๊ฒฐํ•˜๊ณ  ์ค„ ๋ฐ”๊ฟˆ ์ข…๋ฃŒ ํ…์ŠคํŠธ ๋ฒ„ํผ๋ฅผ ์†ก์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ์„ ์œ„ํ•œ
์‹ค์ œ๋กœ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋””๋ฒ„๊น… ๋ชฉ์ ์ž…๋‹ˆ๋‹ค.

comterp telcat "ํ˜ธ์ŠคํŠธ" "ํฌํŠธ ๋ฒˆํ˜ธ" ["ํŒŒ์ผ"]

ํ˜ธ์ŠคํŠธ์˜ portnum์— ์—ฐ๊ฒฐํ•˜๊ณ  ํŒŒ์ผ์„ ์ฐพ์€ ๋‹ค์Œ ์—ฐ๊ฒฐ์„ ๋‹ซ์Šต๋‹ˆ๋‹ค. ์ •๋ง ์šฉ๋„๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค
ํ†ต์—ญ์‚ฌ ์ค‘ ํ•˜๋‚˜.

comterp ์‹คํ–‰ "ํŒŒ์ผ"

ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ์‹คํ–‰ํ•œ ๋‹ค์Œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

comterp "expr"

๋‹จ์ผ ํ‘œํ˜„์‹์„ ํ‰๊ฐ€ํ•œ ๋‹ค์Œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

์šด์˜์ž ํ‘œ


์—ฐ์‚ฐ์ž ๋ช…๋ น ์ด๋ฆ„ ์šฐ์„  ์ˆœ์œ„ ์ˆœ์„œ ์œ ํ˜•
--------- ------------ -------- ----- ----
. dot 130 R-to-L ๋ฐ”์ด๋„ˆ๋ฆฌ
` bquote 125 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
! ๋ถ€์ • 110 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
~ bit_not 110 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
++ ์ฆ๊ฐ€ 110 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
++ incr_after 110 R-to-L ๋‹จํ•ญ ์ ‘๋ฏธ์‚ฌ
- ๋นผ๊ธฐ 110 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
-- decr 110 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
-- decr_after 110 R-to-L ๋‹จํ•ญ ์ ‘๋ฏธ์‚ฌ
** 90 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฐ˜๋ณต
.. 80 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฐ˜๋ณต
% mod 70 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
* mpy 70 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
/div 70 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
+ 60 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ ์ถ”๊ฐ€
- sub 60 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
<< lshift 55 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
>> rshift 55 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
< lt 50 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
<= lt_or_eq 50 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
> gt 50 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
>= gt_or_eq 50 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
!= not_eq 45 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
== eq 45 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
& bit_and 44 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
^ bit_xor 43 L-R ์ด์ง„์ˆ˜
| bit_or 42 L-R ์ด์ง„์ˆ˜
&& ๋ฐ 41 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
|| ๋˜๋Š” 40 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
, ํŠœํ”Œ 35 L-to-R ๋ฐ”์ด๋„ˆ๋ฆฌ
,, ์ŠคํŠธ๋ฆผ ์—ฐ๊ฒฐ 33 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ
$ ์ŠคํŠธ๋ฆผ 32 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
$$ ๋ชฉ๋ก 32 R-to-L ๋‹จํ•ญ ์ ‘๋‘์‚ฌ
%= mod_assign 30 R-L ๋ฐ”์ด๋„ˆ๋ฆฌ
*= mpy_assign 30 R-to-L ๋ฐ”์ด๋„ˆ๋ฆฌ
+= add_assign 30 R-L ๋ฐ”์ด๋„ˆ๋ฆฌ
-= sub_assign 30 R-L ๋ฐ”์ด๋„ˆ๋ฆฌ
/= div_assign 30 R-L ๋ฐ”์ด๋„ˆ๋ฆฌ
= 30 R-L ๋ฐ”์ด๋„ˆ๋ฆฌ ํ• ๋‹น
; seq 10 L-R ๋ฐ”์ด๋„ˆ๋ฆฌ

๋งค์šฐ ์ •ํ™•ํ•œ ๋ช…๋ น:


n=min(ab) -- a์™€ b ์ค‘ ์ตœ์†Œ๊ฐ’ ๋ฐ˜ํ™˜

n=max(ab) -- a์™€ b์˜ ์ตœ๋Œ€๊ฐ’ ๋ฐ˜ํ™˜

n=abs(a) -- a์˜ ์ ˆ๋Œ€๊ฐ’ ๋ฐ˜ํ™˜

dbl=exp(x) -- x์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ์œผ๋กœ ์˜ฌ๋ฆฐ ๊ฐ’ e๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

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) -- x์— ๋Œ€ํ•œ y์˜ ์•„ํฌ ํƒ„์  ํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

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) -- ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ •์ˆ˜ ๊ฐ’ ๋ฐ˜ํ™˜

์•„ํ”ผ๋„ค ๋ณ€ํ˜• ๋ฐ ๋งคํŠธ๋ฆญ์Šค ๋ช…๋ น:


point=xform(x,y a00,a01,a10,a11,a20,a21) -- x,y ์ขŒํ‘œ์˜ ์•„ํ•€ ๋ณ€ํ™˜

affine=invert(a00,a01,a10,a11,a20,a21) -- ์•„ํ•€ ๋ณ€ํ™˜ ๋ฐ˜์ „

ํ–‰๋ ฌ=์—‘์Šคํฌ์ฆˆ(ํ–‰๋ ฌ) -- ์ž„์˜์˜ ํ–‰๋ ฌ์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

matrix=matrix*matrix -- ํ–‰๋ ฌ ๊ณฑ์…ˆ

ํ†ต๊ณ„/๋ฌด์ž‘์œ„ ๋ช…๋ น:


sum(val1[,val2[,...,valn]]) -- ๊ฐ’์˜ ํ•ฉ๊ณ„๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

mean(val1[,val2[,...,valn]]) -- ๊ฐ’์˜ ํ‰๊ท  ๋ฐ˜ํ™˜

var(val1[,val2[,...,valn]]) -- ๊ฐ’์˜ ๋ถ„์‚ฐ ๋ฐ˜ํ™˜

stddev(val1[,val2[,...,valn]]) -- ๊ฐ’์˜ ํ‘œ์ค€ ํŽธ์ฐจ ๋ฐ˜ํ™˜

rand([minval,maxval]) -- 0๊ณผ 1 ์‚ฌ์ด์˜ ๋‚œ์ˆ˜ ๋˜๋Š” minval,maxval์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

srand(seedval) -- ์‹œ๋“œ ๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ

LIST ๋ช…๋ น:


lst=list([olst|strm|val] :strmlst :attr :size n) -- ๋ชฉ๋ก ์ƒ์„ฑ, ๋ชฉ๋ก ๋ณต์‚ฌ ๋˜๋Š” ๋ณ€ํ™˜
ํ๋ฆ„

val=at(list|attrlist|str n :set val :ins val) -- n ๋ฒˆ์งธ ํ•ญ๋ชฉ ๋ฐ˜ํ™˜(๋˜๋Š” ๋’ค์— ์„ค์ • ๋˜๋Š” ์‚ฝ์ž…)
๋ชฉ๋ก ๋˜๋Š” ๋ฌธ์ž์—ด์—์„œ

num=size(list|attrlist|str) -- ๋ชฉ๋ก(๋˜๋Š” ๋ฌธ์ž์—ด)์˜ ํฌ๊ธฐ ๋ฐ˜ํ™˜

val=index(list|str val|char|str :last :all :substr) -- ๊ฐ’์˜ ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜(๋˜๋Š” char ๋˜๋Š”
๋ฌธ์ž์—ด) ๋ชฉ๋ก(๋˜๋Š” ๋ฌธ์ž์—ด)์—์„œ, ์ฐพ์„ ์ˆ˜ ์—†์œผ๋ฉด nil์ž…๋‹ˆ๋‹ค.

STREAM ๋ช…๋ น:


val=next(stream) -- ์ŠคํŠธ๋ฆผ์—์„œ ๋‹ค์Œ ๊ฐ’ ๋ฐ˜ํ™˜

strm=stream(ostrm|list|attrlist|val) -- ์ŠคํŠธ๋ฆผ ๋ณต์‚ฌ ๋˜๋Š” ๋ชฉ๋ก ๋ณ€ํ™˜

cnt=each(strm) -- ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํŠธ๋ž˜๋ฒ„์Šค ์ŠคํŠธ๋ฆผ

comp=filter(comps classid) -- ์ผ์น˜ํ•˜๋Š” classid์— ๋Œ€ํ•œ comps์˜ ํ•„ํ„ฐ ์ŠคํŠธ๋ฆผ

ํ†ต์ œ ๋ช…๋ น (์‚ฌ์šฉ ๊ฒŒ์‹œ ํ‰๊ฐ€):


val=cond(testexpr trueexpr falseexpr) -- testexpr์„ ํ‰๊ฐ€ํ•˜๊ณ  true์ธ ๊ฒฝ์šฐ ํ‰๊ฐ€ํ•˜๊ณ 
trueexpr ๋ฐ˜ํ™˜, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด falseexpr ํ‰๊ฐ€ ๋ฐ ๋ฐ˜ํ™˜

val=if(testexpr :then expr :else expr) -- testexpr์„ ํ‰๊ฐ€ํ•˜๊ณ  :then์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
true์ธ ๊ฒฝ์šฐ ์‹, false์ธ ๊ฒฝ์šฐ :else ์‹์ž…๋‹ˆ๋‹ค.

val=for(initexpr whileexpr [nextexpr [bodyexpr]] :body expr) -- for ๋ฃจํ”„

val=while([testexpr [bodyexpr]] :nilchk :until :body expr ) -- while ๋ฃจํ”„

val=switch(val key-body-pairs) -- switch ๋ฌธ(pos.์˜ ๊ฒฝ์šฐ:casen, ๋ถ€์ •์˜ ๊ฒฝ์šฐ:case_n,
๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด :๊ธฐํ˜ธ)

๊ณ„์† -- for ๋˜๋Š” while ๋ฃจํ”„์˜ ๋‹ค์Œ ๋ฐ˜๋ณต์œผ๋กœ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.

break([retval]) -- for ๋˜๋Š” while ๋ฃจํ”„๋ฅผ ์ค‘๋‹จํ•ฉ๋‹ˆ๋‹ค.

๊ธฐํƒ€ ๋ช…๋ น


help(cmdname [cmdname ...] :all :posteval) -- ๋ช…๋ น์–ด ๋„์›€๋ง

val=trace([flag] :get) -- ์ถ”์  ๋ชจ๋“œ๋ฅผ ์ „ํ™˜ํ•˜๊ฑฐ๋‚˜ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

pause([msgstr]) -- C/R๊นŒ์ง€ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ์ผ์‹œ ์ค‘์ง€

step() -- ๋‹จ๊ณ„๋ณ„ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ† ๊ธ€

fileobj|pipeobj=open([filename [modestr]] :pipe :in :out :err) -- ํŒŒ์ผ ์—ด๊ธฐ ๋ช…๋ น

close(fileobj|pipeobj) -- ํŒŒ์ผ ๋‹ซ๊ธฐ ๋ช…๋ น

[str]=print([fmtstr] [val [val1 [... ๊ฐ’]]] :string|:str :out :err :file fileobj|pipeobj
:prefix str) -- ์„ ํƒ์  ํ˜•์‹ ๋ฌธ์ž์—ด๋กœ ๊ฐ’ ์ถœ๋ ฅ

str=gets(fileobj|pipeobj) -- ํŒŒ์ผ์—์„œ ๊ฐœํ–‰ ์ข…๋ฃŒ ๋ฌธ์ž์—ด์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

val=global(symbol)|global(symbol)=val|global(symbol :clear)|global(:cnt) -- ๊ธฐํ˜ธ ๋งŒ๋“ค๊ธฐ
๊ธ€๋กœ๋ฒŒ

int|lst=symid(symbol [symbol ...] | :max) -- ๊ด€๋ จ๋œ ์ •์ˆ˜ ID๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
๊ธฐํ˜ธ

sym|lst=symbol(symid [symid ...]) -- ์ •์ˆ˜ ID์™€ ๊ด€๋ จ๋œ ์‹ฌ๋ณผ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

val|lst=symval(symbol [symbol ...]) -- ์‹ฌ๋ณผ๊ณผ ๊ด€๋ จ๋œ ๋ฐ˜ํ™˜ ๊ฐ’
๋ณ€์ˆ˜

sym|lst=symadd(sym|str [sym|str ...]) -- ์‹ฌ๋ณผ์„ ๋งŒ๋“ค๊ณ  ์กฐํšŒ ์—†์ด ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

sym=symvar(sym) -- ๊ธฐํ˜ธ๋ฅผ ์žˆ๋Š” ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜

str=symstr(sym) -- ๊ธฐํ˜ธ์˜ ๋ฌธ์ž์—ด ๋ฒ„์ „ ๋ฐ˜ํ™˜

n=strref(str|symid) -- ๋ฌธ์ž์—ด ์ฐธ์กฐ ํšŸ์ˆ˜ ๋ฐ˜ํ™˜

lst=split(symbol|string :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]]]) -- ํ‰๊ฐ€๋˜์ง€ ์•Š์€ ์ ‘๋ฏธ์‚ฌ ์ธ์ˆ˜๋ฅผ ๋ฐ˜ํ–ฅํ•ฉ๋‹ˆ๋‹ค.
์ •์˜๋œ ๋ช…๋ น ํ›„ [narg|nkey], ์ •์˜๋˜์ง€ ์•Š์€ ๋ช…๋ น ํ›„ {narg|nkey}, (narg) ํ›„
ํ‚ค ๋ฐ ์‚ฌํ›„ ํ‰๊ฐ€ ๋ช…๋ น์— ๋”ฐ๋ฅธ *)

parse(fileobj) -- ํŒŒ์ผ์—์„œ ๋‹จ์ผ ํ‘œํ˜„์‹์„ ๊ตฌ๋ฌธ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

arr=posteval(arg1 [arg2 [arg3 ... [argn]]]) -- ๋ชจ๋“  ๊ณ ์ • ์ธ์ˆ˜๋ฅผ ์‚ฌํ›„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
nil) ๋ฐ ๋ฐ˜ํ™˜ ๋ฐฐ์—ด
sym=attrname(attribute) -- ์ ์œผ๋กœ ๊ตฌ๋ถ„๋œ ์Œ์˜ ์ด๋ฆ„ ํ•„๋“œ ๋ฐ˜ํ™˜
val=attrval(attribute) -- ์ ์œผ๋กœ ๊ตฌ๋ถ„๋œ ์Œ์˜ ๋ฐ˜ํ™˜ ๊ฐ’ ํ•„๋“œ
dotlst=dot(name) -- ๋น„์–ด ์žˆ๋Š” ์ ์œผ๋กœ ๊ตฌ๋ถ„๋œ ์Œ ๋ชฉ๋ก์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

quit() -- ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์ข…๋ฃŒ

exit() -- ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ข…๋ฃŒ

empty() -- ๋นˆ ๋ฌธ

val=run(filename :str :popen) -- ํŒŒ์ผ(๋˜๋Š” ๋ฌธ์ž์—ด)์—์„œ ๋ช…๋ น ์‹คํ–‰

val=remote(hoststr portnum cmdstr :nowait) -- ๋ช…๋ น ๋ฌธ์ž์—ด์„ ์›๊ฒฉ์œผ๋กœ ํ‰๊ฐ€ํ•œ ๋‹ค์Œ
๋กœ์ปฌ์—์„œ ๊ฒฐ๊ณผ ๋ฌธ์ž์—ด ํ‰๊ฐ€

val=eval(cmdstr|funcobj [cmdstr|funcobj ...] :symret ) -- ๋ฌธ์ž์—ด(๋˜๋Š” funcobj)์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
๋ช…๋ น, ์„ ํƒ์ ์œผ๋กœ nil ๋Œ€์‹  ๊ธฐํ˜ธ ๋ฐ˜ํ™˜

funcobj=func(body :echo) -- ๋ช…๋ น ๋ณธ๋ฌธ์„ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด๋กœ ์บก์Šํ™”ํ•ฉ๋‹ˆ๋‹ค.

val=shell(cmdstr) -- ์‰˜์—์„œ ๋ช…๋ น ํ‰๊ฐ€

์ž ์ž๋‹ค(msec) -- ์ˆ˜๋ฉด ๋งˆ์ดํฌ๋กœ์ดˆ

mute([ํ”Œ๋ž˜๊ทธ]) -- ์Œ์†Œ๊ฑฐ ํ”Œ๋ž˜๊ทธ ์„ค์ • ๋˜๋Š” ํ† ๊ธ€

nil([...]) -- ๋ชจ๋“  ์ธ์ˆ˜๋ฅผ ์ˆ˜๋ฝํ•˜๊ณ  nil์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

c=char(num :u) -- ์ˆซ์ž๋ฅผ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜

s=short(num :u) -- ์ˆซ์ž๋ฅผ short๋กœ ๋ณ€ํ™˜

i=int(num :u) -- ๋ชจ๋“  ์ˆซ์ž๋ฅผ int๋กœ ๋ณ€ํ™˜

l=long(num :u) -- ๋ชจ๋“  ์ˆซ์ž๋ฅผ long์œผ๋กœ ๋ณ€ํ™˜

f=float(num) -- ๋ชจ๋“  ์ˆซ์ž๋ฅผ float๋กœ ๋ณ€ํ™˜

d=double(num) -- ๋ชจ๋“  ์ˆซ์ž๋ฅผ double๋กœ ๋ณ€ํ™˜

sym|lst=type(val [val ...]) -- ๊ฐ’์— ๋Œ€ํ•œ ์œ ํ˜• ๊ธฐํ˜ธ ๋ฐ˜ํ™˜

sym|lst=class(val [val ...]) -- ๊ฐœ์ฒด ์œ ํ˜•์˜ ๊ฐ’์— ๋Œ€ํ•œ ํด๋ž˜์Šค ๊ธฐํ˜ธ ๋ฐ˜ํ™˜

int=ctoi(char) -- ๋ฌธ์ž๋ฅผ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜

flag=isspace(char) -- ๋ฌธ์ž๊ฐ€ ๊ณต๋ฐฑ์ด๋ฉด true ๋ฐ˜ํ™˜

flag=isdigit(char) -- ๋ฌธ์ž๊ฐ€ ์ˆซ์ž์ด๋ฉด true๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

flag=isspace(char) -- ๋ฌธ์ž๊ฐ€ ์•ŒํŒŒ๋ฒณ์ผ ๊ฒฝ์šฐ true ๋ฐ˜ํ™˜

str=arg(n) -- ๋ช…๋ น์ค„ ์ธ์ˆ˜ ๋ฐ˜ํ™˜

n=narg(n) -- ๋ช…๋ น์ค„ ์ธ์ˆ˜์˜ ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

num=nand(ab) -- ๋น„ํŠธ๋ณ„ NAND(๋ถ€์ • AND)

num=nor(ab) -- ๋น„ํŠธ๋ณ„ NOR(๋ถ€์ • OR)

num=xnor(ab) -- ๋น„ํŠธ๋ณ„ XNOR(๋ถ€์ • XOR)

IN ์„ฌ๊ธฐ๋Š” ์‚ฌ๋žŒ ๋ชจ๋“œ


str=timeexpr(comstr :sec n) -- ์ผ์ • ๊ฐ„๊ฒฉ์œผ๋กœ ์‹คํ–‰ํ•  ๋ช…๋ น ๋ฌธ์ž์—ด

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์—์„œ comterp ์‚ฌ์šฉ


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

Linux ๋ช…๋ น

  • 1
    ํด๋ฆญํ›…
    ํด๋ฆญํ›…
    aa-clickhook - ํด๋ฆญ ์‹œ์Šคํ…œ ํ›„ํฌ
    AppArmor ์„ค๋ช…: ํด๋ฆญํ•  ๋•Œ
    ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํด๋ฆญํ•˜๋ฉด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
    ์‹œ์Šคํ…œ ๋ฐ ์‚ฌ์šฉ์ž ํ›„ํฌ. ํด๋ฆญ
    AppArmor ์‹œ์Šคํ…œ H...
    aa-clickhook ์‹คํ–‰
  • 2
    aa-ํด๋ฆญ ์ฟผ๋ฆฌ
    aa-ํด๋ฆญ ์ฟผ๋ฆฌ
    aa-clickquery - ์ฟผ๋ฆฌ ํ”„๋กœ๊ทธ๋žจ
    click-apparmor ์„ค๋ช…: ์ด ํ”„๋กœ๊ทธ๋žจ
    click-apparmor๋ฅผ ์ฟผ๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
    ์ •๋ณด. ์‚ฌ์šฉ๋ฒ•: aa-clickquery
    --ํด๋ฆญ-ํ”„๋ผ...
    aa-clickquery ์‹คํ–‰
  • 3
    cqrlog
    cqrlog
    CQRLOG - ๊ณ ๊ธ‰ ๋กœ๊น… โ€‹โ€‹ํ”„๋กœ๊ทธ๋žจ
    ํ–„๋ผ๋””์˜ค ์šด์˜์ž ์„ค๋ช…: CQRLOG
    ๊ธฐ๋ฐ˜์˜ ๊ณ ๊ธ‰ ํ–„ ๋ผ๋””์˜ค ๋กœ๊ฑฐ์ž…๋‹ˆ๋‹ค.
    MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค. ๋ฌด์„  ์ œ์–ด ์ œ๊ณต
    ๋ฐ” ...
    cqrlog ์‹คํ–‰
  • 4
    ํฌ๋žจํ”„์Šค์™‘
    ํฌ๋žจํ”„์Šค์™‘
    Cramfsswap - CRAM์˜ ์Šค์™‘ ์—”๋””์•ˆ
    ํŒŒ์ผ ์‹œ์Šคํ…œ(cramfs) ...
    crampsswap ์‹คํ–‰
  • 5
    Fvwm์ด๋ฒคํŠธ
    Fvwm์ด๋ฒคํŠธ
    FvwmEvent - fvwm ์ด๋ฒคํŠธ ๋ชจ๋“ˆ...
    FvwmEvent ์‹คํ–‰
  • 6
    Fvwm์–‘์‹
    Fvwm์–‘์‹
    FvwmForm - Fvwm์šฉ ์ž…๋ ฅ ์–‘์‹ ๋ชจ๋“ˆ ...
    FvwmForm ์‹คํ–‰
  • ๋”ยป

Ad