INTERCAL 0.13 release.
[intercal:intercal.git] / src / numerals.c
1 /*
2  * numeral.c -- internationalization support for INTERCAL input.
3  *
4  * After release 0.5, I wrote:
5  *
6  * 2. (ESR) Input format internationalization -- allow WRITE IN input digits in
7  *   major languages such as Nahuatl, Tagalog, Sanskrit, and Basque.
8  *
9  * The twisted loons in the alt.folklore.computers crowd loved this
10  * idea, and I actually got sent digit lists for Nahuatl, Tagalog,
11  * Sanskrit, and Basque -- also, Kwakiutl, Georgian, Ojibwe. Albanian,
12  * and Volap\"uk.  I've left out Albanian (didn't want to keep track
13  * of the dipthong diacritical) and Ojibwe (no zero digit).  So:
14  * Nahuatl, Tagalog, Sanskrit, Basque, Georgian, Kwakiutl, and
15  * Volap\"uk are now supported in addition to English. */
16
17 typedef struct
18 {
19     char *name;
20     int value;
21 }
22 numeral;
23
24 static numeral numerals[] =
25 {
26 /* English */
27     { "OH",             0 },
28     { "ZERO",           0 },
29     { "ONE",            1 },
30     { "TWO",            2 },
31     { "THREE",          3 },
32     { "FOUR",           4 },
33     { "FIVE",           5 },
34     { "SIX",            6 },
35     { "SEVEN",          7 },
36     { "EIGHT",          8 },
37     { "NINE",           9 },
38     { "NINER",          9 },    /* For all you junior birdmen */
39 /* Sanskrit */
40     { "SUTYA",          0 },    /* Retroflex s, pronounced halfway to sh */
41     { "SHUTYA",         0 },
42     { "EKA",            1 },
43     { "DVI",            2 },
44     { "TRI",            3 },
45     { "CHATUR",         4 },
46     { "PANCHAN",        5 },
47     { "SHASH",          6 },
48     { "SAPTAM",         7 },
49     { "ASHTAN",         8 },
50     { "NAVAN",          9 },
51 /* Basque */
52     { "ZEROA",          0 },
53     { "BAT",            1 },
54     { "BI",             2 },
55     { "HIRO",           3 },
56     { "LAU",            4 },
57     { "BORTZ",          5 },
58     { "SEI",            6 },
59     { "ZAZPI",          7 },
60     { "ZORTZI",         8 },
61     { "BEDERATZI",      9 },
62 /* Tagalog */
63     { "WALA",           0 },
64     { "ISA",            1 },
65     { "DALAWA",         2 },
66     { "TATLO",          3 },
67     { "APAT",           4 },
68     { "LIMA",           5 },
69     { "ANIM",           6 },
70     { "PITO",           7 },
71     { "WALO",           8 },
72     { "SIYAM",          9 },
73 /* Classical Nahuatl */
74     { "AHTLE",          0 },    /* Actually `nothing'; no separate zero word is known */
75     { "CE",             1 },
76     { "OME",            2 },
77     { "IEI",            3 },
78     { "NAUI",           4 },
79     { "NACUILI",        5 },
80     { "CHIQUACE",       6 },
81     { "CHICOME",        7 },
82     { "CHICUE",         8 },
83     { "CHICUNAUI",      9 },
84 /* Georgian */
85     { "NULI",           0 },
86     { "ERTI",           1 },
87     { "ORI",            2 },
88     { "SAMI",           3 },
89     { "OTXI",           4 },
90     { "XUTI",           5 },
91     { "EKSVI",          6 },
92     { "SHVIDI",         7 },
93     { "RVA",            8 },
94     { "CXRA",           9 },
95 /* Kwakiutl (technically, Kwak'wala) */
96     { "KE'YOS",         0 },    /* Actually `nothing'; no separate zero word is known */
97     { "'NEM",           1 },
98     { "MAL'H",          2 },
99     { "YUDEXW",         3 },
100     { "MU",             4 },
101     { "SEK'A",          5 },
102     { "Q'ETL'A",        6 },
103     { "ETLEBU",         7 },
104     { "MALHGWENALH",    8 },
105     { "'NA'NE'MA",      9 },
106 /* Volap\"uk */
107     { "NOS",            0 },
108     { "BAL",            1 },
109     { "TEL",            2 },
110     { "KIL",            3 },
111     { "FOL",            4 },
112     { "LUL",            5 },
113     { "M\\\"AL",        6 },
114     { "VEL",            7 },
115     { "J\\\"OL",        8 },
116     { "Z\\\"UL",        9 },
117 };
118
119 /* numeral.c ends here */