forked from zeotrope/anicca
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathverb.h
48 lines (44 loc) · 796 Bytes
/
verb.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#ifndef _VERB_H
#define _VERB_H
#define MONAD_PROLOG \
I yn = AN(y), *v, *yv = IAV(y); A z
#define DYAD_PROLOG \
I xn = AN(x), xr = AR(x), yn = AN(y), yr = AR(y), vn; \
I *v, *xv = IAV(x), *yv = IAV(y); \
A m, z
MONAD(fact);
DYAD(outof);
MONAD(tally);
DYAD(copy);
MONAD(reciprocal);
DYAD(divide);
MONAD(signum);
DYAD(times);
MONAD(square);
MONAD(conjugate);
DYAD(plus);
MONAD(duble);
DYAD(append);
MONAD(negate);
DYAD(minus);
MONAD(not);
MONAD(box);
DYAD(lthan);
MONAD(decrement);
DYAD(equal);
MONAD(unbox);
DYAD(gthan);
MONAD(increment);
MONAD(expntl);
DYAD(power);
MONAD(same);
DYAD(left);
DYAD(right);
DYAD(power);
MONAD(iota);
MONAD(imaginary);
DYAD(complex);
DYAD(residue);
MONAD(execute);
MONAD(tail);
#endif