ืืื ืืืช ืืคืงืืื ืฉื ืืชื ืืืจืืฅ ืืกืคืง ืืืืจืื ืืืื ืื ืฉื OnWorks ืืืืฆืขืืช ืืืช ืืชืื ืืช ืืขืืืื ืืืงืืื ืืช ืืืจืืืืช ืฉืื ื, ืืืื Ubuntu Online, Fedora Online, ืืืืืืืจ ืืงืืื ืฉื Windows ืื ืืืืืืืจ ืืงืืื ืฉื MAC OS
ืชึธืึฐื ึดืืช:
ืฉืึตื
ื ืืงื - ืฉืคืช ืืืฉืืื ืฉืืืื ื
ืชึทืงืฆึดืืจ
nickle [--help|--usage] [-f file] [-l library] [-e expr] [ script ] [--] [arg ...]
ืชืืืืจ
ื ืืงื ืืื ืฉืคืช ืืืฉืืื ืฉืืืื ื ืขื ืืืืืืช ืชืื ืืช ืืกืงืจืืคื ืืืงืืช.
ื ืืงื ืชืืื ืืืืืื ืกืืื ื ืชืื ืื, ืืืืืื ืืกืคืจืื ืฉืืืื ืืืืืงืื ืฉืจืืจืืชืืื,
ืจืฆืืื ืืื, ืืืฆืืืืช ืื ืืืืืงืช. ืฉืคืช ืืงืื ืืืื ืืืขืืจืคื ื-C. ืืฉ ืืืจืื ื-C
ืฉืืื ื ืืชืืจืืืืช ืืงืืืช ืฉืื ืืช, ื ืขืฉื ืืื ืืืืจืืช ืขืืฆืืืืืช
ืืืจืช, ืืืขื ืืืื ืชืืื ืืช ืคืฉืื ืืกืจืืช.
ื ืืื
ืืจืืืื ื ืื ืืกืืื ืืืืคื ืืื ืกืงืจืืคื ืฉื Nickle, ืืืืืืฃ ืงืื ืกืื ืืจืื. ืื
ืืืจืืืื ืืื ืื ืืชืจืื ืืขืงืืืช ืืกืงืจืืคื ืืืืงืืื ืืืขืจื ืืืืจืืืืช ืฉื Nickle argv for
ืืืืงื ืคืจืืืจืืืืช. ืืืฉืจ ืืืคืขื ืืื ืืืืื ืื ืืจืืืื ื ืชืกืจืื, ื ืืงื
ืงืืจื ืืงืื ืกืื ืืจืื, ืืืืชื ืืคืื ืกืื ืืจืื.
ืืืคืฉืจืืืืช ืื ืืืืงืื:
--ืขืืจื,--ืฉืืืืฉ
ืืืคืก ืืืืขืช ืขืืจื/ืฉืืืืฉ ืืฆื. ืืืื ืชืืื ื ืืืื ืืช ืฉื ื ืืงื
ืืืืื ParseArgs, ืืืื ืืืื ื ืืื ืื ืืืื ืกืงืจืืคืืื ืฉื Nickle ืฉืืฉืชืืฉืื ืืื
ืกึดืคึฐืจึดืึธื.
-f,--ืงืืืฅ ืคืืื
ืึดืืขืึนื ืคืืื ืืชืื ื ืืงื ืืคื ื ืชืืืืช ืืืืฆืืข.
-ื,--ืกืคืจืืื ืกืคืจืื
ืึดืืขืึนื ืกืคืจืื ืืชืื ื ืืงื ืืคื ื ืชืืืืช ืืืืฆืืข. ืจืื ืืืื ืืชืืืืจ
ืฉื ืืชืงื ืืกืคืจืืื.
-ื,--expr ืืืืื
ืืืขืจืื ืืืืื ืืคื ื ืชืืืืช ืืืืฆืืข.
-- ืฆื ืื ืืชืื ืืจืืืื ืืื ืืืขืืืจ ืืช ืืฉืืจ, ืืื ืืขืจืื, ืื argv.
ืชืืืืจ
ืืื ืืืคืื ืืช ืฉืคืช ืืงืื ืืฉืืืืฉืืช ืืืชืจ ืืืืืจื ืืื ืืจืืงืืืืืช, ืฉืืจื ืืืฉื ืจืง ืืกืชืืื
ืืฆืืจืืช ืืืื ืื ''ืกืืืจืื''. ืฉืืจื ืืืฉื ืืกืืื ืื ืืืืืืื ืื ืืืื
ืืฆืืจืืช ืฉืืืงืืื ืขื ืืื ืืืฉืชืืฉ (ืืืขื ืืื ืืฆืืจืืช ืืืืจืฉืืช
lookahead: ืืืืืื if() ื-twixt(), ืฉืืฉ ืืื ืืืง ืืืจ ืืืคืฆืืื ืื). ืืชืื ืืคื ืื
ืืฆืืจืืช ืื ืืืืจืืช ืคืื ืงืฆืืืช, ืจืง ื ; ืืคืกืืง ืืฆืืจืืช. ืืืฉื ืื ืืื
ื ืื ืืื ื ืจืื ืืืจื ืืืขืืืช ืืฉืืืืฉ ืจืืื.
ืืชืืืืจ ืฉื ืชืืื ืืืช ื ืืงื ืืื ืืืืงืื. ืืชืืืืจ ืื, ืฉื ืืฆืืื ืื
ืจืฆืฃ ืฉื ืืืชืืืช, ืกืคืจืืช ืืชืืืื _ ืฉืืื ื ืืชืืืืื ืืกืคืจื; E ืืฆืืื ืื
ืืืืื; S ืืฆืืื ืืฆืืจื ืืืฉืื; ื T ืืฆืืื ืื ืกืื. ืืชืืืืจ X,X,...,X ืืฆืืื
X ืืื ืื ืืืชืจ ืืืคืจืืื ืืคืกืืงืื, ืืื ืื ืฆืืื ืืืจืช.
ืชืืืืืช:
ืืขืจืืช ืืกืื ืื C ืืืงืคืืช ื-/* ื-*/, ืืืขืจืืช ืืกืื ืื ืืขืืคืช ืืกืืื ืืช ื-
ืืืืื # ืืชืืืืช ืฉืืจื.
ืืืคืจื ืืื:
ืืกืคืจ ืืืฉื
ืืืื ืืืืื ืืขืจืื, ืืื ืฆืืจื ืืืืื ื ืงืืื ืขืฉืจืื ืืช ืื ืกืืื. ืืืืคื ืืื
ืจืฆืืื ืืื ืืืืืงืื. ืื ืืืง ืขืฉืจืื ื ื ืืจืจ ืืืื ืกื ืืชืืืชื ื ืคืชื, ื-
ืืชืขืืืื ืืฉืงื ืืืกื; ืื ืืื ืืืื ืืืง ื ืืจืจ ืืกืืืจืืื ืืชืืืชืืื, ืืื ืื
ืืืืคื ืืื ืขืฉืจืื ื ืืืืจ. ืงืืืขืื ืฉื 'ื ืงืืื ืฆืคื'' ื ืืฆืืื ืืจืืข
ืืืืฆื ืคื ืืื ืืจืฆืืื ืืื: ืขืืืจ ืงืืืขืื ืฆืคืื ืืืืืง ื ืชืื
(ืืืขืจืื ืืขื ืืืืง ืืื ืกืืคื), ืืฉืชืืฉ ืืคืื ืงืฆืื ืืืืื ืืช() imprecise
ืืืชืืืจ ืืืื.
ืืกืคืจ ืืืงืืื
ืืชืื ืขื 0 (ืืืฉื, 014 ืืื ื-12).
ืืกืคืจ ืืงืกืืฆืืืื
ืืชืื ืขื "0x" (ืืืฉื, 0x1a ืืื ื-26).
ืืืจืืืช ืืื ื-C. ืงืืืขื ืืืจืืืช ืืืงืคืื ืืืืจืืืืช ืืคืืืืช. ืืืืืืช ืืฉืืืืช ืืืืืจ
(ืืืื ืืจืืืืช ืืคืืืืช) ืืืืฆืืืช ืืช ืขืฆืื, ืืืขื "\n" ืืืืฆื ืฉืืจื ืืืฉื,
"\r" ืขืืืจ ืืืืจืช ืืจืืจื, "\b" ืขืืืจ backspace, "\t" ืขืืืจ tab ื-"\f" ืขืืืจ formfeed.
name ืืคื ืื ืืืฉืชื ื.
name() name(E,E,...,E)
ืงืจืืื ืืคืื ืงืฆืื ืขื ืืคืก ืืจืืืื ืืื ืื ืืืชืจ. ืืคืื ืงืฆืืืช ืื ืืืืืช ืืคื ืขืจื:
ืืขืจืืื ืืืื ืื ืืืขืชืงืื ืืืงืื ืืืชืืืืก ืืืืื ืืื ื-C.
ืฉื ืชืืืืจ T ืฉื = ืขืจื
ืืืืืื ืืืืจื: ืฉื ืืืฉ ืืืื, ืขื ืืขืจื ืฉื
ืืืืืจื ืืื ืืขืจื ืฉื ืืืืชืื ืืฆืืจื ืืฉื ืืื, ืืืืชื ืืืืชืื
ืืฆืืจื ืืจืืฉืื ื. ืชืืืืจ ืืชืืืืจ ืืื ื ืืืคืฆืืื ืื: ืืื ืืืจืื ืืื
ืฉืืืื ืฉื ื ืจืืืช, ืืืืงืช ืืืกืื ืื ืกืื (ืืกืืจ ืื). ืจืื ืืืงืืืืช
ืืื ืืืื ืืชืืืืจ ืฉื ืืืืงืืืืช ืืืื. ืขืจื ืืืื ื
ืืืืื ืืคืฉืจื ืื: ืจืื VALUES ืืืื.
ืื ืืกืฃ ืืืืืืช ืืืชืื ืืืืจื ืขื ืขืจื ื ืืงื, ืืกืื ืื C
ืืืชืจืืช ืื ืืืืจืืช ืืขืจื, ืืื ื ืืืืืื: ืืืืืื, ื
ืืื
int[*,*] name = {{0,1},{2,3}}
int[2,2] ืฉื = {{0...}...}
ืืืชืจืื ืขื ืืกืื ืืืงื ืืืจืืจื. ืื ืืืงืฉืจ ืฉืื ื
ืืืืืื ืืืืคืืก ืขืฉืืืื ืืืืืช ืืืืืืื: ืจืื ืืช ืืืืื ืขื ืกืืื ืืขืจืืื ืืขืื.
ืจืื ืืช ืืืืื ืืขืจืื ืืขืจื ืืืื ื ืขืืืจ ืืขืจื ืืืื ื
ืชืืืืจ ืืชืืื.
ืืืงืืืืช
ืืฆืืจื ืื ืืืืจื ืขืฉืืืืช ืืืืืช ืืกืืืืืช, ืืื ื-C, ืืฆืืื ืคืจืืื ืฉื ืชืืื ื
ืืชื ืืืืช. ืฉืื ืืื ื-C, ืืืืงืืืืช ืืืื, ืืืจืืช ืฉืื ืืืคืฆืืื ืืืืช, ืืืืืืช ืืืืคืืข ืืกืืจ ืื ืชืื.
ืจืืืช:
public ืื ืืืืื ืืืืจื (ืืืืจืช ืคืื ืงืฆืื, ืืืืจืช ืืฉืชื ื, ืกืื
ืืืืจื) ื ืืชื ืืกืืื ืขื ืืฆืืืืจ ืืื ืืฆืืื ืฉืืฉื ืืืืืืจ
ืฆืจืื ืืืืืช ืืืื ืืืืฅ ืืืจืื ืืฉืืืช ืื ืืืื, ืืืืืจ ืืืืืช ืืืืคื ืืืืืืื
ืึฐืืึนืึผึธื. ืจืื ืืจืืื ืฉืืืช ืืืื ืืืืืข ื ืืกืฃ.
ืืึผืึธื
ืื ืืืืื ืืืืจื (ืืืืจืช ืคืื ืงืฆืื, ืืืืจืช ืืฉืชื ื, ืกืื
ืืืืจื) ื ืืชื ืืกืืื ืขื protected ืืื ืืฆืืื ืฉืืฉื ืืืืืืจ
ืืืืจ ืืืืืช ืืืื ืืืืฅ ืืืจืื ืืฉืืืช ืื ืืืื, ืื ืืกืืจ ืฉืืืื ืืืื
ืขื ืืื ืืฆืืจืืช ืืืื. ืจืื ืืจืืื ืฉืืืช ืืืื ืืืืืข ื ืืกืฃ.
ืืื ืืืืื:
auto ืืืืืืงื ืืืืืืื ืืื ืืงืืื ืืืืืง ืืกืืื: ืืฉื ืืืืื ืฉืื ืืื ืืคืืืช
ืืฉื ืืืืื ืฉื ืืืืืง ืืื. ืืืืืืงื ืืืืืืื ืขื ืืชืืื ืืืืชืื ืืืืฉ
ืืื ืคืขื ืฉืืื ืืืขืจื. ืืื ืืืจื ืืืืื ืืืืืืจ ืืืจืืจืช ืืืื ืขืืืจ ืืืืืืงืืื ืืงืืืืื.
static ืืืืืืงื ืกืืื ืืื ืืงืืื ืืืืืจืช ืคืื ืงืฆืื ืืกืืืืช: ืืฉื ืืืืื ืฉืื ืืื ื
ืืคืืืช ืืฉื ืืืืื ืฉื ืืืืืจื ืืื. ืืืืืืงื ืกืืื ืืืฉ ืืืืืฆืจ ืื ืืื
ืืื ืืืขืจื ืืืืจืช ืืคืื ืงืฆืื ืืืงืืคื ืฉืื.
ื-Nickle, ืืืืช ืืืคืชื ืกืืืืช ืงืฉืืจื ืจืง ืืื ืืืืื (ืืื ืืฉืืืืฉ ืืกืืื
ืืชืื ืคืื ืงืฆืืืช C), ืื ืขื ื ืจืืืช (ืืฉืจ ืืืืคืืช ืขื ืืื ืืืงืืืืช ื ืคืจืืืช
ืืคื ืฉืชืืืจ ืืขืื, ืื ืืื ืืฉืืืืฉ ืืกืืื ืืืืงืฃ ืืืืืื ื-C).
ืืืืืื ืืืืืืงื ืืืืืื ืืื ืืืืืื ืืื ืืชืืื ืืช: ืืฉื ืืืื ืืื ืืืื ืฉื
ืืชืื ืืช. ืืืืืืงื ืืืืืื ืืืืฆืจ ืืืืชืื ืืขืช ืืืืจืชื
ื ืจืื ืืจืืฉืื ื. ืืื ืืืจื ืืืืื ืืืืืืจ ืืืจืืจืช ืืืื ืขืืืจ ืืืืืืงืืื ืืืืืืืื.
ืืืืื ื ืืื ืืืื ืกืืืืื ืืืืืืืืื ืื ืืงื ืืื ื ืืคืฉืจืืช ื-C,
ืืืืืื ืฉืคืื ืงืฆืืืช C ืืื ื ืืืืืืงืืื ืืืืงื ืจืืฉืื ื ืขื ืืืงืฃ ืืงืื ื. ืืฉืืืืืืื
ืฉืื ืืืฉืชืืฉ ืืชืืื ืืช Nickle, ืืืฉืื ืื ืฆืจืื ืืงืจืืช ืื ืืืืจื ืืื
ืืืขืจื ืืืืฉ.
ืืคืขืืืื
ืืืื ืืืืคืจืืืจืื ืืืกืืกืืื ืฉื ื ืืงื, ืืงืืืฆืื ืืคื ืกืืจ ืขืืืคืืช ืคืืืช:
ื[E,E,...,E]
ืืชืืืืก ืืืืื ื E'th ืฉื ืืืืื ืืืขืจื A, ืื E1'th/E2'th/ืืื'
ืืืื ื ืฉื ืืขืจื ืจื ืืืืื. ืฉื ื ืืขืจืื ืืืขืจืืื ala C ื
ืืขืจืืื ืจื ืืืืืืื ala NAWK ืืคืฉืจืืื.
struct.tag
ืืชืืืืกืืช ืืื ื.
struct->tag
ืืคื ืืืช ืืฆืืืข ืืื ื ala C.
=============
++ -- ืชืืกืคืช/ืืจืืื ืืื. ืืืื ืืืืืช postfix ืื ืงืืืืืช.
- ืฉืืืื ืืืชื ืจืืืื
! E ืฉืืืื ืืืืืช.
ื! ืคืงืืืจืืืื. ืืืจืฉ ืืจืืืื ื ืฉื ืืกืคืจ ืฉืื ืื ืฉืืืื.
* ืืคื ืืืช E Pointer.
& E ืื ืืืช ืืชืืืืกืืช.
=============
(U) E ืื ื ืขืจื ืืกืื ืืืืื ืขื ืชื U ืืขืจื E.
=============
** ืืงืกืคืื ื ืฆืืฆืื. ืฉื ื ืืืืคืจื ืืื ืขืฉืืืื ืืืืืช ืืืงืื. ืืืืคืจื ื ืืฉืืืื ืืืื ืืืืืช ืื-
ืฉืืืื ืืื ืื ืืืืคืจื ื ืืืื ื ืืื ืืกืคืจ ืฉืื. ืกืื ืืชืืฆืื ืืื ืกืื ื-
ืืืคืจื ื ืฉืืืื ืื ืืืืคืจื ื ืืืื ื ืืื ืืกืคืจ ืฉืื, ืืืืฉื ืืืจืช.
ืืืื ืืชืืื ื ืืืืืขื ืืืืืื ืฉื ื ืืงื ืืื ืฆืืื ืืกืื ืืืคืืก: ืืืืื ืืื 2 ** -3
ืืืื ืกืืื ืืกืื ืืกืคืจ ืฉืื, ืื ืืืืคื ืืื ืื ืืคืืง ืจืฆืืื ื
ืชืึนืฆึธืึธื. ืื ืขืืื ืืืจืื ืืฉืืืืช ืกืื ืืื ืจืืฆื ืืืืฉื: ืฉืงืื
int x = 2 ** -3;
=============
* / // %
ืืื ืื, ืืืืงืื, ืืืืงืื ืฉืืืื, ืืืฉืืจ. ืืืืคืจื ื ืืืื ื ืืฉืืืฉืช ืืืืจืื ืื
ืืืคืจืืืจืื ืืืืืื ืืืืืช ืื ืืืคืก. ืกืื ืืชืืฆืื ืฉื ืืืคืจืืืจ ืืืืืงื ืชืืื ืืืื
ืืคืืืช ืจืฆืืื ืื: ืกืื ืืชืืฆืื ืฉื ืืืคืจืืืจ ืืืืงืช ืืืกืคืจืื ืืฉืืืื ืชืืื ืืืื
int. ืืืื ืกืืืื ืืืืืช ื-C, ืฉืื ืืืืงื ืฉืืืื ืืฉืชืืขืช ืขื ืืื
ืืืคืจื ืืื ืฉืืืื. ืืืืงืช ืืกืคืจืื ืฉืืืื ืืืืืจืช ืขื ืืื
x // y == y > 0 ? ืงืืื (x/y) : ceil(x/y)
ืืฉืืจ ืชืืื ืื ืฉืืืื ืืืืืืจ ืขื ืืื: ืขื ืืื
x % y = x - (x // y) * y
=============
+ - ืืืืืจ ืืืืกืืจ.
=============
<< >> ืืขืืจื ืืืงืืช ืฉืืืื ืืืืื ื ืขื ืืืคืจื ืืื ืฉืืืื. ืืืคืจื ืืื ืืื ืืื ืฉืืืืืื ืขืืืืื
ืืฆืคืื. ืืืคืจืืืจืื ืืื ืืืืืจืื ืขื ืืื
x << y = x * 2 ** y
x >> y = x // 2 ** y
ืืจื ื ืืกืคืช ืืืกืชืื ืขื ืื ืืื ืฉืืืคืจื ืืื ืฉืืืืืื ืฉืืืืืื ื ืืฉืืื ืืคื ืื
ืืืฆืื ืืื ืกืืฃ ืฉื ืืื-ืืฉืืื (ืืืืืจ, ืกืืื-ืืืจืื ืขื ืืื ืกืืฃ), ืขื
ืกืืื ืืขืืจื ืืื ื ืืืจืืื ืืช ืืืืคืจื ื ืืฉืืืื ืฉืื.
=============
<= >= < >
ืืคืขืืืื ืืืกืืื.
=============
== != ืืคืขืืื ืฉืืืืื.
=============
ืืืกืืฃ, ืืคื ืกืืจ ืขืืืคืืช ืืืจื:
& Bitwise AND. ืืืคืจื ืืื ืฉืืืืืื ื ืืฉืืื ืืืฉืืื ืืื ืกืืคืืช ืฉื ืฉื ืืื
ืืืฆืื (ืืืืืจ, ืกืืื ืืืจืื ืขื ืืื ืกืืฃ).
^ Bitwise XOR. ืืืคืจื ืืื ืฉืืืืืื ืืื ื-AND.
| Bitwise OR. ืืืคืจื ืืื ืฉืืืืืื ืืื ื-AND.
&& ืงืฆืจ ืืฉืืื AND.
|| ืงืฆืจ ืืฉืืื OR ืืืื.
ื? ื: ื
ืืืืื ืืืชื ื: ืื ืืืืืื ืืจืืฉืื ื ืืื ืืืื, ืืขืจื ืืื ืฉื ื
ืืืืื, ืืืจ ืฉืืืฉื.
fork E ืฆืืจ (ืืืืืจ) ืืื. ืจืื ืฉืจืฉืืจ ืืืื ืืคืจืืื.
= += -= *= /= //= %= **= <<= >>= ^= &= |=
ืืคืขืืื ืืืืืช. ืฆื ืฉืืื ืืืื ืืืืืช ื ืืชื ืืืงืฆืื. x = y ืฉืืื ืขืจื
ื x = x y
E , E ืืืืืจื ืืืืื ืืื ื.
ืกืืื
ืชืืืืจ ืืฆืืจืช ืืกืื ืฉื ื ืืงื ืืืื ืืืชืจ ืืืจืกื ื``ืฉืืืืืช'' ืฉื
ืชืืืืจ Java ืืืฉืจ ืชืืืืจ C. ืืขืืงืจื ืฉื ืืืจ, ืกืื ืืืจืื ื:
ืืกืคืจ ืฉืื ืจืฆืืื ืื ืืืฉื ืืืจืืืช ืืืืชืืช ืจืืง
ืกืื ืืกืืก ืฉื ืืฉืคื. ืกืื ืจืืง ืืื ืืืขืฉื ืฉืืืฉ ืจืง ืืืืงืื ืืกืืืืื
ืืงืฉืจืื, ืืขืืงืจ ืืืืจืืช ืคืื ืงืฆืืืช. ืื ืืืืฉื ืืขืช ืืกืื "ืืืืื".
ala ML, ืืืื ืืฉ ืื ืืชื ืืืืช ืฉืื ื ืืืงืฆืช ืืืฉืจ ื-C. ืกืื ืคืืื ืืื ื
ืืืคืืก ืขื ืืื ืืกืืืื ืืืืจืื (ืืืืืจ, ื ืืชื ืืืฉืชืืฉ ืื ืืื ืืขืื ืกืื ืกืืื
ืืืืง), ืืืื ืกืื ืืจืืจืช ืืืืื ืืจืื ืืืฆืืื ืฉืืื ืกืื ืืื ื ืฆืจืื ืืืืคืืข.
ืืื ืกืืคืืจ ืงืืืฅ
ืื ืกืืื ืืกืืก ืืืื ืื, ืื ืืืง ืืืชื ื ืคืจื ืื-File ืื-Thread ADTs: ืจืื ืืืื.
ืขืื ืืืืืช ืกืืืื:
ื ืืงื ืชืืื ืื ืชืื ืื ืคืืืืืืจืคืืื: ืืืฉืจ ืืืืื ืืืขืจื, ื ืืืจ ืกืื ื ืชืื ืื
ืืืชืืื ืืชืืฆืื. ืื ืืืืืืงื Nickle ืขืฉืื ืืืืืช ืืืงืื ืกืืื, ืืืืงืจื ืื ืืืืืืช
ืืคืจืืช ืืกืืื ื ืืฉืืืืืช ืืืื ืืืืืืจ. ืืฉืชื ืื ืืคืื ืงืฆืืืช ืคืืืืืืจืคืืื
ืื ืชืฆืื ืืืืืืช ืขื ืกืื ืื ืชืื ืื ืฉืืืงืฆื; ืืื ืกืื ืืจืืจืช ืืืืื ืขืืืจ ืืืื
ืืคืฆืื.
poly ืื ืืชืืจ ืืช ืืืืืื ืฉื ืื ืกืืื ืื ืชืื ืื. ืืฉืชื ื ืขื ืกืื ืื ืืืื ืืืืื
ืื ืขืจื ื ืชืื ืื.
int ืืกืคืจืื ืฉืืืื ืืืืง ืฉืจืืจืืชื.
ืจึทืฆึดืืึนื ึธืึดื
ืืกืคืจืื ืจืฆืืื ืืืื ืืืืง ืฉืจืืจืืชื.
ืืกืคืจื ื ืงืืื ืฆืคื ืืืฉืืช ืฉืจืืจืืชืืช ืฉื ืืืืง ืืขืจืื. ืืื ืฉืืจืื ืืืฉืืืื ืื ืืืืืื
ืืืชืืฆืข ืืืืืง ืืืกืคืจืื ืจืฆืืื ืืืื, ื ืืงื ืืืืฉื ืื ืืืืืง
ืืจืืชืืืืงื ืืืืฆืขืืช ืืืฆืื ืืืชื ืชืืื ืืืืื ื ืขืืืจ ื ืงืืื ืฆืคื
ืืกืคืจืื. ืืคืื ืงืฆืื ืืืืื ืืช imprecise(n) ืืืฆืจืช ืืกืคืจ ืืืืชื ืขื 256 ืกืืืืืช
ืฉื ืืืืง ืืืืกืคืจ n, ืืขืื ืฉืืืชื ืืืืืง(n,p) ืืืฆืจ ืืกืคืจ ืืืฉื ืขื p
ืคืืกืืช ืืืืง.
T[] ืืขืจื ืืกืื T, ืืขื ืืืื ืืื ืื ืืืชืจ. ืืื ืืคืก ืืืื
ืืขืจืืื ืื ืืงื.
T[*] ืืขืจื ืื ืืืืื ืืกืื T. ืฉืื ืืื ื-C, ืืืืื ืฉื ืืขืจื ืืื ืืฃ ืคืขื
ืืืง ืืกืืื ืื ืืงื. ืืชืจ ืขื ืื, ืืขืจืืื ืืืฆืืืขืื ืื ืกืืืื ืื ืงืฉืืจืื ื
ื ืืงื.
T[*,*,...,*]
ืืขืจื ืื ืืืืื ืื ืืืชืจ ืืกืื T. ืืืืืืื ``*'' ืืื ื ืืืคืฆืืื ืืืื. ืืคื ืฉ
ืืคืกืงืืืช ืืงืืืืืช ืืืืืจืืช, ``T[]'' ืืื ื ืืขืจื ืืคืก ืืืื.
T[E,E,...,E]
ืืืงืฉืจื ืืืืจื, ื ืืชื ืืชืช ืขืจืื ืืกืคืจืื ืฉืืืื ืขืืืจ ืื ืืืื ืฉื ืืขืจื
ืึถืงืฉืึตืจ. ืืื ืืืืขืืื ืื ืืจืง ืืืืจืืช ืืฆืืจืช ืขืจื, ืืืื ื ืืืง ืื-
ืกืึผื. ืกืื ืืขืจื ื ืงืืข ืจืง ืืคื ืกืื ืืืกืืก ืืืกืคืจ ืืืืืื
ืฉื ืืืขืจื.
T0() T0(T,T,...,T)
ืคืื ืงืฆืื ืืืืืืจื ืกืื T0. ืคืื ืงืฆืื ืืงืืืช 0 ืื ืืืชืจ ืืจืืืื ืืื.
T0() T0(T,T,...,T ...)
ืคืื ืงืฆืื ืฉืืงืืืช ืืคืก ืื ืืืชืจ ืืจืืืื ืืื ื ืืจืฉืื, ืืชืืกืคืช ืืกืคืจ ืฉืจืืจืืชื ืฉื
ืืืขืื ืื ืืืคืฆืืื ืืืื. ืืจืฆืฃ ืืฉื ื ืฉื ืฉืืืฉ ื ืงืืืืช (ืืืืคืกืืก) ืืื ืชืืืืจ, ืื
metasyntax: ืจืื ืืช ืืชืืืืจ ืฉื ืคืื ืงืฆืืืช varargs ืืคืจืืื.
*ืืฆืืืข TA ืืืืงืื ืืกืื T. ืืจืืชืืืืงื ืืฆืืืข ืื ืืงื ืคืืขืืช ืจืง ืขืืื
ืืฆืืืขืื ืืืขืจืืื: ืืืฆืืืข ืืืื ืืืืืช ืืืกืื ืื ืืื, ืืขืืื ืืขืืื ืื ืืกืืืช
ืืืืฅ ืืชืืื. ืืฆืืืข ืืืื ืืืฆืืืข ืขื ืืืงืื ืืืฉืื ืื ืืืืืช ืจืืง (0). ืืื ื
C, ืืงืืืืืช ืฉื ``*'' ื ืืืื ืืืงืืืืืช ืฉื ``[]'' ืื ``()'': ืืฉืชืืฉ
ืกืืืจืืื ืืคื ืืฆืืจื.
struct {ืฉื ืช'; ืฉื T; ...}
ืืื ื ืขื ืฉืืืช ืืฉื ืืืกืื ืื ืชืื ืื. ืืกืืืื T ืื ืืืคืฆืืื ืืืื: in
ืืืขืืจื, ืกืื ืืฉืื ืืื ืคืืื.
ืืืืื {ืฉื ื; ืฉื T; ...}
"ืืืืื ืื ืืชืง" ืืืกืืืื ืื ืชืื ืื. ืื ืืืื ืืืชืจ ืืกืื ืจืฉืืืช ืืืจืกื
ืฉื Pascal ืื ืกืื ืื ืชืื ืื ืฉื ML ืืืฉืจ ืกืื ืืืืืื C: ืืฉืืืช ืื ืชืืืืช ืฉื
ืกืื ื ืชืื, ืืืืืง ืืื ืืื ืื ืขื ืขืจื ื ืชืื ืืืื ื ืชืื.
(ื) ืกืืืจืืื ืืงืืืืฅ.
Typedef:
ืืื ื-C, ื ืืชื ืืืฆืืจ ืฉืืืช ืกืืืื ืืืฉืื ืขื ืืฆืืจืช typedef. ืืชืืืืจ ืืื
typedef T typename;
ืืืฉืจ T ืืื ืกืื ื ืืงื. ื ืืชื ืืืฉืชืืฉ ืืฉื ืืืืคืืก ืืืชืงืื ืืื ืืงืื ืฉืื ืฆืคืื ืกืื.
ืขืจืืื
ืืขืจืืื ืฉื ืกืืื ืืืกืืก ืฉื ื ืืงื ืื ืืฆืคืื. ืจืื ืืช ืืชืืืืจ ืืงืืืขืื ืืืขืื.
ืขืจืืื ืฉื ืกืื ืงืืืฅ, ืกืืคืืจ ืืืืฉื ืขืฉืืืื ืืืืืืฆืจ ืืขืช ืจืง ืขื ืืื ืงืจืืืืช ืื
ืคืื ืงืฆืืืช ืืืื ืืช: ืื ืงืืืืื ืงืืืขื ื ืืงื ืืกืืืื ืืื.
ืืคื ืฉืฆืืื ื-TYPES ืืขืื, ืื ืืงื ืืฉ ืืื ืกืืืื ืฉื ``ืขืจื ืืืื ื'': ืืขืจืืื,
ืคืื ืงืฆืืืช, ืืฆืืืขืื, ืืื ืื ืืืืืืืื ืืคืืจืงืื. ืืื ืืื ืืฉ ืืื ืืฉืืชืฃ
ื ืืกืื. ืืืฉืจ ื ืืฆืจืื, ืื ืขืจืื ืืจืืื ืืื ื ืืืชืืืื (ืืื ืื ืื ืืืจืช
ื ึธืงืึผื). ื ืืกืืื ืืช ืืืฉืชืืฉ ืืขืจื ืื ืืืืชืื ืืืจืื ืืืื ืงืืืคืืืฆืื
ืฉืืืื ืื ืืจืื ืืืื ืจืืฆื.
ืืขืจืืื:
[E] ืืืฆืจ ืืขืจื (ืืืืกืก ืืคืก) ืขื ืืืื ืืื E. E ืืืื ืืืืืช ืื ืฉืืืื.
[E]{V,V,...,V}
ืืืฆืจ ืืขืจื ืขื ืืืื ืืื E, ืืืืชืื ื-Vs. ืื ืืฉ ืืขื ืืื
ืืืชืืืื, ืืจืืืืื ืื ืืชืจืื ืืืฉืืจื ืื ืืืืชืืืื.
[E]{V,V,...,V...}
ืืืืืคืกืืก ืืฉื ื (ืฉืืืฉ ื ืงืืืืช) ืืื ืชืืืืจ, ืื ืืื-ืชืืืืจ. ืฆืืจ ืืขืจื ืขื E
ืืืื ืืื. ืืืืื ืืื ืืจืืฉืื ืื ืืืขืจื ืืืืชืืื ืืคื ื-Vs,
ืืืฉืจ ืื ืืืืื ืืื ืื ืืชืจืื ืืงืืืื ืืช ืืืชื ืขืจื ืืื ื-V ืืืืจืื. ืชืืืืจ ืื
ื ืืชื ืืืฉืชืืฉ ืืฆืืจื ืืจืืจื ืขื ืื ืืื ืืืคืชืื ืืืขืจื ืืืื.
[*]{V,V,...,V}
ืืืฆืจ ืืขืจื ืืชืืื ืขื ืืืื ืืื ืจืืื ืืืืืง ืืื ืืืชืืืื. ืฉื
ืืืื ืืืืืช ืืชืืื ืืื ืืคืืืช.
[E,E,...,E] [*,*,...,*]
ืืืฆืจ ืืขืจืืื ืจื ืืืืืืื. ืื ื ืืชื ืืขืจืื ืืืืืืื ืฉืืืื ื-"*": an
ืืืืืื ืฉื ืืืขืจื ืืืืืจืื ืืืืืืื ืื ืื ืืฆืืื ืื ืืืืืจื.
ืืขืจืืื ืืื ืขืฉืืืื ืืืืืืฆืจ ืื ืืืชืืื: ืจืื ืืช ืืคืกืงื ืืืื ืขืืืจ ืืชืืื
ืชืืืืจ.
(T[E]) (T[E,E,...,E]) (T[E]){E,E,...,E}
(T[E,E,...,E]){{E,...},...,{E,...}}
ืชืืืืจ ืืืืคื ืืืฆืืจืช ืืขืจืืื ืืกืื T. ืืืืชืืืื, ืืกืืืจืืื ืืกืืืกืืื,
ืื ืืืคืฆืืื ืืืื. ืืกืคืจ ืืืืชืืืื ืืืื ืืืืืช ืงืื ืื ืฉืืื ืื ืชืื
ืืกืคืจ ืืืืื ืืื ืืื ืืืื. ืขืืืจ ืืขืจืืื ืจื ืืืืืืื, ืืืชืืืชื ืืืืืื
ืืฉ ืฆืืจื ืืคืืื ืืื ืืืื ืืืชืืื; ืื ืื ืืืื ื-C, ืฉื ืื
ืื ืืืคืฆืืื ืืืื.
(T[*]){E,E,...,E} (T[*,*,...,*]){{E,...},...,{E,... }}
ืืืฆืจ ืืขืจืืื ืืกืื T, ืืืฉืจ ืืืื ืื ืืืื ื ืชืื ืืืกืคืจ ืืืจืื ืฉื
ืืชืืืืื ืืื ืชืช-ืืขืจื ืืืื ืื.
ืืฆืืืขืื:
0 ืืฆืืืข ืืืคืก, ืืืงืฉืจืื ืฉืืื ื ืืจืฉ ืืฆืืืข.
&V &A[E,E,...,E] &S.N
ืืืฆืจ ืืฆืืืข ืืืฉืชื ื ืื ืชืื, ืืืื ื ืืืขืจื ืื ืืืืจ ืืืื ื. ื
ืกืื ืืืฆืืืข ืืืื *T, ืืืฉืจ T ืืื ืกืื ืืืืืืืงื ืืืื ืืฆืืืขืื.
*P ืืขืจื ืฉืืืื ืืฆืืืข ืืืฆืืืข P. ื ืืชื ืืจืืืช ืืืชื ืื ืืฉื ืืช ืืืชื ืืื ื-C.
ืคืื ืงืฆืืืช:
(T func(){S;S;...S;}) (T func(T name,T name,...T name){S;S;...S;})
ืืืืื ืคืื ืงืฆืื: ืืฆืืื ืคืื ืงืฆืื ืฉื ืืคืก ืื ืืืชืจ ืคืจืืืจืื ืคืืจืืืืื ืขื ื-
ืกืืืื ืืฉืืืช ื ืชืื ืื, ืืืืืจื ืืช ืกืื ืืชืืฆืื ืื ืชืื. ืืืฃ ืืคืื ืงืฆืื ื ืชืื
ืืคื ืจืฉืืืช ืืืฆืืจืืช ืืืชืืืชืืืช ืืืฆืืจืคืช. ืื ืืกืืืื ืื ืืืคืฆืืื ืืืื, ืืืจืืจืช ืืืืื ืืื
ืคืืื. ืืคื ืฉืฆืืื ืืขืื, ืคืื ืงืฆืืืช ืื ืื ืืจืง ืงืจืืื ืืคื ืขืจื: ืืคืจื, ืืขืจืืื
ืืืื ืื ืืืขืชืงืื ืืื ืืืืืจืื.
ืฉื ืคืื ืงืฆืื T (ืฉื T, ืฉื T,..., ืฉื T){S;S;...S;}
ืืืืืจ ืคืื ืงืฆืื ืฉื ืืคืก ืื ืืืชืจ ืืจืืืื ืืื. ืกืืืจ ืชืืืืจื ืขืืืจ
T(T,T,...T) name = (T func(T name,T name,...T name){S;S;...S;});
ืฉื ืคืื ืงืฆืื T (ืฉื T, ืฉื T ...)
ืืืืืคืกืืก ืืื ืืื ืชืืืืจ, ืื ืืื-ืชืืืืจ: ืื ืืืืขืื ืืคืืจืืื ืืืืจืื ื-a
ืืืจื ืืคืื ืงืฆืื ืืืคืืขืืช ืฉืืืฉ ื ืงืืืืช, ืืคืื ืงืฆืื ืขืฉืืื ืืืืงืจื ืขื ืืืชืจ ื ืชืื ืื ืืคืืขื
ืืืฉืจ ืคืืจืืืืืช. ืื "ืื ืืกืคืื" ืืคืืขื ืืจืืืื ืืคืืจืืื ืืืขืจื ืฉื ื-
ืฉื ื ืชืื, ื-typechecked ืืื ืืกืื ืืืืคืฆืืื ืื T ืฉื ืืืจืืืื ื ืืืืจืื
(ืคืืื ืืจืืจืช ืืืื).
ืืื ืื:
(struct { T name; T name; ...T name; }){name = E; ืฉื = E; ...name=E;}
ืฆืืจ ืขืจื ืืกืื ืืืื ื. ืืฉืืืช ืืขืื ืืฉื ืืืืชืืืื ืื ืชืื
ืขืจืืื, ืืฉืืฉืืจ ืื ืืืืชืื. ืืคื ืฉืฆืืื, ืืืชืืื ืืชืืฆืข ืืคื ืชืืืืช
ืืืงืื ืืืงืื ืืื ื-C.
ืืืืืืื:
(ืืืืื { T name; T name; ...T name; }.name) E
ืฆืืจ ืขืจื ืฉื ืกืื ืืืืืื ืื ืชืื, ืืืืจืืืฆืื ืื ืืชื ืช ืขื ืืื .name ืืืขืจื
ื ืชืื ืขื ืืื E. E ืืืื ืืืืืช ืชืืื ืกืื ืขื ืืฉื.
ืืฆืืจืืช
ืชืืืืจ ืืืฆืืจื ืืืื ืืืื ืืื ืฉื C. ืืฉ ืชืืืืจ ื ืืกืฃ
ื ืืกืฃ ืืื ืืชืืื ืืคืื ืงืฆืืื ืืืืช ืื ืืกืคืช ืฉื ื ืืงื.
ื; ืืขืจืื ืืช ืืืืืื.
{S ... S}
ืืืฆืข ืืช ืืืฆืืจืืช ืืืฆืืจืคืืช ืืคื ืืกืืจ.
ืื (ื) ืก
ืืืชื ื ืืกืืกืืช.
ืื (ื) ืก
ืืืฆืืข ืืืชื ื.
else S Else ืืืชืจ, ืขื ืืชืืืืจ ืืืกืื ืืืงื ืืจืืืืื. ืืคืจื, ืืืจ ืืืืื
ื-if() ืื twixt() ืืขืืื ืืื ืืืืชืจ.
ืืขืื (ื) ืก
ืืขืื ืืืืื ืืกืื ืื C.
ืืขืฉืืช S ืชืื (E);
ืืขืฉืืช ืืืืื ืืกืื ืื C.
ืขืืืจ (opt-E; opt-E; opt-E) S
ืกืื ืื C ืขืืืจ ืืืืื.
switch (E) { case E: S-list case E: S-list ... ืืจืืจืช ืืืื: S-list }
ืืฆืืจืช ืืงืจื ืืกืื ืื C. ืืืืืื ืืืงืจื ืืื ื ื ืืจืฉืื ืืืืืช ืงืืืขืื
ืืืืืืื, ืื ืขืฉืืืื ืืืืืช ืฉืจืืจืืชืืื. ืืืงืจื ืืจืืฉืื ืืืขืจืื ืืืชื
ืืจืืืื ื ื ืืงื, ืืืจืช ืืจืืจืช ืืืืื ืื ืงืืืืช, ืืืจืช ืืืื ืขื ืืืฃ ืืืชื.
twixt(opt-E; opt-E) S
twixt(opt-E; opt-E) S else S
ืื ืืืืื ืืืจืืืื ื ืืจืืฉืื ืืืขืจื ื-true, ืืืืฃ ืฉื ื-twixt() ืืืืืจ ืืื
ืืืืื ืืืจืืืื ื ืืฉื ื ืืืขืจื. ืื ืืืืื ืืืืขืื ืืจืืฉืื
ืืืขืจื ื-false, ืืฆืืจืช else ืชืืืฆืข ืื ืงืืืืช. ืืืจืช ื
ืื ืืฆืืจืช twixt() ืชืืืื.
ืืืฆืืจื twixt() ืืืืืื ืฉืื ืืืืจืืขืื ืืืื ืืชืจืืฉื ืืืคืจื ืฉืฆืืื
ืกืืจ ืืื ืงืฉืจ ืืืืคื ืฉืื ื-twixt() ื ืื ืก (ืืืืืฅ) ืื ืืฆืืื,
ืืืื ืืจืืืื, ืืืฉืืื ืืืคืกืงืืช. (ืืฉืืื ืืกืขืืฃ ``ืกืืฃ ืกืืฃ'' ืฉื Java.)
ื ืกื S;
try S catch name (ืฉื T, ...) { S; ... };
try S catch name (ืฉื T, ...) { S; ... } ... ;
ืืฆืข ืืช ืืืฆืืจื ืืจืืฉืื ื S. ืื ืืืขืื ืืจืื ืืืืื ืืืืฆืืข, ืื
ืฉื ืชืืื ืืช ืืฉื ืืืืืง Catch, ืืื ืืช ืืคืจืืืจืื ืืคืืจืืืืื ื-catch
ืืืกืื ืืช ืืคืจืืืจืื ืืคืืขื ืฉื ืืืจืื, ืืืืฆืข ืืช ืืืฃ ืืชืคืืกื
ืึทืืกืึนื. ืืืชืื ืฉืืืื ืืกืคืจ ืืืืงืื ืฉื ืชืคืืกื ืืื ื ืืกืืื. ืืคืก ืชืืคืกืื, ืืืจืืช ืฉืื ืืืงืืื, ืื
ืืกืจ ืชืืขืืช ืืืกืืช. ืืืืจ ืืฉืืืช ืืกืืืช ืชืคืืกื, ืืืืฆืืข ืืืฉืื ืืืืจ ืืื
ืกืขืืฃ ืื ืืกืืื. ืืื ืืื ืืืจ ืืืจ, ืืืืื ื ืงืฉืจ ืื ืืกืืื ืืจืืืื ืื ืืืืจืื-
ืืืืง ืืชืคืืก.
ืืืขืืืช ืฉื (ืฉื, ืฉื,..., ืฉื)
ืืขืื ืืช ืืืจืื ืืขื ืืฉื ืขื ืืคืก ืื ืืืชืจ ืืจืืืื ืืื.
; ืืฆืืจืช ืืืคืก
ืืฉืืืจ; ืืคืกืง ืืช ืืืืฆืืข ืฉื ืืฆืืจืช ืืืฆืืจืคืช ืืงืจืืื ืืืืชืจ ืขืืืจ/do/while/switch/twixt.
ืืืืื ืืขืืืื ืืืืฆืข ืืืฉืจ ืืฆืืจืช twixt ืชืฆื.
ืืืฉื
ืกื ืืฃ ืืฉืืจืืช ืืืืื ืืืืชื ื ืฉื ืืืชืื ืืงืจืื ื/ืืขืฉืืช/ ืชืื ืืื
ืืฆืืจื.
ืืืจื E;
ืืืืจ ืขืจื E ืืืคืื ืงืฆืื ืืืงืืคื ืืงืจืืื.
ืืจืืื ืฉืืืช:
ืืื Java ื-C++ ืื ืืงื ืืฉ ืืืฉื ืฉื ืืจืื ืฉืืืช, ืืืกืฃ ืฉืืืช ืขื ืืืงืืช
ืจืืืช ืืืืืืช. ื-Nickle, ืืจืืื ืฉืืืช ื ืืฆืจืื ืขื ื- ืืจืื ืฉืืืช ืคืงืืื.
opt-P ืืจืื ืฉืืืช N { S ... }
ืืฆืื ืืช ืื ืืฉืืืช ืฉืืืืืจื ืืืฆืืจืืช S ืืชืื ืืจืื ืฉืืืช ืืฉื N. The
ืืกืืื ืืืืคืฆืืื ืืืช P ืขืฉืืื ืืืืืช ืืืืช ืืืคืชื ืฆืืืืจืืช, ืื ืืืืืจ: ืื ืจืง ืืฆืืื
ืฉืืฉื N ืขืฆืื ื ืจืื ืืืงืื ืืืจ ืืืืงืฃ ืื ืืืื, ืืืื ืื ืืืื
ืงืฉืืจ ืื ืจืืืช ืฉื ืคืจืืืื ืืชืื ืืจืื ืืฉืืืช.
ืืืจืืื ืืช ืืจืื ืืฉืืืช N { S ... }
ืคืชื ืืืืฉ ืืช ืืจืื ืืฉืืืช ืื ืชืื N, ืืืจืืื ืืืชื ืขื ืืฉืืืช ืืืืืืจืื ืืฆืืืืจืืื ื-
ื ืชื ื ืืฆืืจืืช ืฉ.
ืฉืืืช ืืืืืืจืื ืืชืื ืืจืื ืืฉืืืช ืืื ื ื ืจืืื ืืืืฅ ืืืจืื ืืฉืืืช ืืื ืื ืื
ืืืกืืืื ืขื ืืืืช ืืืคืชื ืฆืืืืจืืช. ื ืืชื ืืืคื ืืช ืืฉืืืช ืฆืืืืจืืื ืืืืฆืขืืช ื
ืกืืืื ื ืชืื:
ืืจืื ืฉืืืช::ืืจืื ืฉืืืช::...::ืืจืื ืฉืืืช::ืฉื
ืืชืืืืก ืืฉื ืื ืชืื ืืคื ืฉืืืืืจ ืืชืื ืงืืืฆืช ืืจืืื ืืฉืืืช ืื ืชืื ื. ื
ืชืืืืจ ื ืงืืืชืืื ืืคืื ืืื ืืฆืขืจ, ืืืืืื ืฉืืื ืฉืื ื ืืืงืฆืช ืืืฉืืขืืชื ืืืฉืจ ื
C++, ืืื ืื ืืกืืืื ืืืืืื ื ืืงืื, ืืืืืื ืื ืฉืื ืชืืื ื ืื
ืืคืจืื ืืจืื ืืฉืืืช ืฉืื ื ืืืืื ื ืชืืืืจืืช ืืืืคืจืืืจ ืืืื ื. ื
Java, ืืืฉื, ืืืืืื
ืฉื.ืฉื.ืฉื
ืืื ืืขืืจืคื ืืืืื ื ืชืืืืจืืช: ืืฉื ืืืืฆืขื ืขืฉืื ืืืืืช ืืื ื ืื ื
ืืจืื ืฉืืืช.
ืืืืื โโN;
ืืฉื N ืืืื ืืืชืืืืก ืืืจืื ืฉืืืช: ืื ืืฉืืืช ืืฆืืืืจืืื ืืืจืื ืืฉืืืช ืืื ืื
ืืืื ืืืืื ืื ืืืื (ืืงืคืื ืขื ืฉืืืช ืกืืชืจืื).
BUILTINS
ื ืืงื ืืฉ ืืืกืฃ ืฉื ืคืื ืงืฆืืืช ืกืื ืืจืืืืช ืืืื ืืช. ืืืง ืืื ืืชืืืืช ื-C,
ืืื ืจืืื ืืชืืืื ืื ืืงื. ืืกืคืจ ืืืกืคืื ืฉื ืคืื ืงืฆืืืช ืฉืืืื ืืืื ื
ืกืืื ื ืชืื ืื: ืืฉ ืืจืืืช ืืช ืืจืืื ืืฉืืืช ืฉืืื, ืืื ืขื ืืกืืืื ืฉืืื, ื-ADTs.
ืืจืื ืืขืืืื ื ืืื ืื:
int printf(string fmt, poly args...)
ืงืืจื ืืงืืืฅ::fprintf(stdout, fmt, args ...) ืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
ืคืื ืงืฆืืืช ืืืจืืืช ืืงืืืช ()
ืงืืจื ืืงืืืฅ::fgets(stdin) ืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
ืคืื ืงืฆืืืช ืืืจืืืช scanf (ืืืจืืืช fmt, *poly args...)
ืงืืจื ืืงืืืฅ::vfscanf(stdin, fmt, args) ืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
ืคืื ืงืฆืืืช ืืืจืืืช vscanf (ืืืจืืืช fmt, (*poly)[*] args)
ืงืืจื ืืงืืืฅ::vfscanf(stdin, fmt, args) ืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
ืืืฉ ืื ืืืืืง (ืขืจื ืจืฆืืื ืื)
ืจืื ืืช ืืืืื ืืกืื ืืืืชื ืืืขืื.
ืืืฉ ืื ืืืืืง (ืขืจื ืจืฆืืื ืื, int prec)
ืจืื ืืช ืืืืื ืืกืื ืืืืชื ืืืขืื.
int string_to_integer(string s)
int atoi(ืืืจืืืช s)
ืืืจืืืื ื s ืืื ืืืจืืืช ืกืคืจืืช ืืกืืื, ืืืชืืฆืื ืืื ืืืกืคืจ ืืฉืื ืฉืื
ืืืืฆื. ืื ืืืืจืืืช s ืืื ืชืืืืจืืช ืืงืกืืฆืืืืืช, ืืืงืืืืช, ืืื ืืจืืช ืื
ืงืืืข ืืกืืก-10 ืืคืืจืฉ, ืืชืืืืก ืืืื ืืืื.
int string_to_integer(string s, int base)
int atoi(ืืืจืืืช s, int base)
ืืชืืืืก ื-s ืืืืจืืืช ืฉื ืกืคืจืืช ืืืกืืก ืื ืชืื. ืืกืืก ืฉื 0 ืคืืขื ืืื ืืื ืืกืืก
ืึทืขึฒื ึธื. ืืืจืช, ืืชืขืืืื ืืชืืืืจ ืืคืจื ืืืกืืก ืืืืจืืืช.
int putchar(int c)
ืืฆื ืืช ืืชื ืื ืชืื ืขื ืืคืื ืืกืื ืืจืื ืืืืฆืขืืช File::putc(c, stdout), ื
ืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
int sleep (int msecs)
ื ืกื ืืืฉืขืืช ืืช ืืฉืจืฉืืจ ืื ืืืื ืืืฉื ืืืคืืืช ืฉื ืืืช ืืคืืืช. ืืืืจ 1 ืขื
ืืืืจื ืืืงืืืช, ื-0 ืืืจืช.
int exit(int status)
ืฆื ืื ืืงื ืขื ืงืื ืืืฆื ืื ืชืื. ืื ืชืืืืจ ืืืื.
int dim(poly[*] a)
ืืืื ืชื ืืขืจื ืื-ืืืื a, dim() ืืืืืจ ืืช ืืกืคืจ ืืืืื ืืื ืฉื a.
int[] dims(poly[] a)
ืืืื ืชื ืืขืจื ืฉืจืืจืืชื a, dims() ืืืืืจ ืืขืจื ืฉื ืืกืคืจืื ืฉืืืื ื ืืชื ืืช ืืืืื ืฉื
ืื ืืืื ืฉื ื. ืืคืืื, dim(dims(a)) ืืื ืืกืคืจ ืืืืืื ืฉื a.
*poly reference(poly v)
ืืืื ืชื ืขืจื ืฉืจืืจืืชื v, ``box'' ืืช ืืขืจื ืืื ืืืืกืื ืืืืืืจ ืืฆืืืข ืืืื
ืืชืืื.
string_to_real(string s) ืจืฆืืื ืื
ืจืฆืืื ืื atof(ืืืจืืืช s)
ืืืจ ืืช ืืืืจืืืช ืืงืืืขื ืืืืืชืืช s ืืืกืคืจ ืืืืืชื ืืืฉืืื ืื.
ืืกืคืจ abs (ืืืฉื v)
ืืืืจ ืืช ืืขืจื ืืืืืื ืฉื v. ืกืื ืืชืืฆืื ืฉื ืืืจ ืืชืืื ืื ืชืื
ืืืงืฉืจ.
int floor(real v)
ืืืืจ ืืช ืืืกืคืจ ืืฉืื ืืืืื ืืืืชืจ ืงืื ืื ืฉืืื ื-v. ืื ืืืืฉื ืื v ืืื ืืืืชื
ืืืืืืง ื ืืื ืืื.
int ceil(real v)
ืืืืจ ืืช ืืืกืคืจ ืืฉืื ืืงืื ืืืืชืจ ืืืืื ืื ืฉืืื ื-v. ืื ืืืืฉื ืื v ืืื a
ืืืืชื ืืืืืืง ื ืืื ืืื.
int exponent(ืจืืื v)
ืืืืจ ืืช ืืืขืจืื ืฉื ืืืืฉื ืืื ืืืืืง v.
ืื ืืืก ืจืฆืืื ืื (ืืืฉื v)
ืืืืจ ืืช ืืื ืืืกื ืฉื v ืืืืฉื ืืื ืืืืืง, ื-m ืจืฆืืื ืื ืขื 0 <= m <= 0.5 .
int ืืื ื (ืจืฆืืื ืื v)
ืืืืจ ืืช ืืืื ื ืฉื ืืืกืคืจ ืืจืฆืืื ืื v: ืืืืืจ, ืื v = n/d ืืฆืืจื ืืืคืืชืช,
ืืืืืจ ื .
ืืื ื int (ืจืฆืืื ืื v)
ืืืืจ ืืช ืืืื ื ืฉื ืืืกืคืจ ืืจืฆืืื ืื v: ืืืืืจ, ืื v = n/d ืืฆืืจื ืืืคืืชืช,
ืืืืืจ ื.
int precision (real v)
ืืืืจ ืืช ืืกืคืจ ืกืืืืืช ืืืืืง ืฉื ืืื ืืืกื ืฉื ืืืกืคืจ ืืืืฉื ืืื ืืืืืง
v.
int sign (real v)
ืืืืจ -1 ืื 1 ืฉืื v ืืื ืฉืืืื ืื ืื ืฉืืืื.
int bit_width(int v)
ืืืืจ ืืช ืืกืคืจ ืืกืืืืืช ืื ืืจืฉืืช ืืืืฆืื abs(v) ืคื ืืื.
int is_int(poly v)
ืืงืื ืคืจืืืืงื.
int is_rational(poly v)
ืคืจืืืงืืื ืืกืื ืืกืคืจื ืืืืืื: ืืืฉื, ืืื_ืจืฆืืื ืื(1) ืืืืืจ 1.
int is_number(poly v)
ืืงืื ืคืจืืืืงื.
int is_string(poly v)
ืืงืื ืคืจืืืืงื.
int is_file(poly v)
ืืงืื ืคืจืืืืงื.
int is_thread(poly v)
ืืงืื ืคืจืืืืงื.
int is_semaphore(poly v)
ืืงืื ืคืจืืืืงื.
int is_continuation(poly v)
ืืงืื ืคืจืืืืงื.
int is_array(poly v)
ืืงืื ืคืจืืืืงื.
int is_ref(poly v)
ืคืจืืืงื ืกืื: ืืืืง ืกืื ืืฆืืืข. ื ืืชื ืืืขืื ืฉืื ืชืืื ื ืฉืืืื, ืืขืฉืืื
ืืฉื ืืช.
int is_struct(poly v)
ืืงืื ืคืจืืืืงื.
int is_func(poly v)
ืืงืื ืคืจืืืืงื.
int is_void(poly v)
ืืงืื ืคืจืืืืงื.
int gcd(int p, int q)
ืืืืจ ืืช ื-GCD ืฉื p ื-q. ืืชืืฆืื ืชืืื ืืืืืืช.
int xor(int a, int b)
ืืืืจ a ^ b . ืื ืืขืืงืจ ืืืืงื ืืืคื ื ืฉืื ืืงื ืืื ืืืคืจืืืจ xor.
poly setjmp(ืืืฉื *c, poly retval)
ืืคืจืืืืืืืื setjmp() ื-longjmp() ืืื ืขื ืกืื ืืืืฉื ืืืฆืจืื an
ADT ืฉืืืืฉื ืขืืืจ ืืขืืจืืช ืืืขื ืฉืจืืจืืชืืืช ืฉื ืืจืืืช ืฉืืืื. ื-setjmp() ื
ื-longjmp() ืืืืื ืื ืืืืื ืืืื ืฉื C, ืืื ืฉืืืืืื ืฉ-longjmp()
ืชืืื ืืงืคืืฅ ืืืคื ืืขืื ืืืกืจ(!): ืืืฉื ืฉื ืฉืืจ ืืืืฆืขืืช setjmp() ืืขืืื ืื ืืืคื
ืื ืืืงื ืืืืื ืืื ืืชืืื ืืช.
ื-setjmp() ืืืืื ื ืฉืืืจ ืืช ืืืืงืื ืื ืืืื ืืืช ืืืงืฉืจ ืืืืฉื ืฉืื
ืืจืืืื ื ืืฆืืืข, ืืืืืจ ืืื ืืืืืจ ืืช ืืืจืืืื ื ืืฉื ื ืฉืื.
void longjmp (ืืืฉื c, poly retval)
ื-longjmp() ืืืืื ื ืืขืืื ืื ืืืืจ ืืืชืจ ืืฉืืื, ืืื ืืืืจ ืื-
setjmp() ืฉืืฆืจ ืืช ืืืืฉื, ืขื ืขืจื ืืืืจื ืฉืืื ืืฉื ื
ืืจืืืื ื ืฉื longjmp().
ืืืืขืช ืืืจืืืช
ืืื ืืื ืืืืคืกื ืืืืื ืฉืืืืฉ ืืื ืืจืืงืืืื ืืจืื ืืขืืืื ื. ืืจืืจืช ืืืื "> ". ืืชื
ืืืื ืืฉืืจ ืืืฆืืจื ืื ืืืืขื, ืืืืฉืจ ื ืืคืื ืืืืื,
ืืืชืืื. ืขืจืื ืืจืืจืช ืืืืื ืื "> ", "+ " ื- "- ".
ืฉืืจืช ืืืจืืืช 2
ืืื ืืื ืืืืืคืกืช ืืืืื ืฉืืืืฉ ืืื ืืจืืงืืืื ืืขืช ืืืชื ื ืืฉืืจ ืืืฆืืจื
ืื ืืืืื. ืืจืืจืช ืืืืื "+".
ืฉืืจืช ืืืจืืืช 3
ืืื ืืื ืืืืคืกื ืืืืื ืฉืืืืฉ ืืื ืืจืืงืืืื ืืขืช ืืืชืืจ ืืืืื. ืืจืืจืช ืืืืื "-".
ืคืืจืื ืืืจืืืช
ืืคืืจืื printf() ืืืืคืกืช ืขืจืืื ืืจืื ืืขืืืื ื. ืืจืืจืช ืืืืื "%g".
ืืจืกืช ืืืจืืืช
ืืกืคืจ ืืืจืกื ืฉื ืืืฉืื Nickle ืืืืืฆืข ืืขืช.
ืื ืืืช ืืืจืืืช
ืชืืจืื ืืื ืืื ืฉื ืืืฉืื Nickle ืืืืืฆืข ืืขืช, ืืืืคืก
"yyyy/mm/dd", ืื "?" ืื ืชืืจืื ืืื ืืื ืืื ื ืืืืข ืืกืืื ืืืฉืื.
ืงืืืฅ ืกืืืื
ืงืฉืืจ ืืืจื ืืงืื ืืกืื ืืจืื.
ืกืืout ืงืืืฅ
ืงืฉืืจ ืืืจื ืืคืื ืืกืื ืืจืื.
ืงืืืฅ stderr
ืงืฉืืจ ืืืจื ืืฉืืืืืช ืืกืื ืืจืื.
ืืจืืืื:
ืืื ืืจืืืื ืกืื ืืจืืืื ืืืฆืืจืื ืืจืืฉ ืื ืขืฉื ืืื ืฉืืืืฉ ืคื ืืื ืขื ืืื ื ืืงื.
ืืจืืื uninitialized_value(string msg)
ื ืกื ืืืฉืชืืฉ ืืขืจื ืื ืืืืชืื.
ืืจืื invalid_argument(string msg, int arg, poly val)
ืืืจืืืื ื arg-th ืืคืื ืงืฆืื ืืืื ืืช ืืื ืขืจื ืื ืืืงื val.
ืืจืืื readonly_box(string msg, poly val)
ื ืกื ืืฉื ืืช ืืช ืืขืจื ืฉื ืืืืช ืืงืจืืื ืืืื ื-val.
ืืจืื invalid_array_bounds(string msg, poly a, poly i)
ื ืืกืืื ืืืฉืช ืืืขืจื a ืืืื i ืืื ืืืืฅ ืืชืืื.
ืืจืืื divide_by_zero(ืืืืขื ืืืจืืืช, ืืกืคืจ ืืืืชื, ืืืืจื ืืืืชืืช)
ื ืกื ืืืืง ืืช ืืืกืคืจ ืืืืืจื ืขื den == 0.
ืืจืื invalid_struct_member(ืืืืขื ืืืจืืืช, ืืื ื ืคืืื, ืฉื ืืืจืืืช)
ื ืกื ืืืชืืืืก ืืฉื ืืืืจ ืฉื ืืื ื ืืืืืืืงื, ืฉืืื ื ืงืืื.
ืืจืื invalid_binop_values(string msg, poly arg1, poly arg2)
ื ืกื ืืืขืจืื ืืืคืจืืืจ ืืื ืืจื ืขื args arg1 ื- arg2, ืืืฉืจ ืืคืืืช ืืื
ืืืขืจืืื ืืืื ืื ืืืงื.
ืืจืื invalid_unop_values(string msg, poly arg)
ื ืกื ืืืขืจืื ืืืคืจืืืจ unary ืขื ืืจืืืื ื ืื ืืืงื arg.
ืืืื ื ืืจืืื ืฉืืืช:
Math ืคืื ืงืฆืืืช ืืืชืืืืงื ืืืืื ืืช ืืืจืื ืืฉืืืช Math ืืืืฉืืืช ืืืืคื
ืืืืขื ืืืืืช ืชืืื ืืกืคืจืืืช C. ื ื ืืืชืืืขืฅ ืขื ืืืชืืื
ืืืจืืืื ืืคืจืืื ื ืืกืคืื.
ืคืื ืืืืชื
ืงืืืข ืื ืืืืืง ื ืืชื ืืช ืืขืจื ืฉื ืืืก ืืืงืฃ/ืงืืืจ ืฉื
ืขืืืื ืืคื ืืืืง ืืจืืจืช ืืืืื ืฉื 256 ืกืืืืืช.
ืืืื ืืืืชื ื
ืงืืืข ืื ืืืืืง ื ืืชื ืืช ืืขืจื ืฉื ืืกืืก ืืืืืจืืชืืื ืืืืขืืื ื-
ืืืืง ืืจืืจืช ืืืื ืฉื 256 ืกืืืืืช. ืืืืืื ืฉ-e ืืืื, ืืฉ ืืืคื ืืช ืืืื ืืจื
Math::e, ืขื ืื ืช ืืื ืืข ืืขืืืช ืืฉืืืืฉ ืืืืช ืืืืืฉืืช ืืืืคืืืช ื
ืืจืื ืืขืืืื ื.
real function sqrt(real v)
ืืืืืจื ืืช ืืฉืืจืฉ ืืจืืืืขื ืฉื v.
real function cbrt(real v)
ืืืืืจื ืืช ืฉืืจืฉ ืืงืืืืื ืฉื v.
real function exp(real v)
ืืืืืจื e**v.
ืืืื ืคืื ืงืฆืืืช ืืืืชื (ืืืืชื ื)
ืืืืืจื v ืื ืฉe**v == a. ืืืจืง ืืจืื invalid_argument ืื a ืืื ื-
ืืืืื.
real function log10(real a)
ืืืืืจื v ืื ืฉ-10**v == a. ืืืจืง ืืจืื invalid_argument ืื a ืืื ื-
ืืืืื.
real function log2(real a)
ืืืืืจื v ืื ืฉ-2**v == a. ืืืจืง ืืจืื invalid_argument ืื a ืืื ื-
ืืืืื.
ืคืื ืงืฆืื ืืืืชืืช pi_value(int prec)
ืืืืืจื ืืช ืืืืก ืืื ืืืงืฃ ืืขืื ืืงืืืจ, ืขื ืกืืืืืช ืืืงืืืืช
ืฉื ืืืืง.
ืคืื ืงืฆืื ืืืืชืืช ืืื (ืืืืชื ื)
ืืืืืจื ืืช ืืืืก ืืื ืืฆืืข ืื ืืืืช ืืืชื ืืืืื ืฉื ืืืืืช a ืฉื ืืืื
ืืฉืืืฉ, ื ืชืื ืืจืืืื ืื.
Real function cos(real a)
ืืืืืจื ืืช ืืืืก ืืื ืืฆืืข ืืกืืืื ืืชืืชืืช ืืืืืืช a ืฉื ืืืื
ืืฉืืืฉ, ื ืชืื ืืจืืืื ืื.
void function sin_cos(real a, *real sinp, *real cosp)
ืืืืจ ืขื sin(a) ื-cos(a) ืืืืืืกื ืื ืืืืงืืืื ืฉืืืืื ืืฆืืืข sinp ื-cosp
ืืืชืืื. ืื ืืื ืืืฆืืืขืื ืืื 0, ืื ืชืืืกื ืืืืงืื ืื. ืืืื
ืืขื ืืืชืจ ืืืืจ ืืืฉืจ ืงืจืืื ืืฉืชื ืคืื ืงืฆืืืช ืืืืง ืื ืคืจื.
ืคืื ืงืฆืื ืืืืชืืช ืฉืืืืฃ (ืืืืชื ื)
ืืืืืจื ืืช ืืืืก ืืื ืืฆืืข ืื ืืืืช ืืฆืืข ืืกืืืื ืฉื ืืืืืช a ืฉื ืืืื
ืืฉืืืฉ, ื ืชืื ืืจืืืื ืื. ืฉืื ืื ืฉ-tan(pi/2) ืืื ื ืฉืืืื ืืจืืข: ืืื ืชืืื
ืืืืืืจ ืืกืคืจ ืืืื ืืืื ืืืชืื ืืืืืง ืืงืื ืฉืื.
ืคืื ืงืฆืื ืืืืชืืช asin(ืจืืื v)
ืืืืืจื ืืื ืฉsin(a) == v.
real function acos(real v)
ืืืืืจื ืืื ืฉ-cos(a) == v.
ืคืื ืงืฆืื ืืืืชืืช atan(ืจืืื v)
ืืืืืจื ืืื ืฉtan(a) == v.
ืคืื ืงืฆืื ืืืืชืืช atan2(ืืืฉื x, y)
ืืืืืจื ืืื ืฉ-tan(a) == x / y. ืืชืืืื ืืฆืืจื ื ืืื ื ืขื y == 0.
real function pow (real a, real b)
ืืืฉืื ืืืคืขืื **.
ืงืืืฅ ืืจืื ืืฉืืืช File ืืกืคืง ืคืขืืืืช ืขื ืขืจืื ืงืืฆืื.
int function fprintf(ืงืืืฅ f, string s, ....)
ืืืคืก ืขืจืืื ืืขืืฆืืื ืืงืืืฅ, ืืื ืขื ืกืคืจืืืช UNIX stdio fprintf(). fprintf()
ื-printf() ืืงืืืื ืชืช-ืกื ืกืืืจ ืฉื ืืจืกืช ืกืคืจืืืช stdio: %c, %d, %e,
%x, %o, %f, %s, %g ืคืืขืืื ืืฆืคืื, ืืื ืื %v ืืืืคืกื ืืืื ืฉื ืขืจื. ืคืึผืจืึธื
ื ืืชื ืืืงื ืืชืงื ืื ืืื ืกืืื ืืืืื ืืืืช ืืคืืจืื ืืฉืื ืื
ืขืืฆืื. ืืฉื ื ืืจืื ืืืืื ืืืืขืื ืขื ืขืืฆืื ืงืื ืืคืื.
ืคืึผืจืึธื ืืืชืืืช:
%c ืืืจืฉ ืืจืืืื ื ืืกืคืจ ืฉืื ืงืื (0..255), ืืืชืขืฆื ื-ASCII
ืืืคื.
%d ืืืจืฉ ืืจืืืื ื ืฉื ืืกืคืจ ืฉืื, ืืืชืขืฆื ืืืกืคืจ ืฉืื.
%x ืืืจืฉ ืืจืืืื ื ืฉื ืืกืคืจ ืฉืื, ืืืขืฆื ืืืกืืก-16 (ืืงืกืืฆืืืื)
ืืกืคืจ ืฉืื.
%o ืืืจืฉ ืืจืืืื ื ืฉื ืืกืคืจ ืฉืื, ืืืชืขืฆื ืืืกืคืจ ืฉืื 8 (ืืืงืืื).
%e ืืืจืฉ ืืจืืืื ื ืืกืคืจ ืืคืืจืืืื ืืชืืืื ืืืขืืื.
%f ืืืจืฉ ืืจืืืื ื ืืกืคืจ, ืืคืืจืืืื ืืกืืืื ื ืงืืื ืงืืืขื.
%s ืืืจืฉ ืืจืืืื ื ืืืจืืืช, ืืคืืื ืืช ืืืืจืืืช ืคืฉืืื ืืืฉืืขื.
%g ืืืจืฉ ืืกืคืจ, ืืื ืกื ืืืืืจ ืืืฆืื ืืืืืง ืืงืจืื
ืืขืฆื ืืืชื.
ืคืึผืจืึธื ืืฉื ื:
ืกืคืจืืช ืื ืชืืื ืืคืืจืื ืืงืืื ืฉืื ืื ืคืืจืื ืฉื ืืกืคืจ ืฉืื ืืืฆืืื ืืช
ืืกืคืจ ืืืกืจ ืืฉืื ืืคืืจืื ืขืืืจ ืื ืชืื ืื ืืขืืฆืื. ื
ืืขืจื ืืืืคืก ืืืชืืื ืืื ืืช ืืืงืื ืื.
digits.digits
ืืคืืจืืืื ืืืืืชืืื ืืงืืื ืืื ืืฉื ืื ืคืืจืืืื ืฉืืืื ืืืฆืืื ืื ืืช
ืจืืื ืฉืื ืืืืืง (ืืกืคืจ ืืชืืืื ืืืจื ืื ืงืืื ืืขืฉืจืื ืืช) ืฉื
ืขืจื ืืขืืฆื. ื ืืชื ืืืฉืืื ืื ืืื ืืืืกืคืจืื ืืฉืืืื.
- ืขืจื ืืืืง ืืืฆืืื ืืืืง ืืื ืกืืคื.
* ืืืจืืืื ื ืืื ื-fprintf() ืืื ืืกืคืจ ืฉืื ืืืฆืืื ืืช ืจืืื ืืฉืื ืื
ืืืืง ืืขืจื ืืืขืืฆื.
ืคืื ืงืฆืืืช ืืงืืืฅ string_write()
ืืืืจ ืงืืืฅ ืฉืืืกืฃ ืขืจืืื ืืชืืืื ืืืืจืืืช.
int function close(ืงืืืฅ f)
ืกืืืจ ืงืืืฅ f ืืืืืจ ืืื ืืืงืฆืื ืืืฆืืื.
int function flush(ืงืืืฅ f)
ืฉืืคื ืืช ืืืืืจืื ืฉื ืงืืืฅ f ืืืืืจื ืืื ืืืงืฆืื ืืืฆืืื.
int function getc(ืงืืืฅ f)
ืงืื ืืช ืืชื ืืื ืืงืืืฅ f ืืืืืจ ืืืชื.
int function end(ืงืืืฅ f)
ืืืืืจื true ืื ืืงืืืฅ f ื ืืฆื ื-EOF, ืืืจืช false.
ืฉืืืืช ืคืื ืงืฆืื int (ืงืืืฅ f)
ืืืืืจื true ืื ืืืชืื ื ืฉืืืื ืืงืืืฅ f, ืืืจืช false.
int function clear_error(ืงืืืฅ f)
ืื ืงื ืฉืืืืืช ืืืชืื ืืช ืืงืืืฅ f, ืืืืืืจ ืืื ืืืงืฆืื ืืืฆืืื.
ืคืื ืงืฆืืืช ืืงืืืฅ string_read(string s)
ืืืืืจื ืงืืืฅ ืืืจืืืืื ืฉืชืืื ื ืืื ืืืืจืืืช s.
string function string_string(ืงืืืฅ f)
ืืืืจ ืืช ืืืืจืืืช ืฉื ืืชืื ืงืืื ืืงืืืฅ f, ืฉืืื ืฆืจืื ืืืืืช
ื ืืฆืจ ืขื ืืื string_read() ืื string_write(). ืืืชื ืืืืช ืืงืืฆืื ืืืจืื ืืื ืืจืืข
ืื ืืืืืจ.
ืคืื ืงืฆืืืช ืงืืืฅ ืคืชืืื (ื ืชืื ืืืจืืืช, ืืฆื ืืืจืืืช)
ืคืชื ืืช ืืงืืืฅ ืื ืชืื ืื ืชืื ืขื ืืืจืืืช ืืืฆื ืื ืชืื ื, ala UNIX stdio fopen().
ืืืฆืืื ืืืืชืจืื ืื ืืื ื-stdio: "r", "w", "x", "r+", "w+" ื-"x+".
ืคืื ืงืฆืืืช ืืกืคืจ ืฉืื fputc(ืืกืคืจ ืฉืื c, ืงืืืฅ f)
ืคืื ืืช ืืชื c ืืงืืืฅ ืืคืื f, ืืืืืจ ืืื ืืืงืฆืื ืืืฆืืื.
ืคืื ืงืฆืืืช ืืกืคืจ ืฉืื ungetc(ืืกืคืจ ืฉืื c, ืงืืืฅ f)
ืืืืฃ ืืช ืืชื c ืืืืจื ืืงืืืฅ ืืงืื f, ืืืืืจ ืืื ืืืงืฆืื ืฉื
ืืฆืืื.
ืคืื ืงืฆืืืช ืืกืคืจ ืฉืื setbuf(ืงืืืฅ f, ืืกืคืจ ืฉืื n)
ืืืืจ ืืช ืืืื ืืืืืจ ืืืฉืืื ืืงืืืฅ f ื-n, ืืืืืจ ืืช n.
string function fgets (ืงืืืฅ f)
ืงืื ืฉืืจืช ืงืื ืืงืืืฅ f, ืืืืืจ ืืช ืืืืจืืืช ืฉืืชืงืืื.
file function pipe (ื ืชืื ืืืจืืืช, ืืืจืืืช[*] argv, ืืฆื ืืืจืืืช)
ืืคืขื ืืช ืืชืืื ืืช ืื ืชืื ืื ืชืื, ืืืืจ ืงืืืฅ ืฉืืื ืงืฆื ืืื ืฉื a
"ืฆืื ืืจ" ืืชืืืื ืื ืชืื. ืืจืืืื ื ืืืฆื ืืืื ืืืืืช "r" ืืื ืืงืจืื ืืืฆืื ืืจ ืื
"w" ืืื ืืืชืื ืืฆืื ืืจ. ืืืจืืืื ื argv ืืื ืืขืจื ืฉื ืืืจืืืืช ืฉื ืืชื ืืช ืืช
ืืืขืื ืื ืฉืืืขืืจื ืืชืืื ืืช, ืืืฉืจ argv[0] ืืืจื ืืื ืืื
ืฉื ืืชืืื ืืช.
int function print (ืงืืืฅ f, poly v, string fmt, int base, int width, int prec, string
ืืืื)
ืืืคืก ืขืจื v ืืงืืืฅ f ืืคืืจืื fmt ืขื ืืืกืืก, ืืจืืื, ื-prec ืืืืืืื ืื ืชืื ืื.
ืืฉืืืืฉ ืคื ืืื ืขื ืืื File::fprintf();
int function fscanf(ืงืืืฅ f, ืืืจืืืช fmt, *poly args...)
ืืื ืืช ืืืืงืืืื ืขืืืื ืืฆืืืขืื ืืขืจื args ืืขืจืืื ืฉื ืืงืื ืืงืืืฅ f
ืืคื ืืืจืืืช fmt. ืืคืจืื ืืคืืจืื ืื ืืื ื-UNIX stdio scanf():
ืืคืจืื "%d", "%e", "%f", "%c" ื-"%s" ื ืชืืืื ืขื ืืฆืคืื
ืืฉื ืื.
int function vfscanf (ืงืืืฅ f, ืืืจืืืช fmt, (*poly)[*] args)
ืืืื ืชื ืืงืืืฅ f, ืืคืืจืื fmt ืืืขืจื ืืืจืืืื ืืื args, fscanf()
ืืจืืื.
Thread ืืจืื ืืฉืืืช Thread ืชืืื ืืคืขืืืืช ืฉืื ืืช ืฉืืืืฉืืืช ืืชืื ืืช ืืืชื
ืืฉืืืืืช, ืืืกืคืงืื ืืจืืืช ืฉืืืื ืืืงืืื ืืืจืื ืืืชืืืืช ืืืฉืืชืฃ.
ืืฉ ืืชืืื ืืืช ืฉื ืชืืืืจ ืืืืื ืืงืฉืืจ ืืืืืื.
ืืืื (E)
ืืงืื ืืืืื ืฉืจืืจืืชื ืืืขืจืื ืืืชื ืืฉืจืฉืืจ ืฆืืฆื ืืืฉ.
ืืื ืืื ืืงืื ืืช ืืฉืจืฉืืจ ืืขืจื ืืืืื ืืืืื.
ืฉืืจ ืคืื ืงืฆืืืช ื-Thread ืื ืกืื ืืจืืืืช ืืืื.
int function kill (ืจืฉืืืช ืฉืจืฉืืจืื...)
ืืืจื ืื ืฉืจืฉืืจ ืคืืขื ืืจืฉืืืช ืืืขืจื. ืืื ืืืืืืื, ืืืจื ืืช
ืฉืจืฉืืจ ืคืืขื ืืจืืข. ืืืืืจื ืืช ืืกืคืจ ืืฉืจืฉืืจืื ืฉื ืืจืื.
int function trace (ืจืฉืืืช ืคืืื...)
ืืฆืื ืืช ืืืฆื ืฉื ืื ืฉืจืฉืืจ ืคืืขื ืืจืฉืืืช ืืืขืจื. ืืื ืืืืืืื,
ืขืืงื ืืืจ ืืืฉื ืืจืืจืช ืืืืื. ืืืืืจื ืืช ืืกืคืจ ืืฉืจืฉืืจืื ืฉืืชืืงื ืืืจืืื.
int function cont()
ืืืฉืื ืืืืฆืืข ืฉื ืื ืฉืจืฉืืจ ืฉื ืงืืข, ืืืืืืจ ืืช ืืกืคืจ ืืืืฉื
ืืืืื.
ืคืื ืงืฆืืืช thread current()
ืืืืจ ืืช ืืฉืจืฉืืจ ืื ืืืื.
int function list()
ืืืืื ืขื ืืฉืจืฉืืจ ืืคืืขื ืืขืช ื-stdout.
int function get_priority(thread t)
ืืืืื ืขื ืืขืืืคืืช ืฉื ืืฉืจืฉืืจ ืื ืชืื.
ืคืื ืงืฆืืืช thread id_to_thread(int id)
ืืืืืจ ืืช ืืฉืจืฉืืจ ืขื ืืืืื ืื ืชืื, ืื ื ืืฆื, ื-0 ืืืจืช.
poly function join(thread t)
ืืืชืื ืฉืืฉืจืฉืืจ t ืืกืชืืื, ืืืืืืจ ืืช ืื ืื ืฉืืื ืืืืืจ.
int function set_priority(thread t, int i)
ืื ืกื ืืืืืืจ ืืช ืืขืืืคืืช ืฉื thread t ืืจืื i, ืืืืืืจื ืืช ืืขืืืคืืช ืืืืฉื.
ืกืืจ ืขืืืคืืืืช ืืืื ืืืชืจ ืืืืจ ืืืชืจ ืืื ืจืืฆื: ืืฉืืื ืขื ืขืืืคืืช ืืืืื ืืืชืจ ืชืืื ืชืคืขื
ืืืงืื ืืฉืืื ืืขืืืคืืช ื ืืืื ืืืชืจ. ื ืืฉืืื ืืขืื ืขืืืคืืช ืฉืืื ืืืืชืจ ืืืื ืืจืืฉ
ืจืืืื ืืฉืืืืช.
ืกืืคืืจ
ืืจืื ืืฉืืืช ืฉื ืกืืคืืจ ืืงืคื ืคืขืืืืช ื-ADT ืืืืื ื ืืกืืคืืจ. ื
ืกืืคืืจ ืืฉืืฉ ืืกื ืืจืื ืืืืื. ืื ืคืขืืืช ืืืช() ื-
ืกืืคืืจ ืืขืืจืจ ืืช ืืฉืจืฉืืจ ืืื ืคืืืช ืขืืื ื ืืืืืช() ืขื ืืกืืคืืจ ืืื. ื
``ืกืคืืจื'' ืฉื ืชืืืืื ืืืชื ื ืขืฉืืื ืืืืืช ืืืืืจืช ืืืื ืืฆืืจืช ืืกืืคืืจ.
ืคืื ืงืฆืืืช ืกืืคืืจ new(int c)
ืฆืืจ ืกืืคืืจ ืืืฉ ืขื ืกืคืืจื ืจืืฉืื ืืช ืฉื ืชืืืืื ืืืชื ื. ืื c ืืื
ืืืืื, ืื ืืืืจ ืฉืืจืืืื c ืขืฉืืืื ืืืืืช ืขื ืืกืืคืืจ ืืคื ื ืฉืืื ืืืกื. ืื
c ืืื ืฉืืืื, ืืื ืงืืืข ืกืคืืจื ืฉื ืฉืจืฉืืจืื ืฉืืืืืื ืืืืชืื ืขื ืืกืืคืืจ
ืืคื ื ืืืชื ื ื ืืกืคืช ืื ืชืืกืื.
ืคืื ืงืฆืืืช ืกืืคืืจ new()
ืฉืึดืืึธื ืกืืคืืจ(0) ืืืืืืืจ ืืช ืืชืืฆืื ืฉืื.
ืืืช int (ืกืืืคืืจ s)
ืืืื ืกืืคืืจ s. ืื s ืืื ื ืืืืื, ืืฉืจืฉืืจ ืืืฉืื ืืกืื ื-s,
ืฉืืจืจ ืืช ืืฉืจืฉืืจ ืืคืืืช ืืกืื. ืืืืจ 1 ืขื ืืฆืืื.
int wait (ืกืืืคืืจ s)
ืืงืื ืช ืกืืคืืจ s. ืื s ืฉืืืืืช, ืืกืื ืขื ืืฉืืจืืจ. ืืืืจ 1 ืขื
ืืฆืืื.
ืืืื int (ืกืืืคืืจ s)
ืืืืง ืื wait() ื-semaphore s ืืืจืื ืืืกืืืช ืืฉืจืฉืืจ ืื ืืืื. ืื ืื,
ืืืืจ 0. ืืืจืช, ื ืกื ืืืคืืืช ืืช s, ืืืืืจ 1 ืื ืชืฆืืื.
String ืืจืื ืืฉืืืช ืฉื String ืืืื ืืื ืคืขืืืืช ืืกืืกืืืช ืืืืจืืืช ADT.
ืืืจื ืคืื ืงืฆืืืช int (ืืืจืืืช s)
ืืืืืจื ืืช ืืกืคืจ ืืชืืืื ื-s.
ืคืื ืงืฆืืืช ืืืจืืืช ืืืฉื (int c)
ืืืืืจ ืืืืจืืืช ืืช ืืชื ืืืืื c.
ืคืื ืงืฆืืืช string new(int cv[*])
ืืืืืจื ืืืจืืืช ืืืืจืืืช ืืืชืืืื ืฉื cv.
int function index(ืืืจืืืช t, ืืืจืืืช p)
ืืืืืจื ืืช ืืื ืืงืก ืืืกืคืจืื ืืฉืืืื ืฉื ืืืจืืืช ืืชืื ืืช p ืืืืจืืืช ืืืขื t, ืื -1 if
p ืืื ื ืืืจืืืช ืืฉื ื ืฉื t.
string function substr(string s, int i, int l)
ืืืืืจื ืืช ืืืืจืืืช ืืืฉื ื ืฉื ืืืืจืืืช s ืฉืืชืืืื ืขื ืืชื ืืืืกื i (ืืคืก-
ืืืืกืก) ืืืืฉืื ืืืฉื ืกื ืฉื l ืชืืืื. ืื l ืฉืืืื, ืืืืจืืืช ืืืฉื ื
ืืืจืื ืืชืืืื ืืงืืืืื ืืื ืืืจื i.
PRNG ืืจืื ืืฉืืืช ืฉื PRNG ืืกืคืง ืืฆืืจื ืืื ืืคืืืฆืื ืฉื ืืกืคืจืื ืคืกืืืื-ืืงืจืืืื. ื
ืืืืื ืืืืื ืืื ืืืืื ืฆืืคื ืืจื RC4, ืืืืื ืืืืื. ืึถื
ืืกืคืง ืืจื ืฉื ืืืืื ืคืกืืืื-ืืงืจืืืื ืืืืืืืื ืืืืคื ืกืืืจ
ืขืืืช ืืืคืืชืช. (ืืื ืืืืืจ, ืืืชืืื ืืขื ืืงืจ.)
void function srandom(int s)
ืืชืืื ืืืืืื, ืชืื ืฉืืืืฉ ืืืกืคืจ ืืฉืื (ืืืืคื ืฉืจืืจืืชื-ืืืื) ืืชืืจ ืืจืข.
void function dev_srandom(int nbits)
ืืชืืื ืืืืืื, ืืืืฆืขืืช ืกืืืืืช nbits ืฉื ืื ืืจืืคืื ืืืชืงืืืืช ืืืื ืกืืืจืื
ืืงืืจ ืื ืืจืืคืื. ืืืขืจืืืช UNIX, ืืงืืจ ืื ืืื /dev/urandom. ืืืงืฉ ืขืื
ืื ืืจืืคืื ืจืืฉืื ืืช ืืื ืฉืืฉ ืืืขืจืืช ืขืืืื ืืืืืื ืืืชืืื (ืืื ื-UNIX)
ืื ืืชืืื, ืื ืืฉืชืืฉ ืืืืืจืืช.
int function randbits(int n)
ืืืืืจ n-ืงืฆืช ืืกืคืจ ืคืกืืืื ืืงืจืื, ืืืืื 0..(2**n)-1. ืฉืืืืฉื ืืืืจืื
ืืื RSA.
int function randint(int n)
ืืืืืจื ืืกืคืจ ืคืกืืืื ืืงืจืื ืืืืื 0..n-1.
void function shuffle(*(poly[*]) a)
ืืืฆืข ืขืืจืื ืืืืชื ืืืงืื ืืขืื (cf Knuth) ืฉื ืืขืจื a.
ืคืืงืื
ืืจืื ืืฉืืืช ืฉื ืืคืงืืื ืืฉืืฉ ืืช ืืคืงืืืืช ืืจืื ืืขืืืื ื ืืืชืืืจ ืืืื. ืื
ืื ืฉืืืืฉื ืืื ืคืขื ืืคื ื ืขืฆืื.
string library_path
ืืืื ืืช ื ืชืื ืืืืคืืฉ ืื ืืืื ืฉื ืืกืคืจืืื, ืจืฉืืื ืืืคืจืืช ืื ืงืืืชืืื ืฉื ืกืคืจืืืช ืื
ืืืคืฉ ืงืืฆื ืกืคืจืืื.
int function undefine (ืฉื ืืืจืืืช)
ืืืืฉื ืืช ืืคืงืืื ืืืืชื ืืืืืจ ืืจืื ืืขืืืื ื. ืืกืจ ืืช ืืฉื ืืืกืืื ืืฉื ืืืืจืืืช
ืืืจืื ืืฉืืืช. ืคืขืืื ืื ืืกืืจื ืืช ืื ืืืืืจืืช ืืืืืืืช ืฉื ืืฉื.
int function undefine(string[*] names)
ืืกืจ ืื ืืื ืืืฉืืืช ืืฉืืืช ืืืขืจื ืืืจืื ืืฉืืืช. ืื ืืกืืจ ืืื
ืืืืจืืช ืืืืืืช ืฉื ืื ืฉื.
int function delete (ืฉื ืืืจืืืช)
ื ืกื ืืืกืืจ ืืช ืืคืงืืื ืขื ืฉื ืืืืจืืืช ืื ืชืื ืืืคืงืืื ืืจืื ืืขืืืื ื
ืจืฉืืื, ืืืืืจ 1 ืื ืชืฆืืื.
int function lex_file(ื ืชืื ืืืจืืืช)
ื ืกื ืืืคืื ืืช ืืงืืืฅ ืื ืชืื ืื ืชืื ืืืงืืจ ืื ืืืื ืฉื ืงืื ื ืืงื, ื
ืืืืจ 1 ืื ืชืฆืืื. ืฉืื ืื ืฉืื ืืืขืฉื ``ืืืื'' ืืช ืืงืืืฅ ืขื ืืื
ืืืืคืื ืืืชื ืืขืจืืืช ืงืืฆืื ืืขืืืื.
int function lex_library(ืฉื ืงืืืฅ ืืืจืืืช)
ืืื lex_file(), ืืื ืืืคืฉ ืืกืคืจืืืช ืฉื ืืชื ื ืขื ืืื ื library_path ืืฉืชื ื
ืขืืืจ ืืงืืืฅ ืืจืืฉืื ืขื ืฉื ืืงืืืฅ ืื ืชืื.
int function lex_string(ืงืื ืืืจืืืช)
ื ืืกืืื ืืืคืื ืืช ืงืื ืื ืืงื ืืืืื ืืงืื ืืืืจืืืช ืืืืืช ืืงืื ืืื.
int function edit(string[*] names)
ืืืืฉื ืืช ืคืงืืืช ืืขืจืืื ืืจืื ืืขืืืื ื. ืืฉืืืช ืืืขืจื ืื ื ืชืื ืฉื
ืฉืืืช ืืจืืื ืฉืืืช ืืืืืืืื ืืฉื ืืกืื, ืฉืืื ืืืจืื.
int function new (ืฉื ืืืจืืืช, poly func)
ืคืื ืงืฆืืืช ื-Binds ืคืืขืืช ืืฉื ืืืจืืืช ืืคืงืืื ืืจืื ืืขืืืื ื: ืืืืืจ, ืืืคืืช ืืืชื ืืืืง ืืื ื
ืืืฆืจ ืืืืืื ืืคืืงืื ืืจืื ืืขืืืื ื.
int function new_names(ืฉื ืืืจืืืช, poly func)
ืคืื ืงืฆืืืช ื-Binds ืคืืขืืช ืืฉื ืืืจืืืช ืืคืงืืื ืืจืื ืืขืืืื ื: ืืืืืจ, ืืืคืืช ืืืชื ืืืืง ืืื ื
ืืืฆืจ ืืืืืื ืืคืืงืื ืืจืื ืืขืืืื ื. ืฉืื ืืื new(), ืฉืืืช ืืืืจืืืืช ืฉื ืืชื ื ื-func at
ืืจืื ืืขืืืื ื ืืืขืืจืช ืืื ืืขืจืื ืืืขืจื ืฉื ืฉืืืช ืืืจืืืืช ืื ืืืืืื
ืฉื ืืืจืืืช.
int function pretty_print(ืงืืืฅ f, ืืืจืืืช[*] ืฉืืืช)
ืืืืฉื ืืช ืคืงืืืช ืืืืคืกื ืืจืื ืืขืืืื ื. ืื ืืืช ืืืืจืืืืช ืืฉืืืช ืฉืขืืจื ื ืืืงืช
ืืืขืื ืืืงืื ืืืชืืื ืืืืคืก ืืงืืืฅ f.
ืชืฆืืืช ืคืื ืงืฆืืืช int (ืืืจืืืช fmt, poly val)
ืืฉืชืืฉ ื-printf() ืืื ืืืฆืื ืืช ืืขืจื val ืืคืืจืื fmt.
ืึดืืกืืึนืจึดืึธื
ื ืืงื ืฉืืืจืช ืขื ืืืกืืืจืืืช ืขืจืืื ืืจืื ืืขืืืื ื, ืฉืืืืฉืืช ืืชืืกืคืช ืืฉืืจืช ืืคืงืืื
ืขืจืืื ืืขืช ืืืฉืื. ืืจืื ืืฉืืืช ืฉื ืืืืกืืืจืื ืืืื ืคืื ืงืฆืืืช ืืืืฉื ืืื
ืืืืกืืืจืื.
int function show (string fmt)
ืืืืฉื ืืช ืืคืงืืื ืืจืื ืืขืืืื ื ืืืืกืืืจืื ืืื ืืจืืืื ืืื. ืืฆื ืืช ืืืืจืื
ืขืจืื ืืืกืืืจืื ืขื ืคืืจืื fmt.
int function show (ืืืจืืืช fmt, int count)
ืืืืฉื ืืช ืืคืงืืื ืืจืื ืืขืืืื ื ืืืืกืืืจืื ืขื ืืจืืืื ื ืืื. ืืฆื ืืช ืืกืคืืจื ืืืืจืื ื
ืขืจืื ืืืกืืืจืื ืขื ืคืืจืื fmt.
int function show (ืืืจืืืช fmt, int first, int last)
ืืืืฉื ืืช ืืคืงืืื ืืจืื ืืขืืืื ื ืืืืกืืืจืื ืขื ืฉื ื ืืจืืืื ืืื.
ืืืกืคืช ืคืื ืงืฆืืืช ืคืืื (ืคืืื ืืื)
ืืื ืก val ืืจืฉืืืช ืืืืกืืืจืื ืืืืืจ ืืืชื.
ืึตืกึทื
ืืืขืจืืืช ืืคืขืื ืจืืืช ืืฉ ืืืฉื ืืืฉืื ืฉื ``ืืฉืชื ื ืกืืืื'' ืืกืืืื
ืืจืื ืืฉืืืช ืืืื ืคืื ืงืฆืืืช ืืชืืจื ืืื.
int function check (ืฉื ืืืจืืืช)
ืืืืืจื 1 ืื ืืืฉืชื ื ืขื ืืฉื ืืคืจืื ื ืืฆื ืืกืืืื, ื-0
ืืืจืช.
ืคืื ืงืฆืืืช string get(ืฉื ืืืจืืืช)
ื ืืกืืื ืืช ืืืืืจ ืืืืืืืจ ืืช ืืขืจื ืฉื ืืฉืชื ื ืืกืืืื ืขื ื-
ืฉื ืคืจืื. ืืืจืง ืืจืื invalid_argument ืื ืืืฉืชื ื ืืื ื ืืืื.
int function unset (ืฉื ืืืจืืืช)
ืื ืกื ืืืื ืืช ืืืืืจื ืฉื ืืฉืชื ื ืืกืืืื ืขื ืืฉื ืื ืชืื, ืืืืืืจื an
ืืื ืืืงืฆืื ืืืฆืืื.
ืกื ืคืื ืงืฆืืืช ืืืจืืืช (ืฉื ืืืจืืืช, ืขืจื ืืืจืืืช)
ื ืืกืืื ืืช ืืืืืืจ ืืช ืืฉืชื ื ืืกืืืื ืขื ืืฉื ืื ืชืื ืืขืจื ืื ืชืื,
ืืืืืืจ ืืื ืืืงืฆืื ืืืฆืืื.
ืคืงืืืืช
ืื ืืงื ืืฉ ืงืืืฆื ืฉื ืคืงืืืืช ืฉืขืฉืืืืช ืืืื ืชื ืืจืื ืืขืืืื ื.
ืฆื ืืืฆืืื ื ืืงื.
ืฆื ื-E ืฆื ืื ืืงื ืขื ืงืื ืกืืืืก ืฉืื E.
ืืื ืืช ืืืืจืช ืืฉื {,NAME}
ืืกืจ ืืช ืืฉืืืช ืืืื ืืืืขืจืืช.
ืืขื E ืืขื ืงืืืฅ ืฉื ืืชื ืืฉื ืืืืจืืืช E.
ืกืคืจืื E
ืืขื ืกืคืจืืื ืื ืืชื ืช ืืฉื ืืืืจืืืช E. ืจืื ืืช ืืืืื ื-NICKLEPATH
ืืฉืชื ื ืกืืืื ื-ENVIRONMENT ืืืื, ืืืืืื ืขื
Command::library_path ืืืขืื.
E # E ืืืคืก expr1 ืืืกืืก expr2.
ืืืคืก ืืช NAME
ืืฆื ืืจืกื ืืขืืฆืืช ืฉื ืืืืืืืงื ืืืกืืื ื-NAME. ืืขืจืืช ืืืงืืจืืืช
ืืขืืฆืื ืืืื. ืื NAME ืืื ืืฉืชื ื, ืืืคืก ืืช ืืกืื ืืื ืืช ืืขืจื.
ืขืจืื ืฉื
ืืคืขื ืืช $EDITOR ืขื ืืืืืืืงื ืฉืฉืื, ืืฉืืื ืืืืฉ ืืช ืชืืฆืืืช ืืขืจืืื.
ืื ืืื ืฉืืืืฉื ืขื ืคืื ืงืฆืืืช.
ืืืกืืืจืื
ืืฆื ืืช 10 ืืขืจืืื ืฉืืืืคืกื ืืืืจืื ื. ื ืืชื ืืืฉืช ืืืืื ืืืืฆืขืืช $n ืืืคื n
ืืื ืืืกืคืจ ืืืืฆื ืืืืื ืืขืจื ืืจืฉืืื ืื.
ืืืกืืืจืื E
ืืฆื ืืช ืขืจืื ืืืืกืืืจืื ืืขืืื ืืื ืืืืชืจ ืฉื E.
ืืืกืืืจืื E,E
ืืฆื ืขืจืื ืืืกืืืจืื ืืืืกืคืจ ืืฉืื ืืจืืฉืื E ืขื ืืฉื ื.
ืื ืคื
ืืืฉืจ ืืจืื ืื ืืืืคื ืืืืข ืืจืื ืืขืืืื ื ืืืืื ืืืืฆืืข, ืืืฉืชืืฉ ืืงืื ืืงืฃ
ืื ืืื, ืืืฆืืื ืช ืฉืืฆื ื ืืคืื ืืืืื ืคืขืื. ืืืฆื ืื, ืกืืืืช ืฉืืจืช ืืคืงืืื
ืืื ืื ืฉืื ืืืขืื ืืืจืื ืฉืื ืืืคืื. ืื ืืกืฃ ืืกืคืจ ืืืชืืจ ืืืืื
ืคืงืืืืช ืืืื ืืช ืืืฉืชืืฉ:
trace ืงืื ืืืกื ืืช ืืืืจื ืืืจืื ืืช ืืืฆื ืื ืืืื, ืืื ืืคืงืืื GDB where.
ืืืขืื ืขืืจื ืืืขืื ืืขืจืืื (ืืืืืจ, ืืืืืื ืืืืืื ืืจืื ืืขืืืื ื) ืืื GDB.
ืืืื ืื ืืืื ืืขืจืืื (ืืืืืจ, ืืืืืื ืืืงืฉืจ ืื ืืืื) ืืื GDB.
ืืืฆืข ืขืืื ืืช ืืฆื ื ืืคืื ืืืืืื, ื ืืืฉืช ืืืืฆืืข.
ืื ืืกืฃ, ืืจืื ืืฉืืืช ืฉื Debug ื ืืฆื ืืืฆื ืืืชืืจ ืืืืื. ืื ืืขืืงืจ
ืฉืืืืฉ ืืืืชืืจ ืืืืื ืฉื Nickle ืขืฆืื.
ืืืกืืฃ()
ืืคืขื ืืช ืืืกืฃ ืืืฉืคื.
dump(ืคืื ืงืฆืื)
ืืืคืก ืืช ืงืื ืืืชืื ืืืืืืจ ืขืืืจ ืืคืื ืงืฆืื.
ืืกืืืื
EDITOR ืืขืืจื ืืืฉืืฉ ืืช ืคืงืืืช ืืขืจืืื, ืืืชืืืจืช ืืคืงืืืืช ืืืขืื.
NICKLERC
ืืืืงืื ืฉื ืงืืืฅ ื-.nicklerc ืฉื ืืืฉืชืืฉ, ืฉืืืืขื ืืชืืืืช
ืืืฆืืข ื ืืงื ืื ืืคืฉืจ.
HOME ืืฉืืฉ ืืืฆืืืช ื-.nicklerc ืฉื ืืืฉืชืืฉ ืื NICKLERC ืืื ื ืืืืืจ.
NICKLEPATH
ื ืชืื ืืืคืจื ืื ืงืืืชืืื ืฉืืจืืืืื ืฉืื ืื ืกืคืจืืืช ืืืืืืืช ืงืื ื ืืงื. ื
ืคืงืืืช ืืกืคืจืืื ืืืืื -l, ืืืชืืืจ ืืขืื, ืืคืฉื ืื ืชืื ืื ืฉื ืงืืืฅ
ืชืืื ืืงืืืฅ ืื ืชืื. ื ืชืื ืกืคืจืืืช ืืจืืจืช ืืืืื ืืืืขืืจ ืืฉืชื ื ืื
ืืื /usr/share/nickle.
NICKLESTART
ืฉื ืืงืืืฅ ืฉื ืืงืืืฅ ืฉืืืืจ ืืืืืขื ื-bootstrap ืืืคืขืื ืฉื Nickle.
ืืจืืจืช ืืืืื ืืืืขืืจ ืืฉืชื ื ืื ืืื ืืืขืื
/usr/share/nickle/builtin.5c.
ืืืืืืืช
ืืืืื (ืืงืืื ืื- bc ืืืจืื ื:
ืืขืจืื ืคืื ืงืฆืื ืืืืชืืช (ืืืฉ x) {
ืืืืชื a = 1;
int b = 1;
s ืืืืชื = 1;
int i = 1;
ืืขืื (1) {
a = a * x;
b = b * i;
ืืืืชื c = a / b;
if (abs(c) < 1e-6)
Return s;
s = s + c;
i ++;
}
}
ืืืืืจ ืคืื ืงืฆืื ืืืืฉืื ืขืจื ืืฉืืขืจ ืฉื ืืคืื ืงืฆืื ืืืขืจืืืืช e ** x ื
ืขืืืจ (i = 1; i < 10; i++)
printf ("%g\n", ืืขืจืื (i));
ืืืคืืก ืขืจืืื ืืฉืืขืจืื ืฉื ืืคืื ืงืฆืื ืืืขืจืืืืช ืฉื ืขืฉืจืช ืืืกืคืจืื ืืฉืืืื ืืจืืฉืื ืื.
ืึดืจึฐืกึธื
ืืกืื ืื ืืชืืจ ืืช ืืจืกื 1.99.2 ืฉื nickle, ืืื ืื ืืื ืชืืื ืืช ืืืฉืืช ืืืชืจ. ืื ืืื
ืืืคืฅ ืขื ืืจืกื 2.77 ืฉื nickle.
ืืฉืชืืฉ ื-nickle ืืืื ืืจื ื ืืืืฆืขืืช ืฉืืจืืชื onworks.net