plugin-tables.c
1 //! @file plugin-tables.c
2 //! @author J. Marcel van der Veer
3
4 //! @section Copyright
5 //!
6 //! This file is part of Algol68G - an Algol 68 compiler-interpreter.
7 //! Copyright 2001-2024 J. Marcel van der Veer [algol68g@xs4all.nl].
8
9 //! @section License
10 //!
11 //! This program is free software; you can redistribute it and/or modify it
12 //! under the terms of the GNU General Public License as published by the
13 //! Free Software Foundation; either version 3 of the License, or
14 //! (at your option) any later version.
15 //!
16 //! This program is distributed in the hope that it will be useful, but
17 //! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
18 //! or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
19 //! more details. You should have received a copy of the GNU General Public
20 //! License along with this program. If not, see [http://www.gnu.org/licenses/].
21
22 //! @section Synopsis
23 //!
24 //! Plugin compiler tables.
25
26 #include "a68g.h"
27 #include "a68g-prelude.h"
28 #include "a68g-prelude-gsl.h"
29 #include "a68g-genie.h"
30 #include "a68g-mp.h"
31 #include "a68g-optimiser.h"
32 #include "a68g-plugin.h"
33 #include "a68g-transput.h"
34
35 TRANSLATION *monadics, *dyadics, *functions;
36
37 TRANSLATION monadics_nocheck[] = {
38 {genie_minus_int, "-"},
39 {genie_minus_real, "-"},
40 {genie_abs_int, "labs"},
41 {genie_abs_real, "fabs"},
42 {genie_sign_int, "SIGN"},
43 {genie_sign_real, "SIGN"},
44 {genie_entier_real, "a68_entier"},
45 {genie_round_real, "a68_round"},
46 {genie_not_bool, "!"},
47 {genie_abs_bool, "(int) "},
48 {genie_abs_bits, "(INT_T) "},
49 {genie_bin_int, "(UNSIGNED_T) "},
50 {genie_not_bits, "~"},
51 {genie_abs_char, "TO_UCHAR"},
52 {genie_repr_char, ""},
53 {genie_re_complex, "a68_re_complex"},
54 {genie_im_complex, "a68_im_complex"},
55 {genie_minus_complex, "a68_min_realus_complex"},
56 {genie_abs_complex, "a68_abs_real_complex"},
57 {genie_arg_complex, "a68_arg_complex"},
58 {genie_conj_complex, "a68_conj_complex"},
59 {genie_idle, ""},
60 {NO_GPROC, NO_TEXT}
61 };
62
63 TRANSLATION monadics_check[] = {
64 {genie_minus_int, "-"},
65 {genie_minus_real, "-"},
66 {genie_abs_int, "labs"},
67 {genie_abs_real, "fabs"},
68 {genie_sign_int, "SIGN"},
69 {genie_sign_real, "SIGN"},
70 {genie_not_bool, "!"},
71 {genie_abs_bool, "(int) "},
72 {genie_abs_bits, "(INT_T) "},
73 {genie_bin_int, "(UNSIGNED_T) "},
74 {genie_not_bits, "~"},
75 {genie_abs_char, "TO_UCHAR"},
76 {genie_repr_char, ""},
77 {genie_re_complex, "a68_re_complex"},
78 {genie_im_complex, "a68_im_complex"},
79 {genie_minus_complex, "a68_min_realus_complex"},
80 {genie_abs_complex, "a68_abs_real_complex"},
81 {genie_arg_complex, "a68_arg_complex"},
82 {genie_conj_complex, "a68_conj_complex"},
83 {genie_idle, ""},
84 {NO_GPROC, NO_TEXT}
85 };
86
87 TRANSLATION dyadics_nocheck[] = {
88 {genie_add_int, "+"},
89 {genie_sub_int, "-"},
90 {genie_mul_int, "*"},
91 {genie_over_int, "/"},
92 {genie_mod_int, "a68_mod_int"},
93 {genie_div_int, "a68_div_int"},
94 {genie_eq_int, "=="},
95 {genie_ne_int, "!="},
96 {genie_lt_int, "<"},
97 {genie_gt_int, ">"},
98 {genie_le_int, "<="},
99 {genie_ge_int, ">="},
100 {genie_plusab_int, "a68_plusab_int"},
101 {genie_minusab_int, "a68_min_realusab_int"},
102 {genie_timesab_int, "a68_timesab_int"},
103 {genie_overab_int, "a68_overab_int"},
104 {genie_add_real, "+"},
105 {genie_sub_real, "-"},
106 {genie_mul_real, "*"},
107 {genie_div_real, "/"},
108 {genie_pow_real, "a68_x_up_y"},
109 {genie_pow_real_int, "a68_x_up_n_real"},
110 {genie_eq_real, "=="},
111 {genie_ne_real, "!="},
112 {genie_lt_real, "<"},
113 {genie_gt_real, ">"},
114 {genie_le_real, "<="},
115 {genie_ge_real, ">="},
116 {genie_plusab_real, "a68_plusab_real"},
117 {genie_minusab_real, "a68_min_realusab_real"},
118 {genie_timesab_real, "a68_timesab_real"},
119 {genie_divab_real, "a68_divab_real"},
120 {genie_eq_char, "=="},
121 {genie_ne_char, "!="},
122 {genie_lt_char, "<"},
123 {genie_gt_char, ">"},
124 {genie_le_char, "<="},
125 {genie_ge_char, ">="},
126 {genie_eq_bool, "=="},
127 {genie_ne_bool, "!="},
128 {genie_and_bool, "&&"},
129 {genie_or_bool, "||"},
130 {genie_and_bits, "&"},
131 {genie_or_bits, "|"},
132 {genie_eq_bits, "=="},
133 {genie_ne_bits, "!="},
134 {genie_shl_bits, "<<"},
135 {genie_shr_bits, ">>"},
136 {genie_i_complex, "a68_i_complex"},
137 {genie_i_int_complex, "a68_i_complex"},
138 {genie_abs_complex, "a68_abs_real_complex"},
139 {genie_arg_complex, "a68_arg_complex"},
140 {genie_add_complex, "a68_add_complex"},
141 {genie_sub_complex, "a68_sub_complex"},
142 {genie_mul_complex, "a68_mul_complex"},
143 {genie_div_complex, "a68_div_complex"},
144 {genie_eq_complex, "a68_eq_complex"},
145 {genie_ne_complex, "a68_ne_complex"},
146 {NO_GPROC, NO_TEXT}
147 };
148
149 TRANSLATION dyadics_check[] = {
150 {genie_add_int, "a68_add_int"},
151 {genie_sub_int, "a68_sub_int"},
152 {genie_mul_int, "a68_mul_int"},
153 {genie_over_int, "a68_over_int"},
154 {genie_mod_int, "a68_mod_int"},
155 {genie_div_int, "a68_div_int"},
156 {genie_add_real, "+"},
157 {genie_sub_real, "-"},
158 {genie_mul_real, "*"},
159 {genie_div_real, "/"},
160 {genie_pow_real, "a68_x_up_y"},
161 {genie_pow_real_int, "a68_x_up_n_real"},
162 {genie_eq_int, "=="},
163 {genie_ne_int, "!="},
164 {genie_lt_int, "<"},
165 {genie_gt_int, ">"},
166 {genie_le_int, "<="},
167 {genie_ge_int, ">="},
168 {genie_eq_real, "=="},
169 {genie_ne_real, "!="},
170 {genie_lt_real, "<"},
171 {genie_gt_real, ">"},
172 {genie_le_real, "<="},
173 {genie_ge_real, ">="},
174 {genie_eq_char, "=="},
175 {genie_ne_char, "!="},
176 {genie_lt_char, "<"},
177 {genie_gt_char, ">"},
178 {genie_le_char, "<="},
179 {genie_ge_char, ">="},
180 {genie_eq_bool, "=="},
181 {genie_ne_bool, "!="},
182 {genie_and_bool, "&&"},
183 {genie_or_bool, "||"},
184 {genie_and_bits, "&"},
185 {genie_or_bits, "|"},
186 {genie_eq_bits, "=="},
187 {genie_ne_bits, "!="},
188 {genie_i_complex, "a68_i_complex"},
189 {genie_i_int_complex, "a68_i_complex"},
190 {genie_abs_complex, "a68_abs_real_complex"},
191 {genie_arg_complex, "a68_arg_complex"},
192 {genie_add_complex, "a68_add_complex"},
193 {genie_sub_complex, "a68_sub_complex"},
194 {genie_mul_complex, "a68_mul_complex"},
195 {genie_div_complex, "a68_div_complex"},
196 {genie_eq_complex, "a68_eq_complex"},
197 {genie_ne_complex, "a68_ne_complex"},
198 {NO_GPROC, NO_TEXT}
199 };
200
201 TRANSLATION functions_nocheck[] = {
202 {genie_sqrt_real, "sqrt"},
203 {genie_curt_real, "cbrt"},
204 {genie_exp_real, "a68_exp_real"},
205 {genie_ln_real, "log"},
206 {genie_log_real, "log10"},
207 {genie_sin_real, "sin"},
208 {genie_cos_real, "cos"},
209 {genie_tan_real, "tan"},
210 {genie_asin_real, "asin"},
211 {genie_acos_real, "acos"},
212 {genie_atan_real, "atan"},
213 {genie_sinh_real, "sinh"},
214 {genie_cosh_real, "cosh"},
215 {genie_tanh_real, "tanh"},
216 {genie_erfc_real, "erfc"},
217 {genie_erf_real, "erf"},
218 {genie_gamma_real, "tgamma"},
219 {genie_ln_gamma_real, "lgamma"},
220 {genie_sindg_real, "a68_sindg_real"},
221 {genie_cosdg_real, "a68_cosdg_real"},
222 {genie_tandg_real, "a68_tandg_real"},
223 {genie_asindg_real, "a68_asindg_real"},
224 {genie_acosdg_real, "a68_acosdg_real"},
225 {genie_atandg_real, "a68_atandg_real"},
226 {genie_sqrt_complex, "a68_sqrt_complex"},
227 {genie_exp_complex, "a68_exp_real_complex"},
228 {genie_ln_complex, "a68_ln_complex"},
229 {genie_sin_complex, "a68_sin_complex"},
230 {genie_cos_complex, "a68_cos_complex"},
231 {genie_tan_complex, "a68_tan_complex"},
232 {genie_asin_complex, "a68_asin_complex"},
233 {genie_acos_complex, "a68_acos_complex"},
234 {genie_atan_complex, "a68_atan_complex"},
235 {genie_sinh_complex, "a68_sinh_complex"},
236 {genie_cosh_complex, "a68_cosh_complex"},
237 {genie_tanh_complex, "a68_tanh_complex"},
238 {genie_asinh_complex, "a68_asinh_real_complex"},
239 {genie_acosh_complex, "a68_acosh_real_complex"},
240 {genie_atanh_complex, "a68_atanh_real_complex"},
241 {genie_asinh_real, "a68_asinh_real"},
242 {genie_acosh_real, "a68_acosh_real"},
243 {genie_atanh_real, "a68_atanh_real"},
244 {genie_inverfc_real, "a68_inverfc_real"},
245 {genie_inverf_real, "a68_inverf_real"},
246 {NO_GPROC, NO_TEXT}
247 };
248
249 TRANSLATION functions_check[] = {
250 {genie_sqrt_real, "sqrt"},
251 {genie_curt_real, "cbrt"},
252 {genie_exp_real, "a68_exp_real"},
253 {genie_ln_real, "log"},
254 {genie_log_real, "log10"},
255 {genie_sin_real, "sin"},
256 {genie_cos_real, "cos"},
257 {genie_tan_real, "tan"},
258 {genie_asin_real, "asin"},
259 {genie_acos_real, "acos"},
260 {genie_atan_real, "atan"},
261 {genie_sinh_real, "sinh"},
262 {genie_cosh_real, "cosh"},
263 {genie_tanh_real, "tanh"},
264 {genie_erfc_real, "erfc"},
265 {genie_erf_real, "erf"},
266 {genie_gamma_real, "tgamma"},
267 {genie_ln_gamma_real, "lgamma"},
268 {genie_sindg_real, "a68_sindg_real"},
269 {genie_cosdg_real, "a68_cosdg_real"},
270 {genie_tandg_real, "a68_tandg_real"},
271 {genie_asindg_real, "a68_asindg_real"},
272 {genie_acosdg_real, "a68_acosdg_real"},
273 {genie_atandg_real, "a68_atandg_real"},
274 {genie_asinh_real, "a68_asinh_real"},
275 {genie_acosh_real, "a68_acosh_real"},
276 {genie_atanh_real, "a68_atanh_real"},
277 {genie_inverfc_real, "a68_inverfc_real"},
278 {genie_inverf_real, "a68_inverf_real"},
279 {NO_GPROC, NO_TEXT}
280 };
281
282 TRANSLATION constants[] = {
283 {genie_int_lengths, "3"},
284 {genie_int_shorths, "1"},
285 {genie_real_lengths, "3"},
286 {genie_real_shorths, "1"},
287 {genie_complex_lengths, "3"},
288 {genie_complex_shorths, "1"},
289 #if (A68_LEVEL >= 3)
290 {genie_bits_lengths, "2"},
291 #else
292 {genie_bits_lengths, "3"},
293 #endif
294 {genie_bits_shorths, "1"},
295 {genie_bytes_lengths, "2"},
296 {genie_bytes_shorths, "1"},
297 {genie_int_width, "A68_INT_WIDTH"},
298 {genie_long_int_width, "A68_LONG_INT_WIDTH"},
299 {genie_long_mp_int_width, "A68_LONG_LONG_INT_WIDTH"},
300 {genie_real_width, "A68_REAL_WIDTH"},
301 {genie_long_real_width, "A68_LONG_REAL_WIDTH"},
302 {genie_long_mp_real_width, "A68_LONG_LONG_REAL_WIDTH"},
303 {genie_exp_width, "A68_EXP_WIDTH"},
304 {genie_long_exp_width, "A68_LONG_EXP_WIDTH"},
305 {genie_long_mp_exp_width, "A68_LONG_LONG_EXP_WIDTH"},
306 {genie_bits_width, "A68_BITS_WIDTH"},
307 {genie_bytes_width, "A68_BYTES_WIDTH"},
308 {genie_long_bytes_width, "A68_LONG_BYTES_WIDTH"},
309 {genie_max_abs_char, "UCHAR_MAX"},
310 {genie_max_int, "A68_MAX_INT"},
311 {genie_max_real, "A68_REAL_MAX"},
312 {genie_min_real, "A68_REAL_MIN"},
313 {genie_null_char, "NULL_CHAR"},
314 {genie_small_real, "A68_REAL_EPS"},
315 {genie_pi, "A68_PI"},
316
317 #if defined (HAVE_GSL)
318
319 {genie_cgs_acre, "GSL_CONST_CGSM_ACRE"},
320 {genie_cgs_angstrom, "GSL_CONST_CGSM_ANGSTROM"},
321 {genie_cgs_astronomical_unit, "GSL_CONST_CGSM_ASTRONOMICAL_UNIT"},
322 {genie_cgs_bar, "GSL_CONST_CGSM_BAR"},
323 {genie_cgs_barn, "GSL_CONST_CGSM_BARN"},
324 {genie_cgs_bohr_magneton, "GSL_CONST_CGSM_BOHR_MAGNETON"},
325 {genie_cgs_bohr_radius, "GSL_CONST_CGSM_BOHR_RADIUS"},
326 {genie_cgs_boltzmann, "GSL_CONST_CGSM_BOLTZMANN"},
327 {genie_cgs_btu, "GSL_CONST_CGSM_BTU"},
328 {genie_cgs_calorie, "GSL_CONST_CGSM_CALORIE"},
329 {genie_cgs_canadian_gallon, "GSL_CONST_CGSM_CANADIAN_GALLON"},
330 {genie_cgs_carat, "GSL_CONST_CGSM_CARAT"},
331 {genie_cgs_cup, "GSL_CONST_CGSM_CUP"},
332 {genie_cgs_curie, "GSL_CONST_CGSM_CURIE"},
333 {genie_cgs_day, "GSL_CONST_CGSM_DAY"},
334 {genie_cgs_dyne, "GSL_CONST_CGSM_DYNE"},
335 {genie_cgs_electron_charge, "GSL_CONST_CGSM_ELECTRON_CHARGE"},
336 {genie_cgs_electron_magnetic_moment, "GSL_CONST_CGSM_ELECTRON_MAGNETIC_MOMENT"},
337 {genie_cgs_electron_volt, "GSL_CONST_CGSM_ELECTRON_VOLT"},
338 {genie_cgs_erg, "GSL_CONST_CGSM_ERG"},
339 {genie_cgs_faraday, "GSL_CONST_CGSM_FARADAY"},
340 {genie_cgs_fathom, "GSL_CONST_CGSM_FATHOM"},
341 {genie_cgs_fluid_ounce, "GSL_CONST_CGSM_FLUID_OUNCE"},
342 {genie_cgs_foot, "GSL_CONST_CGSM_FOOT"},
343 {genie_cgs_footcandle, "GSL_CONST_CGSM_FOOTCANDLE"},
344 {genie_cgs_footlambert, "GSL_CONST_CGSM_FOOTLAMBERT"},
345 {genie_cgs_gauss, "GSL_CONST_CGSM_GAUSS"},
346 {genie_cgs_gram_force, "GSL_CONST_CGSM_GRAM_FORCE"},
347 {genie_cgs_grav_accel, "GSL_CONST_CGSM_GRAV_ACCEL"},
348 {genie_cgs_gravitational_constant, "GSL_CONST_CGSM_GRAVITATIONAL_CONSTANT"},
349 {genie_cgs_hectare, "GSL_CONST_CGSM_HECTARE"},
350 {genie_cgs_horsepower, "GSL_CONST_CGSM_HORSEPOWER"},
351 {genie_cgs_hour, "GSL_CONST_CGSM_HOUR"},
352 {genie_cgs_inch, "GSL_CONST_CGSM_INCH"},
353 {genie_cgs_inch_of_mercury, "GSL_CONST_CGSM_INCH_OF_MERCURY"},
354 {genie_cgs_inch_of_water, "GSL_CONST_CGSM_INCH_OF_WATER"},
355 {genie_cgs_joule, "GSL_CONST_CGSM_JOULE"},
356 {genie_cgs_kilometers_per_hour, "GSL_CONST_CGSM_KILOMETERS_PER_HOUR"},
357 {genie_cgs_kilopound_force, "GSL_CONST_CGSM_KILOPOUND_FORCE"},
358 {genie_cgs_knot, "GSL_CONST_CGSM_KNOT"},
359 {genie_cgs_lambert, "GSL_CONST_CGSM_LAMBERT"},
360 {genie_cgs_light_year, "GSL_CONST_CGSM_LIGHT_YEAR"},
361 {genie_cgs_liter, "GSL_CONST_CGSM_LITER"},
362 {genie_cgs_lumen, "GSL_CONST_CGSM_LUMEN"},
363 {genie_cgs_lux, "GSL_CONST_CGSM_LUX"},
364 {genie_cgs_mass_electron, "GSL_CONST_CGSM_MASS_ELECTRON"},
365 {genie_cgs_mass_muon, "GSL_CONST_CGSM_MASS_MUON"},
366 {genie_cgs_mass_neutron, "GSL_CONST_CGSM_MASS_NEUTRON"},
367 {genie_cgs_mass_proton, "GSL_CONST_CGSM_MASS_PROTON"},
368 {genie_cgs_meter_of_mercury, "GSL_CONST_CGSM_METER_OF_MERCURY"},
369 {genie_cgs_metric_ton, "GSL_CONST_CGSM_METRIC_TON"},
370 {genie_cgs_micron, "GSL_CONST_CGSM_MICRON"},
371 {genie_cgs_mil, "GSL_CONST_CGSM_MIL"},
372 {genie_cgs_mile, "GSL_CONST_CGSM_MILE"},
373 {genie_cgs_miles_per_hour, "GSL_CONST_CGSM_MILES_PER_HOUR"},
374 {genie_cgs_minute, "GSL_CONST_CGSM_MINUTE"},
375 {genie_cgs_molar_gas, "GSL_CONST_CGSM_MOLAR_GAS"},
376 {genie_cgs_nautical_mile, "GSL_CONST_CGSM_NAUTICAL_MILE"},
377 {genie_cgs_newton, "GSL_CONST_CGSM_NEWTON"},
378 {genie_cgs_nuclear_magneton, "GSL_CONST_CGSM_NUCLEAR_MAGNETON"},
379 {genie_cgs_ounce_mass, "GSL_CONST_CGSM_OUNCE_MASS"},
380 {genie_cgs_parsec, "GSL_CONST_CGSM_PARSEC"},
381 {genie_cgs_phot, "GSL_CONST_CGSM_PHOT"},
382 {genie_cgs_pint, "GSL_CONST_CGSM_PINT"},
383 {genie_cgs_planck_constant_h, "6.6260693e-27"},
384 {genie_cgs_planck_constant_hbar, "1.0545717e-27"},
385 {genie_cgs_point, "GSL_CONST_CGSM_POINT"},
386 {genie_cgs_poise, "GSL_CONST_CGSM_POISE"},
387 {genie_cgs_pound_force, "GSL_CONST_CGSM_POUND_FORCE"},
388 {genie_cgs_pound_mass, "GSL_CONST_CGSM_POUND_MASS"},
389 {genie_cgs_poundal, "GSL_CONST_CGSM_POUNDAL"},
390 {genie_cgs_proton_magnetic_moment, "GSL_CONST_CGSM_PROTON_MAGNETIC_MOMENT"},
391 {genie_cgs_psi, "GSL_CONST_CGSM_PSI"},
392 {genie_cgs_quart, "GSL_CONST_CGSM_QUART"},
393 {genie_cgs_rad, "GSL_CONST_CGSM_RAD"},
394 {genie_cgs_roentgen, "GSL_CONST_CGSM_ROENTGEN"},
395 {genie_cgs_rydberg, "GSL_CONST_CGSM_RYDBERG"},
396 {genie_cgs_solar_mass, "GSL_CONST_CGSM_SOLAR_MASS"},
397 {genie_cgs_speed_of_light, "GSL_CONST_CGSM_SPEED_OF_LIGHT"},
398 {genie_cgs_standard_gas_volume, "GSL_CONST_CGSM_STANDARD_GAS_VOLUME"},
399 {genie_cgs_std_atmosphere, "GSL_CONST_CGSM_STD_ATMOSPHERE"},
400 {genie_cgs_stilb, "GSL_CONST_CGSM_STILB"},
401 {genie_cgs_stokes, "GSL_CONST_CGSM_STOKES"},
402 {genie_cgs_tablespoon, "GSL_CONST_CGSM_TABLESPOON"},
403 {genie_cgs_teaspoon, "GSL_CONST_CGSM_TEASPOON"},
404 {genie_cgs_texpoint, "GSL_CONST_CGSM_TEXPOINT"},
405 {genie_cgs_therm, "GSL_CONST_CGSM_THERM"},
406 {genie_cgs_ton, "GSL_CONST_CGSM_TON"},
407 {genie_cgs_torr, "GSL_CONST_CGSM_TORR"},
408 {genie_cgs_troy_ounce, "GSL_CONST_CGSM_TROY_OUNCE"},
409 {genie_cgs_uk_gallon, "GSL_CONST_CGSM_UK_GALLON"},
410 {genie_cgs_uk_ton, "GSL_CONST_CGSM_UK_TON"},
411 {genie_cgs_unified_atomic_mass, "GSL_CONST_CGSM_UNIFIED_ATOMIC_MASS"},
412 {genie_cgs_us_gallon, "GSL_CONST_CGSM_US_GALLON"},
413 {genie_cgs_week, "GSL_CONST_CGSM_WEEK"},
414 {genie_cgs_yard, "GSL_CONST_CGSM_YARD"},
415 {genie_mks_acre, "GSL_CONST_MKS_ACRE"},
416 {genie_mks_angstrom, "GSL_CONST_MKS_ANGSTROM"},
417 {genie_mks_astronomical_unit, "GSL_CONST_MKS_ASTRONOMICAL_UNIT"},
418 {genie_mks_bar, "GSL_CONST_MKS_BAR"},
419 {genie_mks_barn, "GSL_CONST_MKS_BARN"},
420 {genie_mks_bohr_magneton, "GSL_CONST_MKS_BOHR_MAGNETON"},
421 {genie_mks_bohr_radius, "GSL_CONST_MKS_BOHR_RADIUS"},
422 {genie_mks_boltzmann, "GSL_CONST_MKS_BOLTZMANN"},
423 {genie_mks_btu, "GSL_CONST_MKS_BTU"},
424 {genie_mks_calorie, "GSL_CONST_MKS_CALORIE"},
425 {genie_mks_canadian_gallon, "GSL_CONST_MKS_CANADIAN_GALLON"},
426 {genie_mks_carat, "GSL_CONST_MKS_CARAT"},
427 {genie_mks_cup, "GSL_CONST_MKS_CUP"},
428 {genie_mks_curie, "GSL_CONST_MKS_CURIE"},
429 {genie_mks_day, "GSL_CONST_MKS_DAY"},
430 {genie_mks_dyne, "GSL_CONST_MKS_DYNE"},
431 {genie_mks_electron_charge, "GSL_CONST_MKS_ELECTRON_CHARGE"},
432 {genie_mks_electron_magnetic_moment, "GSL_CONST_MKS_ELECTRON_MAGNETIC_MOMENT"},
433 {genie_mks_electron_volt, "GSL_CONST_MKS_ELECTRON_VOLT"},
434 {genie_mks_erg, "GSL_CONST_MKS_ERG"},
435 {genie_mks_faraday, "GSL_CONST_MKS_FARADAY"},
436 {genie_mks_fathom, "GSL_CONST_MKS_FATHOM"},
437 {genie_mks_fluid_ounce, "GSL_CONST_MKS_FLUID_OUNCE"},
438 {genie_mks_foot, "GSL_CONST_MKS_FOOT"},
439 {genie_mks_footcandle, "GSL_CONST_MKS_FOOTCANDLE"},
440 {genie_mks_footlambert, "GSL_CONST_MKS_FOOTLAMBERT"},
441 {genie_mks_gauss, "GSL_CONST_MKS_GAUSS"},
442 {genie_mks_gram_force, "GSL_CONST_MKS_GRAM_FORCE"},
443 {genie_mks_grav_accel, "GSL_CONST_MKS_GRAV_ACCEL"},
444 {genie_mks_gravitational_constant, "GSL_CONST_MKS_GRAVITATIONAL_CONSTANT"},
445 {genie_mks_hectare, "GSL_CONST_MKS_HECTARE"},
446 {genie_mks_horsepower, "GSL_CONST_MKS_HORSEPOWER"},
447 {genie_mks_hour, "GSL_CONST_MKS_HOUR"},
448 {genie_mks_inch, "GSL_CONST_MKS_INCH"},
449 {genie_mks_inch_of_mercury, "GSL_CONST_MKS_INCH_OF_MERCURY"},
450 {genie_mks_inch_of_water, "GSL_CONST_MKS_INCH_OF_WATER"},
451 {genie_mks_joule, "GSL_CONST_MKS_JOULE"},
452 {genie_mks_kilometers_per_hour, "GSL_CONST_MKS_KILOMETERS_PER_HOUR"},
453 {genie_mks_kilopound_force, "GSL_CONST_MKS_KILOPOUND_FORCE"},
454 {genie_mks_knot, "GSL_CONST_MKS_KNOT"},
455 {genie_mks_lambert, "GSL_CONST_MKS_LAMBERT"},
456 {genie_mks_light_year, "GSL_CONST_MKS_LIGHT_YEAR"},
457 {genie_mks_liter, "GSL_CONST_MKS_LITER"},
458 {genie_mks_lumen, "GSL_CONST_MKS_LUMEN"},
459 {genie_mks_lux, "GSL_CONST_MKS_LUX"},
460 {genie_mks_mass_electron, "GSL_CONST_MKS_MASS_ELECTRON"},
461 {genie_mks_mass_muon, "GSL_CONST_MKS_MASS_MUON"},
462 {genie_mks_mass_neutron, "GSL_CONST_MKS_MASS_NEUTRON"},
463 {genie_mks_mass_proton, "GSL_CONST_MKS_MASS_PROTON"},
464 {genie_mks_meter_of_mercury, "GSL_CONST_MKS_METER_OF_MERCURY"},
465 {genie_mks_metric_ton, "GSL_CONST_MKS_METRIC_TON"},
466 {genie_mks_micron, "GSL_CONST_MKS_MICRON"},
467 {genie_mks_mil, "GSL_CONST_MKS_MIL"},
468 {genie_mks_mile, "GSL_CONST_MKS_MILE"},
469 {genie_mks_miles_per_hour, "GSL_CONST_MKS_MILES_PER_HOUR"},
470 {genie_mks_minute, "GSL_CONST_MKS_MINUTE"},
471 {genie_mks_molar_gas, "GSL_CONST_MKS_MOLAR_GAS"},
472 {genie_mks_nautical_mile, "GSL_CONST_MKS_NAUTICAL_MILE"},
473 {genie_mks_newton, "GSL_CONST_MKS_NEWTON"},
474 {genie_mks_nuclear_magneton, "GSL_CONST_MKS_NUCLEAR_MAGNETON"},
475 {genie_mks_ounce_mass, "GSL_CONST_MKS_OUNCE_MASS"},
476 {genie_mks_parsec, "GSL_CONST_MKS_PARSEC"},
477 {genie_mks_phot, "GSL_CONST_MKS_PHOT"},
478 {genie_mks_pint, "GSL_CONST_MKS_PINT"},
479 {genie_mks_planck_constant_h, "6.6260693e-34"},
480 {genie_mks_planck_constant_hbar, "1.0545717e-34"},
481 {genie_mks_point, "GSL_CONST_MKS_POINT"},
482 {genie_mks_poise, "GSL_CONST_MKS_POISE"},
483 {genie_mks_pound_force, "GSL_CONST_MKS_POUND_FORCE"},
484 {genie_mks_pound_mass, "GSL_CONST_MKS_POUND_MASS"},
485 {genie_mks_poundal, "GSL_CONST_MKS_POUNDAL"},
486 {genie_mks_proton_magnetic_moment, "GSL_CONST_MKS_PROTON_MAGNETIC_MOMENT"},
487 {genie_mks_psi, "GSL_CONST_MKS_PSI"},
488 {genie_mks_quart, "GSL_CONST_MKS_QUART"},
489 {genie_mks_rad, "GSL_CONST_MKS_RAD"},
490 {genie_mks_roentgen, "GSL_CONST_MKS_ROENTGEN"},
491 {genie_mks_rydberg, "GSL_CONST_MKS_RYDBERG"},
492 {genie_mks_solar_mass, "GSL_CONST_MKS_SOLAR_MASS"},
493 {genie_mks_speed_of_light, "GSL_CONST_MKS_SPEED_OF_LIGHT"},
494 {genie_mks_standard_gas_volume, "GSL_CONST_MKS_STANDARD_GAS_VOLUME"},
495 {genie_mks_std_atmosphere, "GSL_CONST_MKS_STD_ATMOSPHERE"},
496 {genie_mks_stilb, "GSL_CONST_MKS_STILB"},
497 {genie_mks_stokes, "GSL_CONST_MKS_STOKES"},
498 {genie_mks_tablespoon, "GSL_CONST_MKS_TABLESPOON"},
499 {genie_mks_teaspoon, "GSL_CONST_MKS_TEASPOON"},
500 {genie_mks_texpoint, "GSL_CONST_MKS_TEXPOINT"},
501 {genie_mks_therm, "GSL_CONST_MKS_THERM"},
502 {genie_mks_ton, "GSL_CONST_MKS_TON"},
503 {genie_mks_torr, "GSL_CONST_MKS_TORR"},
504 {genie_mks_troy_ounce, "GSL_CONST_MKS_TROY_OUNCE"},
505 {genie_mks_uk_gallon, "GSL_CONST_MKS_UK_GALLON"},
506 {genie_mks_uk_ton, "GSL_CONST_MKS_UK_TON"},
507 {genie_mks_unified_atomic_mass, "GSL_CONST_MKS_UNIFIED_ATOMIC_MASS"},
508 {genie_mks_us_gallon, "GSL_CONST_MKS_US_GALLON"},
509 {genie_mks_vacuum_permeability, "GSL_CONST_MKS_VACUUM_PERMEABILITY"},
510 {genie_mks_vacuum_permittivity, "GSL_CONST_MKS_VACUUM_PERMITTIVITY"},
511 {genie_mks_week, "GSL_CONST_MKS_WEEK"},
512 {genie_mks_yard, "GSL_CONST_MKS_YARD"},
513 {genie_num_atto, "GSL_CONST_NUM_ATTO"},
514 {genie_num_avogadro, "GSL_CONST_NUM_AVOGADRO"},
515 {genie_num_exa, "GSL_CONST_NUM_EXA"},
516 {genie_num_femto, "GSL_CONST_NUM_FEMTO"},
517 {genie_num_fine_structure, "GSL_CONST_NUM_FINE_STRUCTURE"},
518 {genie_num_giga, "GSL_CONST_NUM_GIGA"},
519 {genie_num_kilo, "GSL_CONST_NUM_KILO"},
520 {genie_num_mega, "GSL_CONST_NUM_MEGA"},
521 {genie_num_micro, "GSL_CONST_NUM_MICRO"},
522 {genie_num_milli, "GSL_CONST_NUM_MILLI"},
523 {genie_num_nano, "GSL_CONST_NUM_NANO"},
524 {genie_num_peta, "GSL_CONST_NUM_PETA"},
525 {genie_num_pico, "GSL_CONST_NUM_PICO"},
526 {genie_num_tera, "GSL_CONST_NUM_TERA"},
527 {genie_num_yocto, "GSL_CONST_NUM_YOCTO"},
528 {genie_num_yotta, "GSL_CONST_NUM_YOTTA"},
529 {genie_num_zepto, "GSL_CONST_NUM_ZEPTO"},
530 {genie_num_zetta, "GSL_CONST_NUM_ZETTA"},
531
532 #endif
533
534 {NO_GPROC, NO_TEXT}
535 };
536
© 2002-2024 J.M. van der Veer (jmvdveer@xs4all.nl)
|