comparison ibin/brachylog/Brachylog-master/src/symbols.pl @ 11865:318de151d0ec draft

<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
author HackEso <hackeso@esolangs.org>
date Tue, 16 Jul 2019 21:37:27 +0000
parents
children
comparison
equal deleted inserted replaced
11864:d054de7f80f2 11865:318de151d0ec
1 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2 ____ ____
3 \ \ / /
4 \ \ ____ / /
5 \ \/ \/ /
6 \ /\ / BRACHYLOG
7 \ / \ / A terse declarative logic programming language
8 / \ / \
9 / \/ \ Written by Julien Cumin - 2017
10 / /\____/\ \ https://github.com/JCumin/Brachylog
11 / / ___ \ \
12 /___/ /__/ \___\
13
14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
15
16
17 :- module(symbols, [token_predicate/2,
18 token_variable/2,
19 token_metapredicate/2
20 ]).
21
22
23 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
24 TOKEN_PREDICATE
25 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
26 token_predicate('≤', 'brachylog_lessequal').
27 token_predicate('≥', 'brachylog_greaterequal').
28 token_predicate('∈', 'brachylog_contains').
29 token_predicate('∋', 'brachylog_in').
30 token_predicate('⊆', 'brachylog_superset').
31 token_predicate('⊇', 'brachylog_subset').
32 token_predicate('↔', 'brachylog_reverse').
33 token_predicate('↰', 'brachylog_call_predicate').
34 token_predicate('↺', 'brachylog_circular_permute_counterclockwise').
35 token_predicate('↻', 'brachylog_circular_permute_clockwise').
36 token_predicate('√', 'brachylog_root').
37 token_predicate('⌉', 'brachylog_ceil').
38 token_predicate('⌋', 'brachylog_floor').
39 token_predicate('⟦', 'brachylog_range_ascending').
40 token_predicate('⟧', 'brachylog_range_descending').
41 token_predicate('ℕ', 'brachylog_natural_integer').
42 token_predicate('ℤ', 'brachylog_integer').
43 token_predicate('ℝ', 'brachylog_float').
44 token_predicate('≠', 'brachylog_different').
45 token_predicate('≡', 'brachylog_identity').
46 token_predicate('÷', 'brachylog_integer_division').
47 token_predicate('×', 'brachylog_multiply').
48 token_predicate('%', 'brachylog_modulo').
49 token_predicate('*', 'brachylog_exp').
50 token_predicate('+', 'brachylog_plus').
51 token_predicate('-', 'brachylog_minus').
52 token_predicate('/', 'brachylog_divide').
53 token_predicate('<', 'brachylog_less').
54 token_predicate('=', 'brachylog_equal').
55 token_predicate('>', 'brachylog_greater').
56 token_predicate('\\', 'brachylog_transpose').
57 token_predicate('^', 'brachylog_power').
58 token_predicate('≜', 'brachylog_label').
59
60 token_predicate('a', 'brachylog_adfix').
61 token_predicate('b', 'brachylog_behead').
62 token_predicate('c', 'brachylog_concatenate').
63 token_predicate('d', 'brachylog_duplicates').
64 token_predicate('e', '').
65 token_predicate('f', 'brachylog_factors').
66 token_predicate('g', 'brachylog_group').
67 token_predicate('h', 'brachylog_head').
68 token_predicate('i', 'brachylog_index').
69 token_predicate('j', 'brachylog_juxtapose').
70 token_predicate('k', 'brachylog_knife').
71 token_predicate('l', 'brachylog_length').
72 token_predicate('m', '').
73 token_predicate('n', '').
74 token_predicate('o', 'brachylog_order').
75 token_predicate('p', 'brachylog_permute').
76 token_predicate('q', '').
77 token_predicate('r', '').
78 token_predicate('s', 'brachylog_substring').
79 token_predicate('t', 'brachylog_tail').
80 token_predicate('u', '').
81 token_predicate('v', '').
82 token_predicate('w', 'brachylog_write').
83 token_predicate('x', 'brachylog_xterminate').
84 token_predicate('y', '').
85 token_predicate('z', 'brachylog_zip').
86
87 token_predicate('ạ', 'brachylog_to_codes').
88 token_predicate('ḅ', 'brachylog_blocks').
89 token_predicate('ḍ', 'brachylog_dichotomize').
90 token_predicate('ẹ', 'brachylog_elements').
91 token_predicate('ḥ', '').
92 token_predicate('ị', 'brachylog_to_number').
93 token_predicate('ḳ', '').
94 token_predicate('ḷ', 'brachylog_lowercase').
95 token_predicate('ṃ', '').
96 token_predicate('ṇ', 'brachylog_split_lines').
97 token_predicate('ọ', 'brachylog_occurences').
98 token_predicate('ṛ', 'brachylog_random_element').
99 token_predicate('ṣ', 'brachylog_shuffle').
100 token_predicate('ṭ', '').
101 token_predicate('ụ', 'brachylog_uppercase').
102 token_predicate('ṿ', '').
103 token_predicate('ẉ', 'brachylog_writeln').
104 token_predicate('ỵ', '').
105 token_predicate('ẓ', '').
106
107 token_predicate('ȧ', 'brachylog_absolute_value').
108 token_predicate('ḃ', 'brachylog_base').
109 token_predicate('ċ', 'brachylog_coerce').
110 token_predicate('ḋ', 'brachylog_prime_decomposition').
111 token_predicate('ė', '').
112 token_predicate('ḟ', 'brachylog_factorial').
113 token_predicate('ġ', 'brachylog_groups').
114 token_predicate('ḣ', '').
115 token_predicate('ṁ', 'brachylog_matrix').
116 token_predicate('ṅ', 'brachylog_negate').
117 token_predicate('ȯ', '').
118 token_predicate('ṗ', 'brachylog_prime').
119 token_predicate('ṙ', 'brachylog_random_number').
120 token_predicate('ṡ', 'brachylog_sign').
121 token_predicate('ṫ', 'brachylog_to_string').
122 token_predicate('ẇ', '').
123 token_predicate('ẋ', 'brachylog_cartesian_product').
124 token_predicate('ẏ', '').
125 token_predicate('ż', '').
126
127
128 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
129 TOKEN_VARIABLE
130 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
131 token_variable('Ạ', '\'string\':[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z]').
132 token_variable('Ḅ', '\'string\':[b,c,d,f,g,h,j,k,l,m,n,p,q,r,s,t,v,w,x,y,z]').
133 %token_variable('', '').
134 token_variable('Ḍ', '\'string\':[b,c,d,f,g,h,j,k,l,m,n,p,q,r,s,t,v,w,x,z]').
135 token_variable('Ẹ', '\'string\':[]').
136 %token_variable('', '').
137 %token_variable('', '').
138 token_variable('Ḥ', '\'string\':[\'H\',e,l,l,o,\',\',\' \',\'W\',o,r,l,d,\'!\']').
139 token_variable('Ị', '\'string\':[\'0\',\'1\',\'2\',\'3\',\'4\',\'5\',\'6\',\'7\',\'8\',\'9\']').
140 %token_variable('', '').
141 token_variable('Ḳ', '').
142 token_variable('Ḷ', '\'string\':[\'\n\']').
143 token_variable('Ṃ', '').
144 token_variable('Ṇ', '\'string\':[\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,0,1,2,3,4,5,6,7,8,9]').
145 token_variable('Ọ', '').
146 %token_variable('', '').
147 %token_variable('', '').
148 token_variable('Ṛ', '').
149 token_variable('Ṣ', '\'string\':[\' \']').
150 token_variable('Ṭ', '\'string\':[\' \',\'!\',\'"\',\'#\',\'$\',\'%\',\'&\',\'\\\'\',\'(\',\')\',\'*\',\'+\',\',\',\'-\',\'.\',\'/\',\'0\',\'1\',\'2\',\'3\',\'4\',\'5\',\'6\',\'7\',\'8\',\'9\',\':\',\';\',\'<\',\'=\',\'>\',\'?\',\'@\',\'A\',\'B\',\'C\',\'D\',\'E\',\'F\',\'G\',\'H\',\'I\',\'J\',\'K\',\'L\',\'M\',\'N\',\'O\',\'P\',\'Q\',\'R\',\'S\',\'T\',\'U\',\'V\',\'W\',\'X\',\'Y\',\'Z\',\'[\',\'\\\\\',\']\',\'^\',\'_\',\'`\',\'a\',\'b\',\'c\',\'d\',\'e\',\'f\',\'g\',\'h\',\'i\',\'j\',\'k\',\'l\',\'m\',\'n\',\'o\',\'p\',\'q\',\'r\',\'s\',\'t\',\'u\',\'v\',\'w\',\'x\',\'y\',\'z\',\'{\',\'|\',\'}\',\'~\']').
151 token_variable('Ụ', '').
152 token_variable('Ṿ', '\'string\':[a,e,i,o,u]').
153 token_variable('Ẉ', '\'string\':[a,e,i,o,u,y]').
154 %token_variable('', '').
155 token_variable('Ỵ', '').
156 token_variable('Ẓ', '\'string\':[z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a]').
157
158 token_variable('Ȧ', 'ConstraintA').
159 token_variable('Ḃ', 'ConstraintB').
160 token_variable('Ċ', 'ConstraintC').
161 token_variable('Ḋ', 'ConstraintD').
162 token_variable('Ė', 'ConstraintE').
163 token_variable('Ḟ', 'ConstraintF').
164 token_variable('Ġ', 'ConstraintG').
165 token_variable('Ḣ', 'ConstraintH').
166 token_variable('İ', 'ConstraintI').
167 %token_variable('', 'ConstraintJ').
168 %token_variable('', 'ConstraintK').
169 %token_variable('', 'ConstraintL').
170 token_variable('Ṁ', 'ConstraintM').
171 token_variable('Ṅ', 'ConstraintN').
172 token_variable('Ȯ', 'ConstraintO').
173 token_variable('Ṗ', 'ConstraintP').
174 %token_variable('', 'ConstraintQ').
175 token_variable('Ṙ', 'ConstraintR').
176 token_variable('Ṡ', 'ConstraintS').
177 token_variable('Ṫ', 'ConstraintT').
178 %token_variable('', 'ConstraintU').
179 %token_variable('', 'ConstraintV').
180 token_variable('Ẇ', 'ConstraintW').
181 token_variable('Ẋ', 'ConstraintX').
182 token_variable('Ẏ', 'ConstraintY').
183 token_variable('Ż', 'ConstraintZ').
184
185 token_variable('π', '\'float\':3.14159265359').
186 token_variable('φ', '\'float\':1.61803398875').
187
188 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
189 TOKEN_METAPREDICATE
190 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
191 token_metapredicate('ᵃ', 'brachylog_meta_accumulate').
192 token_metapredicate('ᵇ', 'brachylog_meta_bagof').
193 token_metapredicate('ᶜ', 'brachylog_meta_count').
194 token_metapredicate('ᵈ', 'brachylog_meta_declare').
195 token_metapredicate('ᵉ', 'brachylog_meta_existence').
196 token_metapredicate('ᶠ', 'brachylog_meta_find').
197 token_metapredicate('ᵍ', 'brachylog_meta_groupby').
198 token_metapredicate('ʰ', 'brachylog_meta_head').
199 token_metapredicate('ⁱ', 'brachylog_meta_iterate').
200 token_metapredicate('ʲ', '').
201 token_metapredicate('ᵏ', '').
202 token_metapredicate('ˡ', 'brachylog_meta_leftfold').
203 token_metapredicate('ᵐ', 'brachylog_meta_map').
204 token_metapredicate('ⁿ', 'brachylog_meta_nonexistence').
205 token_metapredicate('ᵒ', 'brachylog_meta_orderby').
206 token_metapredicate('ᵖ', '').
207 token_metapredicate('ʳ', 'brachylog_meta_rightfold').
208 token_metapredicate('ˢ', 'brachylog_meta_select').
209 token_metapredicate('ᵗ', 'brachylog_meta_tail').
210 token_metapredicate('ᵘ', 'brachylog_meta_unique').
211 token_metapredicate('ᵛ', 'brachylog_meta_verify').
212 token_metapredicate('ʷ', '').
213 token_metapredicate('ˣ', '').
214 token_metapredicate('ʸ', '').
215 token_metapredicate('ᶻ', 'brachylog_meta_zip').