Wild Life  2.29
 All Data Structures Files Functions Variables Typedefs Macros
def_proto.h
Go to the documentation of this file.
1 // from arity.c
2 #ifdef ARITY
3 void arity_init();
4 void arity_end();
5 void rec_print_feat(ptr_node n);
6 void print_features(ptr_node u);
7 int check_equal(ptr_node u,ptr_node v);
8 void arity_unify(ptr_psi_term u, ptr_psi_term v);
9 void arity_merge(ptr_node u, ptr_node v);
10 void arity_add(ptr_psi_term u, char *s);
11 #endif
12 
13 // from bi_math.c
15 
16 // from bi_sys.c
17 
18 long c_trace();
19 long c_tprove();
20 long c_quiet();
21 void setUnitList(GENERIC x);
26 ptr_psi_term quotedStackCopy( /* ptr_ */ psi_term p); // commented 2.22
30 ptr_psi_term makePsiList(GENERIC head,ptr_psi_term (*valueFunc)(),GENERIC (*nextFunc)());
33 // from bi_type.c
34 
35 long c_isa_subsort();
36 long isValue(ptr_psi_term p);
37 long c_glb();
38 long c_lub();
41 // from built_ins.c
42 
46 ptr_psi_term stack_int(long n);
47 ptr_psi_term stack_string(char *s);
48 ptr_psi_term stack_bytes(char *s,int n);
49 long psi_to_string(ptr_psi_term t,char **fn);
51 long check_real(ptr_psi_term t,REAL *v,long *n);
52 long get_real_value(ptr_psi_term t,REAL *v,long *n);
53 void unify_bool_result(ptr_psi_term t,long v);
55 long only_arg1(ptr_psi_term t,ptr_psi_term *arg1);
56 long file_exists(char *s);
57 long c_halt();
58 void exit_life(long nl_flag);
59 long c_abort();
60 long abort_life(int nlflag);
61 long pred_clause(ptr_psi_term t, long r, ptr_psi_term g);
62 void global_error_check(ptr_node n,int *error,int *eval2);
63 void global_tree(ptr_node n);
64 void global_one(ptr_psi_term t);
65 void persistent_error_check(ptr_node n,int *error);
72 long has_rules(ptr_pair_list r);
75 void new_built_in(ptr_module m, char *s,def_type t,long (*r)());
77 char *str_conc(char *s1,char *s2);
78 char *sub_str(char *s,long p,long n);
79 long append_files(char *s1,char *s2);
80 long c_concatenate();
81 long c_string_length();
82 long c_sub_string();
83 long c_append_file();
84 long c_random();
85 long c_initrandom();
86 long c_deref_length();
87 long c_args();
88 void init_built_in_types();
89 // from copy.c
90 
91 void init_copy();
92 void clear_copy();
93 void insert_translation(ptr_psi_term a,ptr_psi_term b,long info);
94 ptr_psi_term translate(ptr_psi_term a,long **infoptr);
95 ptr_psi_term exact_copy(ptr_psi_term t,long heap_flag);
96 ptr_psi_term quote_copy(ptr_psi_term t,long heap_flag);
97 ptr_psi_term eval_copy(ptr_psi_term t,long heap_flag);
99 ptr_psi_term copy(ptr_psi_term t,long copy_flag,long heap_flag);
102 void mark_quote_c(ptr_psi_term t,long heap_flag);
103 void mark_quote_tree_c(ptr_node n,long heap_flag);
104 void mark_eval(ptr_psi_term t);
111 void mark_quote(ptr_psi_term t);
112 void mark_quote_tree(ptr_node t);
115 // from error.c
116 
117 void stack_info(FILE *outfile);
118 void outputline(char *format, ...);
119 void traceline(char *format, ...);
120 void infoline(char *format, ...);
121 void warningline(char *format, ...);
122 void Errorline(char *format, ...);
123 void Syntaxerrorline(char *format, ...);
124 void vinfoline(char *format, FILE *outfile, ...);
125 void init_trace();
126 void reset_step();
127 void tracing();
128 void new_trace(long newtrace);
129 void new_step(long newstep);
130 void set_trace_to_prove();
131 void toggle_trace();
132 void toggle_step();
133 void perr(char *str);
134 void perr_s(char *s1,char *s2);
135 void perr_s2(char *s1,char *s2,char *s3);
136 void perr_i(char *str,long i);
137 long warning();
138 long warningx();
139 void report_error_main(ptr_psi_term g,char *s,char *s2);
140 void report_error(ptr_psi_term g,char *s);
141 long reportAndAbort(ptr_psi_term g,char *s);
142 void report_warning(ptr_psi_term g,char *s);
143 void report_error2_main(ptr_psi_term g,char *s, char *s2);
144 void report_error2(ptr_psi_term g,char *s);
145 void report_warning2(ptr_psi_term g,char *s);
147 long nonint_warning(ptr_psi_term arg,REAL val,char *msg);
148 long bit_and_warning(ptr_psi_term arg,REAL val);
149 long bit_or_warning(ptr_psi_term arg,REAL val);
150 long bit_not_warning(ptr_psi_term arg,REAL val);
151 long int_div_warning(ptr_psi_term arg,REAL val);
152 long mod_warning(ptr_psi_term arg,REAL val,int zero);
153 long shift_warning(long dir,ptr_psi_term arg,REAL val);
154 
155 // from hash_table.c
156 
157 ptr_hash_table hash_create(int size);
158 void hash_expand(ptr_hash_table table, int new_size);
159 int hash_code(ptr_hash_table table, char *symbol);
160 int hash_find(ptr_hash_table table,char *symbol);
161 ptr_keyword hash_lookup(ptr_hash_table table, char *symbol);
162 void hash_insert(ptr_hash_table table,char *symbol,ptr_keyword keyword);
163 void hash_display(ptr_hash_table table);
164 
165 // from info.c
166 
167 void title();
168 // from interrupt.c
169 
170 void interrupt();
171 void init_interrupt();
172 void handle_interrupt();
173 // from lefun.c
174 
175 ptr_psi_term stack_psi_term(long stat);
176 ptr_psi_term real_stack_psi_term(long stat,REAL thereal);
177 ptr_psi_term heap_psi_term(long stat);
179 void residuate(ptr_psi_term t);
182 void curry();
184 long do_residuation_user();
185 long do_residuation();
186 void do_currying();
187 void release_resid_main(ptr_psi_term t,long trailflag);
191 long eval_aim();
192 void match_attr1(ptr_node *u,ptr_node v,ptr_resid_block rb); // no * v
193 void match_attr2(ptr_node *u,ptr_node v,ptr_resid_block rb); // no * v
194 void match_attr3(ptr_node *u,ptr_node v,ptr_resid_block rb); // no * v
195 void match_attr(ptr_node *u,ptr_node v,ptr_resid_block rb); // no * v
196 long match_aim();
197 long i_eval_args(ptr_node n);
198 long eval_args(ptr_node n);
199 void check_disj(ptr_psi_term t);
200 void check_func(ptr_psi_term t);
201 long check_type(ptr_psi_term t);
202 long i_check_out(ptr_psi_term t);
203 long f_check_out(ptr_psi_term t);
204 long check_out(ptr_psi_term t);
205 long deref_eval(ptr_psi_term t);
208 void deref_rec_args(ptr_node n);
209 long deref_args_eval(ptr_psi_term t,long set);
210 long in_set(char *str,long set);
211 void deref_rec_args_exc(ptr_node n,long set);
212 void deref2_eval(ptr_psi_term t);
214 void save_resid(ptr_resid_block rb,ptr_psi_term match_date);
215 void restore_resid(ptr_resid_block rb,ptr_psi_term *match_date);
217 void init_global_vars();
218 // from lib.c
219 
220 char **group_features(char **f, ptr_node n);
221 void exit_if_true(long exitflag);
222 void init_io();
223 void init_system();
224 void WFInit(long argc, char **argv);
225 int WFInput(char *query);
226 PsiTerm WFGetVar(char *name);
229 char *WFType(ptr_psi_term psi);
230 char **WFFeatures(ptr_psi_term psi);
231 double WFGetDouble(ptr_psi_term psi,int *ok);
232 char *WFGetString(ptr_psi_term psi, int *ok);
233 PsiTerm WFGetFeature(ptr_psi_term ps, char *feature);
234 
235 int main(int argc, char *argv[]);
236 // from list.c
237 
238 void List_SetLinkProc (RefListHeader header,RefListGetLinksProc getLinks);
239 void List_InsertAhead (RefListHeader header,Ref atom);
240 void List_Append (RefListHeader header,Ref atom);
241 void List_InsertBefore (RefListHeader header,Ref atom,Ref mark);
242 void List_InsertAfter (RefListHeader header,Ref atom,Ref mark);
243 void List_Swap (RefListHeader header,Ref first,Ref second);
244 void List_Reverse (RefListHeader header);
245 void List_Remove (RefListHeader header,Ref atom);
246 void List_Concat (RefListHeader header1,RefListHeader header2);
247 long List_EnumFrom (RefListHeader header,Ref atom,RefListEnumProc proc,Ref closure);
248 long List_Enum (RefListHeader header,RefListEnumProc proc,Ref closure);
249 long List_EnumBackFrom (RefListHeader header,Ref atom, RefListEnumProc proc, Ref closure);
250 long List_EnumBack (RefListHeader header,RefListEnumProc proc, Ref closure);
251 long List_Card (RefListHeader header);
252 long List_IsUnlink (RefListLinks links);
253 void List_Cut (RefListHeader header,Ref atom, RefListHeader newHeader);
254 
255 // from login.c
256 
258 void get_one_arg(ptr_node t, ptr_psi_term *a);
260 void add_rule(ptr_psi_term head, ptr_psi_term body, def_type typ);
261 void assert_rule(psi_term t, def_type typ);
263 void start_chrono();
264 void push_ptr_value(type_ptr t, GENERIC *p);
268 void push_window(long type,long disp,long wind);
269 void push2_ptr_value(type_ptr t, GENERIC *p, GENERIC v);
272 void undo(ptr_stack limit);
273 void undo_actions();
274 void backtrack();
275 void clean_undo_window(long disp,long wind);
276 void merge1(ptr_node *u, ptr_node v); // no * v
277 void merge2(ptr_node *u, ptr_node v); // no * v
278 void merge3(ptr_node *u, ptr_node v); // no * v
279 void merge(ptr_node *u, ptr_node v); // no * v
280 void merge_unify(ptr_node *u, ptr_node v); // no * v
281 void show_count();
282 void fetch_def( ptr_psi_term u, long allflag);
283 void fetch_def_lazy(ptr_psi_term u, ptr_definition old1, ptr_definition old2, ptr_node old1attr, ptr_node old2attr, long old1stat, long old2stat);
284 long unify_aim_noeval();
285 long unify_aim();
286 long unify_body(long eval_flag);
287 long disjunct_aim();
288 long prove_aim();
289 void type_disj_aim();
290 long clause_aim(long r);
291 long no_choices();
292 long num_choices();
293 long num_vars(ptr_node vt);
294 long what_next_cut();
296 void reset_stacks();
297 long what_next_aim();
298 long load_aim();
299 void main_prove();
300 int dummy_printf(char *f, char *s, char *t);
301 long trail_condition(psi_term *Q);
302 
303 
304 // from lub.c
305 
307 void mark_ancestors(ptr_definition def, long *flags);
309 
310 
311 // from memory.c
312 
313 char *GetStrOption(char *name,char *def);
314 int GetBoolOption(char *name);
315 int GetIntOption(char *name,int def);
316 void pchoices();
317 void print_undo_stack();
318 long bounds_undo_stack();
319 void fail_all();
320 void check_hash_table(ptr_hash_table table);
322 void check_definition_list();
325 void check_attr(ptr_node *n);
326 void check_gamma_code();
327 void print_gc_info(long timeflag);
328 void garbage();
329 GENERIC heap_alloc(long s);
330 GENERIC stack_alloc(long s);
331 void init_memory ();
332 long memory_check ();
333 
334 
335 
336 // from modules.c
337 
338 void init_modules();
339 ptr_module find_module(char *module);
340 ptr_module create_module(char *module);
343 char *strip_module_name(char *str);
344 char *string_val(ptr_psi_term term);
345 char *make_module_token(ptr_module module,char *str);
347 ptr_definition update_symbol(ptr_module module,char *symbol);
348 char *print_symbol(ptr_keyword k);
349 void pretty_symbol(ptr_keyword k);
351 long c_set_module();
352 long c_open_module();
353 void open_module_tree(ptr_node n,int *onefailed);
354 void open_module_one(ptr_psi_term t,int *onefailed);
355 long make_public(ptr_psi_term term,long bool);
356 void traverse_tree(ptr_node n,int flag);
357 long c_public();
358 long c_private();
359 long c_display_modules();
360 long c_display_persistent();
361 long c_trace_input();
364 void replace_attr(ptr_node old_attr,ptr_psi_term term,ptr_definition old, ptr_definition new);
365 long c_replace();
366 long c_current_module();
367 long c_module_access();
370 long c_alias();
371 int get_module(ptr_psi_term psi, ptr_module *module);
373 long c_private_feature();
374 ptr_definition update_feature(ptr_module module, char *feature);
375 long all_public_symbols();
376 // from parser.c
377 
379 void show(long limit);
380 void push(psi_term tok,long prec,long op);
381 long pop(ptr_psi_term tok,long *op);
382 long look();
383 long precedence(psi_term tok,long typ);
386 void feature_insert(char *keystr,ptr_node *tree,ptr_psi_term psi);
388 psi_term parse_list(ptr_definition typ, char e, char s);
391 void crunch(long prec,long limit);
392 psi_term read_life_form(char ch1, char ch2);
393 psi_term parse(long *q);
394 // from print.c
395 
396 void init_print();
397 char *heap_nice_name();
399 long str_to_int(char *s);
400 void print_bin(long b);
401 void print_code(FILE *s,ptr_int_list c);
402 void print_operator_kind(FILE *s,long kind);
404 void go_through_tree(ptr_node t);
405 void go_through(ptr_psi_term t);
406 void insert_variables(ptr_node vars,long force);
407 void forbid_variables(ptr_node n);
408 void prettyf_inner(char *s,long q,char c);
409 long starts_nonlower(char *s);
410 long has_non_alpha(char *s);
411 long all_symbol(char *s);
412 long is_integer(char *s);
413 long no_quote(char *s);
414 void prettyf(char *s);
415 void prettyf_quoted_string(char *s);
416 void prettyf_quote(char *s);
417 void end_tab();
418 void mark_tab(ptr_tab_brk t);
419 void new_tab(ptr_tab_brk *t);
420 long strpos(long pos,char *str);
421 void work_out_length();
422 long count_features(ptr_node t);
424 void pretty_list(ptr_psi_term t,long depth);
425 void pretty_tag_or_psi_term(ptr_psi_term p,long sprec,long depth);
426 long check_opargs(ptr_node n);
427 long opcheck(ptr_psi_term t,long *prec,long *type);
428 long pretty_psi_with_ops(ptr_psi_term t,long sprec,long depth);
429 void pretty_psi_term(ptr_psi_term t, long sprec, long depth);
430 void do_pretty_attr(ptr_node t,ptr_tab_brk tab,long *cnt,long two,long depth);
431 long two_or_more(ptr_node t);
432 void pretty_attr(ptr_node t,long depth);
433 void pretty_output();
435 long print_variables(long printflag);
437 void listing_pred_write(ptr_node n,long fflag);
438 void pred_write(ptr_node n);
439 void main_pred_write(ptr_node n);
443 void display_psi(FILE *s,ptr_psi_term t);
445 void display_couple(ptr_psi_term u,char *s,ptr_psi_term v);
447 // from raw.c
448 
449 #ifndef NORAW
450 long c_begin_raw ();
451 long c_get_raw ();
452 long c_put_raw ();
453 long c_end_raw ();
454 long c_in_raw ();
455 long c_window_flag ();
456 long c_reset_window_flag ();
457 void raw_setup_builtins ();
458 #endif
459 // from sys.c
460 
461 long call_primitive(long (*fun)(),int num,psi_arg argi[],GENERIC info);
462 ptr_psi_term fileptr2stream(FILE *fp, ptr_definition typ); // removed * 2nd arg
463 int text_buffer_next(struct text_buffer *buf, int idx, char c, struct text_buffer **rbuf, int *ridx);
464 char* text_buffer_cmp(struct text_buffer *buf, int idx, char *str);
465 void text_buffer_push(struct text_buffer **buf, char c);
466 void text_buffer_free(struct text_buffer *buf);
467 int is_ipaddr( char *s);
468 void make_sys_type_links();
469 void check_sys_definitions();
470 void insert_sys_builtins();
471 // from sys_dbm.c
472 
473 void insert_dbm_builtins();
474 // templates.c
475 
476 long get_arg (ptr_psi_term g, ptr_psi_term *arg, char *number);
477 // from token.c
478 
479 void TOKEN_ERROR(ptr_psi_term p);
480 void stdin_cleareof();
481 void heap_add_int_attr(ptr_psi_term t,char *attrname,long value);
482 void stack_add_int_attr(ptr_psi_term t,char *attrname,long value);
483 void heap_mod_int_attr(ptr_psi_term t,char *attrname,long value);
484 void heap_add_str_attr(ptr_psi_term t,char *attrname,char *str);
485 void stack_add_str_attr(ptr_psi_term t,char *attrname,char *str);
486 void heap_mod_str_attr(ptr_psi_term t,char *attrname,char *str);
487 void heap_add_psi_attr(ptr_psi_term t,char *attrname,ptr_psi_term g);
488 void stack_add_psi_attr(ptr_psi_term t,char *attrname,ptr_psi_term g);
489 void bk_stack_add_psi_attr(ptr_psi_term t,char *attrname,ptr_psi_term g);
490 GENERIC get_attr(ptr_psi_term t,char *attrname);
491 FILE *get_stream(ptr_psi_term t);
492 void save_state(ptr_psi_term t);
494 void new_state(ptr_psi_term *t);
497 void init_parse_state();
498 void begin_terminal_io();
499 void end_terminal_io();
500 char *expand_file_name(char *s);
501 long open_input_file(char *file);
502 long open_output_file(char *file);
503 long read_char();
504 void put_back_char(long c);
505 void put_back_token(psi_term t);
506 void psi_term_error();
507 void read_comment(ptr_psi_term tok);
508 void read_string_error(int n);
509 int base2int(int n);
510 void read_string(ptr_psi_term tok,long e);
511 long symbolic(long c);
512 long legal_in_name(long c);
513 void read_name(ptr_psi_term tok,long ch,long (*f)(),ptr_definition typ);
514 void read_number(ptr_psi_term tok,long c);
515 void read_token(ptr_psi_term tok);
516 void read_token_b(ptr_psi_term tok);
517 void read_token_main(ptr_psi_term tok,long for_parser);
518 long intcmp(long a,long b);
519 long is_int(char **s,long *len,long *sgn);
520 long featcmp(char *str1,char *str2);
521 char *heap_ncopy_string(char *s,int n);
522 char *heap_copy_string(char *s);
523 char *stack_copy_string(char *s);
524 ptr_node general_insert(long comp,char *keystr,ptr_node *tree,GENERIC info,long heapflag, long copystr,long bkflag);
525 void heap_insert_copystr(char *keystr,ptr_node *tree,GENERIC info);
526 void stack_insert_copystr(char *keystr,ptr_node *tree,GENERIC info);
527 ptr_node heap_insert(long comp,char *keystr,ptr_node *tree,GENERIC info);
528 ptr_node stack_insert(long comp,char *keystr,ptr_node *tree,GENERIC info);
529 ptr_node bk_stack_insert(long comp,char *keystr,ptr_node *tree,GENERIC info);
530 ptr_node bk2_stack_insert(long comp,char *keystr,ptr_node *tree,GENERIC info);
531 ptr_node find(long comp,char *keystr,ptr_node tree);
533 void delete_attr(char *s,ptr_node *n);
534 // from types.c
535 
536 void print_def_type(def_type t);
537 long yes_or_no();
539 long redefine(ptr_psi_term t);
542 void assert_protected(ptr_node n,long prot);
546 void assert_type(ptr_psi_term t);
549 void find_adults();
552 void propagate_definitions();
553 long count_sorts(long c0);
554 void clear_coding();
555 void least_sorts();
556 void all_sorts();
557 ptr_int_list two_to_the(long p);
560 void equalize_codes(int len);
563 void perr_sort(ptr_definition d);
564 void perr_sort_list(ptr_int_list anc);
565 void perr_sort_cycle(ptr_int_list anc);
567 void propagate_always_check(ptr_definition d,long *ch);
568 void one_pass_always_check(long *ch);
569 void inherit_always_check();
570 void encode_types();
571 void print_codes();
572 long glb_value(long result,long f,GENERIC c,GENERIC value1,GENERIC value2, GENERIC *value);
573 long glb_code(long f1,GENERIC c1,long f2,GENERIC c2,long *f3,GENERIC *c3);
578 long matches(ptr_definition t1,ptr_definition t2,long *smaller);
579 long strict_matches(ptr_psi_term t1,ptr_psi_term t2,long *smaller);
580 long bit_length(ptr_int_list c);
582 
583 #if FALSE
584 // from xdisplaylist.c
585 
586 extern ListHeader * x_display_list ();
587 extern void x_set_gc (Display *, GC,long,unsigned long,long,Font);
588 extern void x_record_line (ListHeader *,Action,long,long,long,long,unsigned long,unsigned long,unsigned long);
589 extern void x_record_arc (ListHeader *, Action, long,long,long,long,long,long,unsigned long, unsigned long, unsigned long);
590 extern void x_record_rectangle (ListHeader *, Action, long,long,long,long, unsigned long, unsigned long, unsigned long);
591 extern void x_record_string (ListHeader *, Action, long,long,char *,long,unsigned long,unsigned long);
592 extern void x_record_polygon (ListHeader *,Action,XPoint *,long,unsigned long,unsigned long,unsigned long);
593 extern void x_refresh_window (Display *, Window, Pixmap, GC, ListHeader *);
594 extern void x_free_display_list (ListHeader *);
595 
596 #endif
597 
598 // NEW
599 #ifdef X11
600 void raw_setup_builtins();
601 void interrupt();
602 
603 
604 ListHeader *x_display_list();
605 void x_set_gc (Display *display,GC gc,long function,unsigned long color,long linewidth,Font font);
606 void x_record_line (ListHeader *displaylist,Action action,long x0,long y0,long x1,long y1,unsigned long function,unsigned long color,unsigned long linewidth);
607 void x_record_arc (ListHeader *displaylist,Action action,long x,long y,long width,long height,long startangle,long arcangle,unsigned long function,unsigned long color,unsigned long linewidth);
608 
609 void x_record_rectangle (ListHeader *displaylist,Action action,long x,long y,long width,long height,unsigned long function,unsigned long color,unsigned long linewidth);
610 
611 void x_record_polygon (ListHeader *displaylist,Action action,XPoint *points,long npoints,unsigned long function,unsigned long color,unsigned long linewidth);
612 
613 
614 void x_record_string (ListHeader *displaylist,Action action,long x,long y,char *str,Font font,unsigned long function,unsigned long color);
615 
616 
617 void x_refresh_window (Display *display,Window window,Pixmap pixmap,GC pixmapgc,ListHeader *displaylist);
618 
619 void x_free_display_list (ListHeader *displaylist);
620 
621 // from xpred.c
622 long list_is_nil(ptr_psi_term(lst));
623 ptr_psi_term list_cdr(ptr_psi_term(lst));
624 ptr_psi_term list_car(ptr_psi_term(lst));
625 void bk_stack_add_int_attr(ptr_psi_term t, char *attrname, long value);
626 void bk_change_psi_attr(ptr_psi_term t,char *attrname, ptr_psi_term value);
627 long unify_int_result(ptr_psi_term t, long v);
628 long GetIntAttr(ptr_psi_term psiTerm, char *attributeName);
629 ptr_psi_term GetPsiAttr( ptr_psi_term psiTerm,char *attributeName);
630 long xcOpenConnection();
631 long xcDefaultRootWindow();
632 long xcGetConnectionAttribute();
633 long xcGetScreenAttribute();
634 long xcCloseConnection();
635 long xcCreateSimpleWindow();
636 long xcSetStandardProperties();
637 long xcGetWindowGeometry();
638 long xcGetWindowAttribute();
639 long xcSetWindowGeometry();
640 long xcMoveWindow();
641 long xcSetWindowAttribute();
642 long xcMapWindow();
643 long xcRaiseWindow();
644 long xcUnmapWindow();
645 long xcMapSubwindows();
646 long xcUnmapSubwindows();
647 long xcClearWindow();
648 long xcResizeWindowPixmap();
649 long xcSelectInput();
650 long xcRefreshWindow();
651 long xcPostScriptWindow();
652 long xcDestroyWindow();
653 long xcCreateGC();
654 long xcGetGCAttribute();
655 long xcSetGCAttribute();
656 long xcDestroyGC();
657 long xcRequestColor();
658 long xcRequestNamedColor();
659 long xcFreeColor();
660 long xcDrawLine();
661 long xcDrawArc();
662 long xcDrawRectangle();
663 long xcFillRectangle();
664 long xcFillArc();
665 long xcPointsAlloc();
666 long xcCoordPut();
667 long xcPointsFree();
668 long xcDrawPolygon();
669 long xcFillPolygon();
670 long xcLoadFont();
671 long xcUnloadFont();
672 long xcDrawString();
673 long xcDrawImageString();
674 long xcStringWidth();
675 long xcSync();
676 // long list_is_nil(ptr_psi_term lst);
677 // ptr_psi_term list_cdr( ptr_psi_term lst);
678 // ptr_psi_term list_car(ptr_psi_term lst);
679 void list_set_car( ptr_psi_term lst, ptr_psi_term value);
680 void list_set_cdr(ptr_psi_term lst, ptr_psi_term value);
681 ptr_psi_term list_last_cdr( ptr_psi_term lst);
682 ptr_psi_term append_to_list(ptr_psi_term lst, ptr_psi_term value);
683 long map_funct_over_list(ptr_psi_term lst, long(*proc)(), long *closure);
684 long map_funct_over_cars(ptr_psi_term lst, long(*proc)(), long *closure);
685 void list_remove_value(ptr_psi_term lst, ptr_psi_term value);
686 long xcGetEvent();
687 long xcFlushEvents();
688 long xcQueryPointer();
689 void x_setup_builtins();
690 long x_read_stdin_or_event(long *ptreventflag);
691 long x_exist_event();
692 void x_destroy_window(Display *display,Window window);
693 void x_show_window(Display *display,long window);
694 void x_hide_window(Display *display, long window);
695 void x_show_subwindow(Display *display, long window);
696 void x_hide_subwindow(Display *display, long window);
697 long xcQueryTextExtents();
698 long x_postscript_window(Display *display,Window window,ListHeader *displaylist,char *filename);
699 #endif
void mark_quote_new(ptr_psi_term t)
mark_quote_new
Definition: copy.c:627
void list_special(ptr_psi_term t)
list_special
Definition: built_ins.c:5127
long hidden_type(ptr_definition t)
hidden_type
Definition: built_ins.c:3669
long intcmp(long a, long b)
intcmp
Definition: trees.c:21
int isSubTypeValue(ptr_psi_term arg1, ptr_psi_term arg2)
isSubTypeValue
Definition: bi_type.c:180
void check_disj(ptr_psi_term t)
check_disj
Definition: lefun.c:910
long opcheck(ptr_psi_term t, long *prec, long *type)
opcheck
Definition: print.c:913
void mark_quote_c(ptr_psi_term t, long heap_flag)
mark_quote_c
Definition: copy.c:434
void persistent_tree(ptr_node n)
persistent_tree
Definition: built_ins.c:2737
long f_check_out(ptr_psi_term t)
f_check_out
Definition: lefun.c:1046
psi_term list_nil(ptr_definition type)
list_nil
Definition: parser.c:278
ptr_keyword hash_lookup(ptr_hash_table table, char *symbol)
HASH_LOOKUP.
Definition: hash_table.c:131
void unify_bool_result(ptr_psi_term t, long v)
unify_bool_result
Definition: built_ins.c:345
void psi_term_error()
psi_term_error
Definition: token.c:761
char * string_val(ptr_psi_term term)
string_val
Definition: modules.c:169
long trail_condition(psi_term *Q)
trail_condition
Definition: login.c:2632
void hash_expand(ptr_hash_table table, int new_size)
HASH_EXPAND.
Definition: hash_table.c:47
void report_warning2(ptr_psi_term g, char *s)
Definition: error.c:785
void print_undo_stack()
print_undo_stack
Definition: memory.c:121
long psi_to_string(ptr_psi_term t, char **fn)
psi_to_string
Definition: built_ins.c:146
long c_halt()
c_halt
Definition: built_ins.c:2209
void get_two_args(ptr_node t, ptr_psi_term *a, ptr_psi_term *b)
get_two_args
Definition: login.c:47
void init_trace()
Definition: error.c:587
void push_ptr_value(type_ptr t, GENERIC *p)
push_ptr_value
Definition: login.c:383
long glb_value(long result, long f, GENERIC c, GENERIC value1, GENERIC value2, GENERIC *value)
glb_value
Definition: types.c:1290
void List_InsertAhead(RefListHeader header, Ref atom)
List_InsertAhead.
Definition: list.c:44
long count_features(ptr_node t)
count_features
Definition: print.c:690
long open_output_file(char *file)
void undo(ptr_stack limit)
undo
Definition: login.c:691
psi_term read_psi_term()
read_psi_term
Definition: parser.c:421
ptr_goal makeGoal(ptr_psi_term p)
makeGoal
Definition: bi_sys.c:644
void get_one_arg_addr(ptr_node t, ptr_psi_term **a)
get_one_arg_addr
Definition: login.c:132
void insert_math_builtins()
insert math builtins into table
Definition: bi_math.c:1346
int global_unify(ptr_psi_term u, ptr_psi_term v)
global_unify
Definition: modules.c:1053
psi_term make_life_form(ptr_psi_term tok, ptr_psi_term arg1, ptr_psi_term arg2)
make_life_form
Definition: parser.c:571
GENERIC unitListNext()
set unitListElement to NULL & return NULL
Definition: bi_sys.c:490
long do_residuation()
do_residuation
Definition: lefun.c:336
void interrupt()
INTERRUPT()
Definition: interrupt.c:21
void perr(char *str)
Definition: error.c:659
void show(long limit)
show
Definition: parser.c:64
void main_display_psi_term(ptr_psi_term t)
main_display_psi_term
Definition: print.c:1593
void garbage()
garbage
Definition: memory.c:1529
long strict_matches(ptr_psi_term t1, ptr_psi_term t2, long *smaller)
strict_matches
Definition: types.c:1713
void heap_add_str_attr(ptr_psi_term t, char *attrname, char *str)
heap_add_str_attr
Definition: token.c:151
void push2_ptr_value(type_ptr t, GENERIC *p, GENERIC v)
push2_ptr_value
Definition: login.c:573
void put_back_char(long c)
put_back_char
Definition: token.c:729
ptr_node general_insert(long comp, char *keystr, ptr_node *tree, GENERIC info, long heapflag, long copystr, long bkflag)
ptr_node general_insert
Definition: trees.c:224
long c_append_file()
c_append_file
Definition: built_ins.c:5886
ptr_psi_term exact_copy(ptr_psi_term t, long heap_flag)
exact_copy
Definition: copy.c:176
void residuate(ptr_psi_term t)
residuate
Definition: lefun.c:125
void listing_pred_write(ptr_node n, long fflag)
listing_pred_write
Definition: print.c:1438
long precedence(psi_term tok, long typ)
precedence
Definition: parser.c:180
psi_term read_life_form(char ch1, char ch2)
read_life_form
Definition: parser.c:728
long check_out(ptr_psi_term t)
Definition: lefun.c:1083
void read_token(ptr_psi_term tok)
read_token
Definition: token.c:1186
ptr_psi_term unitListValue()
make psi term from unitListElement
Definition: bi_sys.c:479
FILE * get_stream(ptr_psi_term t)
get_stream
Definition: token.c:278
long c_public()
c_public
Definition: modules.c:687
long do_residuation_user()
do_residuation_user()
Definition: lefun.c:324
void restore_resid(ptr_resid_block rb, ptr_psi_term *match_date)
restore_resid
Definition: lefun.c:1417
void exit_if_true(long exitflag)
exit_if_true
Definition: lib.c:55
void mark_quote_new2(ptr_psi_term t)
mark_quote_new2
Definition: copy.c:528
char * WFGetString(ptr_psi_term psi, int *ok)
WFGetString.
Definition: lib.c:442
long yes_or_no()
yes_or_no
Definition: types.c:50
void report_warning(ptr_psi_term g, char *s)
Definition: error.c:746
long c_display_modules()
c_display_modules
Definition: modules.c:739
long glb(ptr_definition t1, ptr_definition t2, ptr_definition *t3, ptr_int_list *c3)
glb
Definition: types.c:1481
long List_EnumFrom(RefListHeader header, Ref atom, RefListEnumProc proc, Ref closure)
List_EnumFrom.
Definition: list.c:347
void mark_quote_tree_c(ptr_node n, long heap_flag)
mark_quote_tree_c
Definition: copy.c:467
PsiTerm WFGetFeature(ptr_psi_term ps, char *feature)
WFGetFeature.
Definition: lib.c:468
void persistent_error_check(ptr_node n, int *error)
persistent_error_check
Definition: built_ins.c:2712
long bounds_undo_stack()
bounds_undo_stack
Definition: memory.c:142
void text_buffer_push(struct text_buffer **buf, char c)
text_buffer_push
Definition: sys.c:961
psi_term parse_list(ptr_definition typ, char e, char s)
parse_list
Definition: parser.c:329
ptr_psi_term real_stack_psi_term(long stat, REAL thereal)
real_stack_psi_term
Definition: lefun.c:48
void check_resid_block(ptr_resid_block *rb)
check_resid_block
Definition: memory.c:965
long c_end_raw()
c_end_raw
Definition: raw.c:230
int text_buffer_next(struct text_buffer *buf, int idx, char c, struct text_buffer **rbuf, int *ridx)
text_buffer_next
Definition: sys.c:907
void push_choice_point(goals t, ptr_psi_term a, ptr_psi_term b, GENERIC c)
push_choice_point
Definition: login.c:638
void push_goal(goals t, ptr_psi_term a, ptr_psi_term b, GENERIC c)
push_goal
Definition: login.c:600
ptr_module create_module(char *module)
ptr_module create_module(char *module)
Definition: modules.c:72
psi_term parse(long *q)
parse
Definition: parser.c:907
ptr_node bk_stack_insert(long comp, char *keystr, ptr_node *tree, GENERIC info)
bk_stack_insert
Definition: trees.c:357
void clear_copy()
clear_copy
Definition: copy.c:53
void write_attributes(ptr_node n, ptr_tab_brk tab)
write_attributes
Definition: print.c:1419
GENERIC unique_name()
unique_name
Definition: print.c:99
void main_pred_write(ptr_node n)
main_pred_write
Definition: print.c:1484
void List_Concat(RefListHeader header1, RefListHeader header2)
List_Concat.
Definition: list.c:308
long legal_in_name(long c)
legal_in_name
Definition: token.c:980
int is_ipaddr(char *s)
is_ipaddr
Definition: sys.c:1333
long make_public(ptr_psi_term term, long bool)
make_public
Definition: modules.c:613
void init_system()
init_system
Definition: lib.c:94
void heap_mod_str_attr(ptr_psi_term t, char *attrname, char *str)
heap_mod_str_attr
Definition: token.c:191
ptr_psi_term intListValue(ptr_int_list p)
make psi term from ptr_int_list [->value_1]
Definition: bi_sys.c:503
ptr_node find_data(GENERIC p, ptr_node t)
find_data
Definition: trees.c:452
void reset_step()
Definition: error.c:596
void rec_replace(ptr_definition old, ptr_definition new, ptr_psi_term term)
rec_replace
Definition: modules.c:865
ptr_psi_term inc_heap_copy(ptr_psi_term t)
inc_heap_copy
Definition: copy.c:206
void stack_add_str_attr(ptr_psi_term t, char *attrname, char *str)
stack_add_str_attr
Definition: token.c:170
int WFfeature_count_loop(ptr_node n)
WFfeature_count_loop.
Definition: lib.c:336
void assert_type(ptr_psi_term t)
assert_type
Definition: types.c:372
void pretty_attr(ptr_node t, long depth)
pretty_attr
Definition: print.c:1273
long only_arg1(ptr_psi_term t, ptr_psi_term *arg1)
only_arg1
Definition: built_ins.c:1606
long check_real(ptr_psi_term t, REAL *v, long *n)
check_real
Definition: built_ins.c:232
void do_pretty_attr(ptr_node t, ptr_tab_brk tab, long *cnt, long two, long depth)
do_pretty_attr
Definition: print.c:1199
void save_parse_state(ptr_parse_block pb)
save_parse_state
Definition: token.c:425
void TOKEN_ERROR(ptr_psi_term p)
TOKEN_ERROR.
Definition: token.c:38
long c_string_length()
c_string_length
Definition: built_ins.c:5722
void read_string(ptr_psi_term tok, long e)
read_string
Definition: token.c:859
char * two
Definition: def_glob.h:251
long bit_length(ptr_int_list c)
bit_length
Definition: types.c:1753
void merge_unify(ptr_node *u, ptr_node v)
Definition: login.c:1146
void global_tree(ptr_node n)
global_tree
Definition: built_ins.c:2632
ptr_psi_term heap_psi_term(long stat)
heap_psi_term
Definition: lefun.c:75
void delete_attr(char *s, ptr_node *n)
delete_attr
Definition: trees.c:522
long c_put_raw()
c_put_raw
Definition: raw.c:206
ptr_int_list decode(ptr_int_list c)
decode
Definition: types.c:1784
ptr_psi_term stack_pair(ptr_psi_term left, ptr_psi_term right)
stack_pair
Definition: built_ins.c:69
void display_psi(FILE *s, ptr_psi_term t)
display_psi
Definition: print.c:1579
void push_ptr_value_global(type_ptr t, GENERIC *p)
push_ptr_value_global
Definition: login.c:523
long warningx()
Definition: error.c:692
void mark_quote(ptr_psi_term t)
mark_quote
Definition: copy.c:675
char * heap_ncopy_string(char *s, int n)
heap_ncopy_string
Definition: trees.c:150
long reportAndAbort(ptr_psi_term g, char *s)
Definition: error.c:732
long redefine(ptr_psi_term t)
redefine
Definition: types.c:104
void deref2_rec_eval(ptr_psi_term t)
deref2_rec_eval
Definition: lefun.c:1382
void push_psi_ptr_value(ptr_psi_term q, GENERIC *p)
push_psi_ptr_value
Definition: login.c:474
void read_name(ptr_psi_term tok, long ch, long(*f)(), ptr_definition typ)
long c_module_access()
c_module_access
Definition: modules.c:1008
ptr_psi_term makePsiTerm(ptr_definition x)
Definition: bi_sys.c:572
void replace_attr(ptr_node old_attr, ptr_psi_term term, ptr_definition old, ptr_definition new)
replace_attr
Definition: modules.c:898
long c_concatenate()
c_concatenate
Definition: built_ins.c:5573
void push(psi_term tok, long prec, long op)
push
Definition: parser.c:107
int WFInput(char *query)
WFInput.
Definition: lib.c:226
void restore_parse_state(ptr_parse_block pb)
restore_parse_state
Definition: token.c:444
long c_isa_subsort()
long c_isa_subsort
Definition: bi_type.c:661
long has_non_alpha(char *s)
has_non_alpha
Definition: print.c:418
ptr_node one_attr()
one_attr
Definition: built_ins.c:5038
void display_psi_stream(ptr_psi_term t)
display_psi_stream
Definition: print.c:1564
long List_IsUnlink(RefListLinks links)
List_IsUnlink.
Definition: list.c:475
void tracing()
Definition: error.c:604
void pretty_symbol(ptr_keyword k)
pretty_symbol
Definition: modules.c:452
long c_abort()
c_abort
Definition: built_ins.c:2248
long unify_aim()
unify_aim
Definition: login.c:1344
char * sub_str(char *s, long p, long n)
sub_str
Definition: built_ins.c:5510
int hash_find(ptr_hash_table table, char *symbol)
hash_find
Definition: hash_table.c:106
long c_set_module()
c_set_module
Definition: modules.c:488
void prettyf_quoted_string(char *s)
prettyf_quoted_string
Definition: print.c:507
ptr_node distinct_tree(ptr_node t)
distinct_tree
Definition: copy.c:366
ptr_psi_term stack_int(long n)
stack_int
Definition: built_ins.c:91
long List_EnumBackFrom(RefListHeader header, Ref atom, RefListEnumProc proc, Ref closure)
List_EnumBackFrom.
Definition: list.c:401
long c_in_raw()
Definition: raw.c:256
void or_codes(ptr_int_list u, ptr_int_list v)
or_codes
Definition: types.c:831
long matches(ptr_definition t1, ptr_definition t2, long *smaller)
matches
Definition: types.c:1666
void assert_protected(ptr_node n, long prot)
assert_protected
Definition: types.c:255
ptr_psi_term fileptr2stream(FILE *fp, ptr_definition typ)
fileptr2stream
Definition: sys.c:688
void replace(ptr_definition old, ptr_definition new, ptr_psi_term term)
replace
Definition: modules.c:851
int GetIntOption(char *name, int def)
GetIntOption.
Definition: memory.c:78
long residuateGoalOnVar(ptr_goal g, ptr_psi_term var, ptr_psi_term othervar)
residuateGoalOnVar
Definition: lefun.c:192
long warning()
Definition: error.c:685
void pretty_output()
pretty_output
Definition: print.c:1293
void deref2_eval(ptr_psi_term t)
deref2_eval
Definition: lefun.c:1356
void nonnum_warning(ptr_psi_term t, ptr_psi_term arg1, ptr_psi_term arg2)
Definition: error.c:796
char * strip_module_name(char *str)
strip_module_name
Definition: modules.c:144
void toggle_step()
Definition: error.c:650
void feature_insert(char *keystr, ptr_node *tree, ptr_psi_term psi)
feature_insert
Definition: parser.c:251
void append_resid(ptr_psi_term u, ptr_psi_term v)
append_resid
Definition: lefun.c:474
ptr_hash_table hash_create(int size)
HASH_CREATE.
Definition: hash_table.c:25
void get_one_arg(ptr_node t, ptr_psi_term *a)
get_one_arg
Definition: login.c:99
long pred_clause(ptr_psi_term t, long r, ptr_psi_term g)
pred_clause
Definition: built_ins.c:2452
long bit_not_warning(ptr_psi_term arg, REAL val)
Definition: error.c:838
void assert_complicated_type(ptr_psi_term t)
assert_complicated_type
Definition: types.c:405
long starts_nonlower(char *s)
starts_nonlower
Definition: print.c:406
long unify_aim_noeval()
unify_aim_noeval
Definition: login.c:1354
void perr_sort_cycle(ptr_int_list anc)
perr_sort_cycle
Definition: types.c:959
void perr_s(char *s1, char *s2)
Definition: error.c:665
void display_psi_stdout(ptr_psi_term t)
display_psi_stdout
Definition: print.c:1536
void curry()
curry
Definition: lefun.c:174
ptr_node bk2_stack_insert(long comp, char *keystr, ptr_node *tree, GENERIC info)
bk2_stack_insert
Definition: trees.c:377
ptr_psi_term eval_copy(ptr_psi_term t, long heap_flag)
eval_copy
Definition: copy.c:196
void show_count()
show_count
Definition: login.c:1161
void setUnitList(GENERIC x)
set static unitListElement
Definition: bi_sys.c:468
void init_built_in_types()
init_built_in_types
Definition: built_ins.c:6150
void backtrack()
backtrack
Definition: login.c:772
void WFInit(long argc, char **argv)
void make_sys_type_links()
make_sys_type_links
Definition: sys.c:2174
long no_choices()
no_choices
Definition: login.c:1945
void report_error2(ptr_psi_term g, char *s)
Definition: error.c:772
long c_open_module()
c_open_module
Definition: modules.c:519
void mark_nonstrict(ptr_psi_term t)
mark_nonstrict
Definition: copy.c:514
void read_token_main(ptr_psi_term tok, long for_parser)
read_token_main
Definition: token.c:1207
void display_psi_stderr(ptr_psi_term t)
display_psi_stderr
Definition: print.c:1550
void List_Append(RefListHeader header, Ref atom)
void List_Append
Definition: list.c:71
long assert_less(ptr_psi_term t1, ptr_psi_term t2)
assert_less
Definition: types.c:200
void perr_sort_list(ptr_int_list anc)
perr_sort_list
Definition: types.c:944
void eval_global_var(ptr_psi_term t)
eval_global_var
Definition: lefun.c:1440
long overlap_type(ptr_definition t1, ptr_definition t2)
overlap_type
Definition: types.c:1579
void print_bin(long b)
print_bin
Definition: print.c:147
void pretty_psi_term(ptr_psi_term t, long sprec, long depth)
pretty_psi_term
Definition: print.c:1058
void put_back_token(psi_term t)
put_back_token
Definition: token.c:746
#define REAL
Definition: def_const.h:72
void insert_system_builtins()
insert_system_builtins
Definition: bi_sys.c:744
ptr_psi_term copy(ptr_psi_term t, long copy_flag, long heap_flag)
copy
Definition: copy.c:248
FILE * outfile
Definition: def_glob.h:333
ptr_definition update_symbol(ptr_module module, char *symbol)
update_symbol
Definition: modules.c:270
void insert_own_prop(ptr_definition d)
insert_own_prop
Definition: types.c:575
void read_number(ptr_psi_term tok, long c)
read_number
Definition: token.c:1110
void perr_s2(char *s1, char *s2, char *s3)
Definition: error.c:671
long pop(ptr_psi_term tok, long *op)
pop
Definition: parser.c:132
ptr_node heap_insert(long comp, char *keystr, ptr_node *tree, GENERIC info)
heap_insert
Definition: trees.c:320
ptr_psi_term stack_cons(ptr_psi_term head, ptr_psi_term tail)
stack_cons
Definition: built_ins.c:46
int get_module(ptr_psi_term psi, ptr_module *module)
get_module
Definition: modules.c:1226
long get_real_value(ptr_psi_term t, REAL *v, long *n)
get_real_value
Definition: built_ins.c:262
char * print_symbol(ptr_keyword k)
print_symbol
Definition: modules.c:435
ptr_int_list two_to_the(long p)
two_to_the
Definition: types.c:776
void stack_add_psi_attr(ptr_psi_term t, char *attrname, ptr_psi_term g)
stack_add_psi_attr
Definition: token.c:239
void hash_display(ptr_hash_table table)
HASH_DISPLAY.
Definition: hash_table.c:174
void init_io()
void init_io
Definition: lib.c:69
void release_resid(ptr_psi_term t)
release_resid
Definition: lefun.c:445
void mark_eval_tree_new(ptr_node n)
mark_eval_tree_new
Definition: copy.c:612
void heap_add_int_attr(ptr_psi_term t, char *attrname, long value)
heap_add_int_attr
Definition: token.c:74
long c_lub()
long c_lub
Definition: bi_type.c:775
void insert_prop(ptr_definition d, ptr_triple_list prop)
insert_prop
Definition: types.c:620
char * str_conc(char *s1, char *s2)
str_conc
Definition: built_ins.c:5492
void pretty_list(ptr_psi_term t, long depth)
pretty_list
Definition: print.c:734
void deref_rec_body(ptr_psi_term t)
deref_rec_body
Definition: lefun.c:1243
void deref_rec_args(ptr_node n)
deref_rec_args
Definition: lefun.c:1272
long sub_type(ptr_definition t1, ptr_definition t2)
sub_type
Definition: types.c:1642
void traceline(char *format,...)
Definition: error.c:157
void List_Swap(RefListHeader header, Ref first, Ref second)
List_Swap.
Definition: list.c:172
void fetch_def(ptr_psi_term u, long allflag)
fetch_def
Definition: login.c:1208
ptr_psi_term new_psi_term(long numargs, ptr_definition typ, ptr_psi_term **a1, ptr_psi_term **a2)
new_psi_term
Definition: built_ins.c:5060
long c_reset_window_flag()
c_reset_window_flag
Definition: raw.c:294
void end_tab()
end_tab
Definition: print.c:554
long c_display_persistent()
c_display_persistent
Definition: modules.c:775
void fetch_def_lazy(ptr_psi_term u, ptr_definition old1, ptr_definition old2, ptr_node old1attr, ptr_node old2attr, long old1stat, long old2stat)
fetch_def_lazy
Definition: login.c:1276
char * WFType(ptr_psi_term psi)
WFType.
Definition: lib.c:375
void * PsiTerm
Definition: def_struct.h:4
void check_hash_table(ptr_hash_table table)
check_hash_table
Definition: memory.c:625
ptr_psi_term distinct_copy(ptr_psi_term t)
distinct_copy
Definition: copy.c:393
long eval_args(ptr_node n)
eval_args
Definition: lefun.c:889
void match_attr(ptr_node *u, ptr_node v, ptr_resid_block rb)
match_attr
Definition: lefun.c:752
RefListLinks(* RefListGetLinksProc)()
Definition: def_struct.h:261
void Errorline(char *format,...)
Definition: error.c:414
void pretty_quote_symbol(ptr_keyword k)
pretty_quote_symbol
Definition: modules.c:470
void type_disj_aim()
type_disj_aim
Definition: login.c:1845
void assert_delay_check(ptr_node n)
assert_delay_check
Definition: types.c:326
int WFFeatureCount(ptr_psi_term psi)
WFFeatureCount.
Definition: lib.c:357
long is_int(char **s, long *len, long *sgn)
is_int
Definition: trees.c:41
ptr_int_list cons(GENERIC v, ptr_int_list l)
cons
Definition: types.c:179
void end_terminal_io()
end_terminal_io
Definition: token.c:516
void forbid_variables(ptr_node n)
Definition: print.c:334
void stack_add_int_attr(ptr_psi_term t, char *attrname, long value)
stack_add_int_attr
Definition: token.c:94
ptr_psi_term stack_nil()
stack_nil
Definition: built_ins.c:26
void one_pass_always_check(long *ch)
one_pass_always_check
Definition: types.c:1049
long get_arg(ptr_psi_term g, ptr_psi_term *arg, char *number)
get_arg
Definition: templates.c:25
void print_gc_info(long timeflag)
print_gc_info
Definition: memory.c:1492
ptr_psi_term makePsiList(GENERIC head, ptr_psi_term(*valueFunc)(), GENERIC(*nextFunc)())
makePsiList
Definition: bi_sys.c:589
void List_Reverse(RefListHeader header)
List_Reverse.
Definition: list.c:230
void bk_stack_add_psi_attr(ptr_psi_term t, char *attrname, ptr_psi_term g)
bk_stack_add_psi_attr
Definition: token.c:252
void residuate2(ptr_psi_term u, ptr_psi_term v)
residuate2
Definition: lefun.c:144
ptr_node stack_insert(long comp, char *keystr, ptr_node *tree, GENERIC info)
stack_insert
Definition: trees.c:337
void set_trace_to_prove()
Definition: error.c:639
void infoline(char *format,...)
Definition: error.c:245
int hash_code(ptr_hash_table table, char *symbol)
HASH_CODE.
Definition: hash_table.c:79
char * heap_copy_string(char *s)
heap_copy_string
Definition: trees.c:172
void print_resid_message(ptr_psi_term t, ptr_resid_list r)
print_resid_message
Definition: print.c:1690
void print_codes()
print_codes
Definition: types.c:1256
long count_sorts(long c0)
count_sorts
Definition: types.c:710
long c_args()
c_args
Definition: built_ins.c:6118
long c_tprove()
UNSURE.
Definition: bi_sys.c:81
void prettyf_inner(char *s, long q, char c)
prettyf_inner
Definition: print.c:374
void print_code(FILE *s, ptr_int_list c)
print_code
Definition: print.c:167
void do_currying()
do_currying
Definition: lefun.c:383
void global_one(ptr_psi_term t)
global_one
Definition: built_ins.c:2651
void insert_sys_builtins()
insert_sys_builtins
Definition: sys.c:2215
void insert_type_builtins()
void insert_type_builtins
Definition: bi_type.c:820
long load_aim()
load_aim
Definition: login.c:2232
void hash_insert(ptr_hash_table table, char *symbol, ptr_keyword keyword)
HASH_INSERT.
Definition: hash_table.c:151
void assert_attributes(ptr_psi_term t)
assert_attributes
Definition: types.c:500
void begin_terminal_io()
begin_terminal_io
Definition: token.c:493
void perr_sort(ptr_definition d)
perr_sort
Definition: types.c:933
void Syntaxerrorline(char *format,...)
Definition: error.c:498
void init_copy()
init_copy
Definition: copy.c:32
void work_out_length()
work_out_length
Definition: print.c:626
long nonint_warning(ptr_psi_term arg, REAL val, char *msg)
Definition: error.c:810
char * name
Definition: def_glob.h:325
void release_resid_main(ptr_psi_term t, long trailflag)
release_resid_main
Definition: lefun.c:411
void display_couple(ptr_psi_term u, char *s, ptr_psi_term v)
display_couple
Definition: print.c:1643
void check_gamma_code()
check_gamma_code
Definition: memory.c:1078
void print_def_type(def_type t)
print_def_type
Definition: types.c:24
void check_pointer(ptr_psi_term p)
check_pointer
Definition: print.c:233
long call_primitive(long(*fun)(), int num, psi_arg argi[], GENERIC info)
call_primitive
Definition: sys.c:24
void crunch(long prec, long limit)
crunch
Definition: parser.c:662
long declare_operator(ptr_psi_term t)
declare_operator
Definition: built_ins.c:5432
ptr_psi_term quotedStackCopy(psi_term p)
make psi term from unitListElement
Definition: bi_sys.c:527
void residuate_double(ptr_psi_term t, ptr_psi_term u)
residuate_double
Definition: lefun.c:107
void make_type_link(ptr_definition t1, ptr_definition t2)
make_type_link
Definition: types.c:901
long num_vars(ptr_node vt)
num_vars
Definition: login.c:1976
long c_random()
c_random
Definition: built_ins.c:5962
long what_next_cut()
what_next_cut
Definition: login.c:1987
long prove_aim()
prove_aim
Definition: login.c:1645
void least_sorts()
void least_sorts()
Definition: types.c:743
long no_quote(char *s)
no_quote
Definition: print.c:470
void start_chrono()
start_chrono
Definition: login.c:349
void init_global_vars()
init_global_vars
Definition: lefun.c:1484
void release_resid_notrail(ptr_psi_term t)
release_resid_notrail
Definition: lefun.c:456
void pretty_tag_or_psi_term(ptr_psi_term p, long sprec, long depth)
pretty_tag_or_psi_term
Definition: print.c:834
long abort_life(int nlflag)
abort_life
Definition: built_ins.c:2260
void insert_variables(ptr_node vars, long force)
insert_variables
Definition: print.c:308
void fail_all()
fail_all
Definition: memory.c:188
void merge(ptr_node *u, ptr_node v)
merge
Definition: login.c:1131
void push_def_ptr_value(ptr_psi_term q, GENERIC *p)
push_def_ptr_value
Definition: login.c:416
ptr_int_list lub(ptr_psi_term a, ptr_psi_term b, ptr_psi_term *pp)
Definition: lub.c:173
void exit_life(long nl_flag)
exit_life
Definition: built_ins.c:2220
void pretty_variables(ptr_node n, ptr_tab_brk tab)
pretty_variables
Definition: print.c:1318
void merge2(ptr_node *u, ptr_node v)
merge2
Definition: login.c:949
long c_initrandom()
c_initrandom
Definition: built_ins.c:6028
ptr_psi_term heap_copy_psi_term(psi_term t)
heap_copy_psi_term
Definition: parser.c:226
void init_print()
init_print
Definition: print.c:52
void match_attr3(ptr_node *u, ptr_node v, ptr_resid_block rb)
match_attr3
Definition: lefun.c:700
void insert_translation(ptr_psi_term a, ptr_psi_term b, long info)
insert_translation
Definition: copy.c:67
void init_memory()
init_memory ()
Definition: memory.c:1671
ptr_psi_term stack_psi_term(long stat)
stack_psi_term
Definition: lefun.c:21
void heap_insert_copystr(char *keystr, ptr_node *tree, GENERIC info)
heap_insert_copystr
Definition: trees.c:284
void propagate_definitions()
propagate_definitions
Definition: types.c:662
long deref_rec_eval(ptr_psi_term t)
deref_rec_eval
Definition: lefun.c:1226
long clause_aim(long r)
clause_aim
Definition: login.c:1879
char * expand_file_name(char *s)
expand_file_name
Definition: token.c:537
ptr_definition new_definition(ptr_keyword key)
new_definition
Definition: modules.c:220
void toggle_trace()
Definition: error.c:644
char * heap_nice_name()
heap_nice_name
Definition: print.c:63
ptr_module extract_module_from_name(char *str)
extract_module_from_name
Definition: modules.c:116
void report_error(ptr_psi_term g, char *s)
Definition: error.c:718
long c_current_module()
c_current_module
Definition: modules.c:974
long check_type(ptr_psi_term t)
check_type
Definition: lefun.c:990
long shift_warning(long dir, ptr_psi_term arg, REAL val)
Definition: error.c:867
void init_parse_state()
init_parse_state
Definition: token.c:464
void pred_write(ptr_node n)
pred_write
Definition: print.c:1469
ptr_psi_term residListGoalQuote(ptr_residuation p)
Definition: bi_sys.c:545
void residuate3(ptr_psi_term u, ptr_psi_term v, ptr_psi_term w)
residuate3
Definition: lefun.c:159
void List_SetLinkProc(RefListHeader header, RefListGetLinksProc getLinks)
List_SetLinkProc.
Definition: list.c:24
long file_exists(char *s)
file_exists
Definition: built_ins.c:1712
void report_error2_main(ptr_psi_term g, char *s, char *s2)
Definition: error.c:755
long symbolic(long c)
symbolic
Definition: token.c:967
char * GetStrOption(char *name, char *def)
GetStrOption.
Definition: memory.c:41
long all_symbol(char *s)
all_symbol
Definition: print.c:434
long goals
Definition: def_struct.h:21
void reset_stacks()
reset_stacks
Definition: login.c:2047
long c_glb()
long c_glb
Definition: bi_type.c:708
void clean_undo_window(long disp, long wind)
clean_undo_window
Definition: login.c:848
void insert_dbm_builtins()
void find_adults()
find_adults
Definition: types.c:549
long c_private_feature()
c_private_feature
Definition: modules.c:1302
long type_member(ptr_definition t, ptr_int_list tlst)
type_member
Definition: types.c:918
long bit_or_warning(ptr_psi_term arg, REAL val)
Definition: error.c:831
long strpos(long pos, char *str)
strpos
Definition: print.c:608
void read_comment(ptr_psi_term tok)
read_comment
Definition: token.c:779
ptr_node find(long comp, char *keystr, ptr_node tree)
find
Definition: trees.c:394
char ** group_features(char **f, ptr_node n)
group_features
Definition: lib.c:34
int dummy_printf(char *f, char *s, char *t)
dummy_printf
Definition: login.c:2619
long eval_aim()
eval_aim
Definition: lefun.c:497
void match_attr1(ptr_node *u, ptr_node v, ptr_resid_block rb)
void match_attr1
Definition: lefun.c:599
void save_resid(ptr_resid_block rb, ptr_psi_term match_date)
save_resid
Definition: lefun.c:1398
ptr_psi_term stack_copy_psi_term(psi_term t)
stack_copy_psi_term
Definition: parser.c:205
long featcmp(char *str1, char *str2)
featcmp
Definition: trees.c:106
void mark_eval(ptr_psi_term t)
mark_eval
Definition: copy.c:498
void deref_rec_args_exc(ptr_node n, long set)
deref_rec_args_exc
Definition: lefun.c:1332
void restore_state(ptr_psi_term t)
restore_state
Definition: token.c:334
void outputline(char *format,...)
Definition: error.c:79
int base2int(int n)
base2int
Definition: token.c:816
long c_trace_input()
c_trace_input
Definition: modules.c:810
long str_to_int(char *s)
str_to_int
Definition: print.c:118
long unify_real_result(ptr_psi_term t, REAL v)
unify_real_result
Definition: built_ins.c:387
void push_window(long type, long disp, long wind)
push_window
Definition: login.c:548
long c_alias()
c_alias
Definition: modules.c:1180
void prettyf(char *s)
prettyf
Definition: print.c:496
void encode_types()
encode_types
Definition: types.c:1091
long deref_eval(ptr_psi_term t)
deref_eval
Definition: lefun.c:1180
void merge3(ptr_node *u, ptr_node v)
merge3
Definition: login.c:1004
void check_definition(ptr_definition *d)
check_definition
Definition: memory.c:662
ptr_int_list copyTypeCode(ptr_int_list u)
copyTypeCode
Definition: types.c:808
int main(int argc, char *argv[])
main
Definition: life.c:34
void List_Cut(RefListHeader header, Ref atom, RefListHeader newHeader)
List_Cut.
Definition: list.c:488
void propagate_always_check(ptr_definition d, long *ch)
propagate_always_check
Definition: types.c:1022
long i_eval_args(ptr_node n)
i_eval_args
Definition: lefun.c:874
void List_InsertBefore(RefListHeader header, Ref atom, Ref mark)
List_InsertBefore.
Definition: list.c:101
GENERIC residListNext(ptr_residuation p)
Definition: bi_sys.c:561
void clear_already_loaded(ptr_node n)
clear_already_loaded
Definition: types.c:351
long is_integer(char *s)
is_integer
Definition: print.c:450
long List_EnumBack(RefListHeader header, RefListEnumProc proc, Ref closure)
List_EnumBack.
Definition: list.c:433
long isValue(ptr_psi_term p)
isValue(p)
Definition: bi_type.c:691
void main_prove()
main_prove
Definition: login.c:2335
long deref_args_eval(ptr_psi_term t, long set)
deref_args_eval
Definition: lefun.c:1294
ptr_psi_term quote_copy(ptr_psi_term t, long heap_flag)
quote_copy
Definition: copy.c:186
void new_state(ptr_psi_term *t)
new_state
Definition: token.c:372
long c_quiet()
Definition: bi_sys.c:186
ptr_choice_point topmost_what_next()
topmost_what_next
Definition: login.c:2026
void mark_ancestors(ptr_definition def, long *flags)
mark_ancestors
Definition: lub.c:60
char * make_module_token(ptr_module module, char *str)
make_module_token
Definition: modules.c:191
struct wl_psi_term * ptr_psi_term
Definition: def_struct.h:34
void handle_interrupt()
HANDLE_INTERRUPT.
Definition: interrupt.c:52
void read_token_b(ptr_psi_term tok)
read_token_b
Definition: token.c:1197
void raw_setup_builtins()
raw_setup_builtins
Definition: raw.c:311
void save_state(ptr_psi_term t)
save_state
Definition: token.c:293
void stack_info(FILE *outfile)
Definition: error.c:58
void go_through(ptr_psi_term t)
go_through
Definition: print.c:282
void new_built_in(ptr_module m, char *s, def_type t, long(*r)())
new_built_in
Definition: built_ins.c:5371
void check_func(ptr_psi_term t)
check_func
Definition: lefun.c:928
long sub_CodeType(ptr_int_list c1, ptr_int_list c2)
sub_CodeType
Definition: types.c:1618
long c_private()
c_private
Definition: modules.c:714
long print_variables(long printflag)
print_variables
Definition: print.c:1368
void mark_quote_tree(ptr_node t)
mark_quote_tree
Definition: copy.c:693
long List_Enum(RefListHeader header, RefListEnumProc proc, Ref closure)
List_Enum.
Definition: list.c:379
long read_char()
read_char
Definition: token.c:680
void global_error_check(ptr_node n, int *error, int *eval2)
global_error_check
Definition: built_ins.c:2592
long c_deref_length()
c_deref_length
Definition: built_ins.c:6083
long mod_warning(ptr_psi_term arg, REAL val, int zero)
Definition: error.c:852
ptr_psi_term translate(ptr_psi_term a, long **infoptr)
translate
Definition: copy.c:108
void new_step(long newstep)
Definition: error.c:629
long c_replace()
c_replace
Definition: modules.c:936
void report_error_main(ptr_psi_term g, char *s, char *s2)
Definition: error.c:700
void text_buffer_free(struct text_buffer *buf)
text_buffer_free
Definition: sys.c:986
double WFGetDouble(ptr_psi_term psi, int *ok)
WFGetDouble.
Definition: lib.c:416
void undo_actions()
undo_actions
Definition: login.c:736
long glb_code(long f1, GENERIC c1, long f2, GENERIC c2, long *f3, GENERIC *c3)
glb_code
Definition: types.c:1351
void mark_tab(ptr_tab_brk t)
mark_tab
Definition: print.c:573
int(* RefListEnumProc)()
Definition: def_struct.h:262
char * text_buffer_cmp(struct text_buffer *buf, int idx, char *str)
text_buffer_cmp
Definition: sys.c:934
void inherit_always_check()
inherit_always_check
Definition: types.c:1068
long c_get_raw()
c_get_raw
Definition: raw.c:107
void check_psi_term(ptr_psi_term *t)
check_psi_term
Definition: memory.c:987
void assert_rule(psi_term t, def_type typ)
assert_rule
Definition: login.c:257
GENERIC get_attr(ptr_psi_term t, char *attrname)
get_attr
Definition: token.c:265
void open_module_tree(ptr_node n, int *onefailed)
open_module_tree
Definition: modules.c:542
ptr_definition update_feature(ptr_module module, char *feature)
update_feature
Definition: modules.c:1331
long look()
look
Definition: parser.c:163
void add_rule(ptr_psi_term head, ptr_psi_term body, def_type typ)
add_rule
Definition: login.c:167
ptr_psi_term stack_bytes(char *s, int n)
stack_bytes
Definition: built_ins.c:128
void List_Remove(RefListHeader header, Ref atom)
List_Remove.
Definition: list.c:258
long check_opargs(ptr_node n)
check_opargs
Definition: print.c:887
void warningline(char *format,...)
Definition: error.c:327
ptr_module find_module(char *module)
find_module
Definition: modules.c:54
void init_modules()
init_modules
Definition: modules.c:34
void equalize_codes(int len)
equalize_codes
Definition: types.c:859
long disjunct_aim()
disjunct_aim
Definition: login.c:1621
void go_through_tree(ptr_node t)
go_through_tree
Definition: print.c:258
void traverse_tree(ptr_node n, int flag)
traverse_tree
Definition: modules.c:656
void heap_mod_int_attr(ptr_psi_term t, char *attrname, long value)
heap_mod_int_attr
Definition: token.c:116
ptr_int_list appendIntList(ptr_int_list tail, ptr_int_list more)
appendIntList
Definition: lub.c:40
long memory_check()
memory_check
Definition: memory.c:1723
void check_sys_definitions()
check_sys_definitions
Definition: sys.c:2192
void stdin_cleareof()
stdin_cleareof
Definition: token.c:51
void prettyf_quote(char *s)
prettyf_quote
Definition: print.c:529
int global_unify_attr(ptr_node u, ptr_node v)
global_unify_attr
Definition: modules.c:1135
unsigned long * GENERIC
Definition: def_struct.h:17
long has_rules(ptr_pair_list r)
has_rules
Definition: built_ins.c:5097
long match_aim()
match_aim
Definition: lefun.c:770
long c_sub_string()
c_sub_string
Definition: built_ins.c:5777
long int_div_warning(ptr_psi_term arg, REAL val)
Definition: error.c:845
long num_choices()
num_choices
Definition: login.c:1956
PsiTerm WFGetVar(char *name)
WFGetVar.
Definition: lib.c:315
void mark_eval_new(ptr_psi_term t)
mark_eval_new
Definition: copy.c:541
int bad_psi_term(ptr_psi_term t)
bad_psi_term
Definition: parser.c:31
long c_window_flag()
c_window_flag
Definition: raw.c:273
void bk_mark_quote(ptr_psi_term t)
bk_mark_quote
Definition: copy.c:709
void merge1(ptr_node *u, ptr_node v)
merge1
Definition: login.c:893
long type_ptr
Definition: def_const.h:169
void match_attr2(ptr_node *u, ptr_node v, ptr_resid_block rb)
match_attr2
Definition: lefun.c:644
void title()
TITLE.
Definition: info.c:39
void heap_add_psi_attr(ptr_psi_term t, char *attrname, ptr_psi_term g)
heap_add_psi_attr
Definition: token.c:226
void new_trace(long newtrace)
Definition: error.c:619
long c_trace()
trace
Definition: bi_sys.c:30
long all_public_symbols()
all_public_symbols
Definition: modules.c:1363
void mark_quote_tree_new(ptr_node n)
mark_quote_tree_new
Definition: copy.c:654
long check_legal_cons(ptr_psi_term t, ptr_definition t_type)
check_legal_cons
Definition: print.c:713
void check_definition_list()
check_definition_list
Definition: memory.c:699
long open_input_file(char *file)
open_input_file
Definition: token.c:594
void remove_cycles(ptr_definition d, ptr_int_list *dl)
remove_cycles
Definition: types.c:85
long is_built_in(ptr_pair_list r)
is_built_in
Definition: built_ins.c:5114
ptr_module set_current_module(ptr_module module)
set_current_module
Definition: modules.c:100
long append_files(char *s1, char *s2)
append_files
Definition: built_ins.c:5539
void vinfoline(char *format, FILE *outfile,...)
void assert_clause(ptr_psi_term t)
assert_clause
Definition: login.c:287
void check_attr(ptr_node *n)
check_attr
Definition: memory.c:1054
void print_operator_kind(FILE *s, long kind)
print_operator_kind
Definition: print.c:192
ptr_goal GoalFromPsiTerm(ptr_psi_term psiTerm)
void perr_i(char *str, long i)
Definition: error.c:677
long what_next_aim()
what_next_aim
Definition: login.c:2068
void persistent_one(ptr_psi_term t)
persistent_one
Definition: built_ins.c:2756
long i_check_out(ptr_psi_term t)
i_check_out
Definition: lefun.c:1033
void all_sorts()
all_sorts
Definition: types.c:759
void * Ref
Definition: def_struct.h:258
void init_interrupt()
INIT_INTERRUPT.
Definition: interrupt.c:36
GENERIC heap_alloc(long s)
heap_alloc
Definition: memory.c:1616
GENERIC intListNext(ptr_int_list p)
return p->next
Definition: bi_sys.c:515
long bit_and_warning(ptr_psi_term arg, REAL val)
Definition: error.c:824
void stack_insert_copystr(char *keystr, ptr_node *tree, GENERIC info)
stack_insert_copystr
Definition: trees.c:301
long List_Card(RefListHeader header)
List_Card.
Definition: list.c:461
GENERIC stack_alloc(long s)
stack_alloc
Definition: memory.c:1642
int GetBoolOption(char *name)
GetBoolOption.
Definition: memory.c:64
long c_begin_raw()
c_begin_raw
Definition: raw.c:39
ptr_psi_term collect_symbols(long sel)
collect_symbols
Definition: built_ins.c:3696
void open_module_one(ptr_psi_term t, int *onefailed)
open_module_one
Definition: modules.c:562
long unify_body(long eval_flag)
unify_body
Definition: login.c:1365
long pretty_psi_with_ops(ptr_psi_term t, long sprec, long depth)
pretty_psi_with_ops
Definition: print.c:949
char * stack_copy_string(char *s)
stack_copy_string
Definition: trees.c:184
long in_set(char *str, long set)
in_set
Definition: lefun.c:1316
long two_or_more(ptr_node t)
two_or_more
Definition: print.c:1254
void assert_args_not_eval(ptr_node n)
assert_args_not_eval
Definition: types.c:294
void new_tab(ptr_tab_brk *t)
new_tab
Definition: print.c:587
void clear_coding()
clear_coding
Definition: types.c:727
ptr_psi_term make_feature_list(ptr_node tree, ptr_psi_term tail, ptr_module module, int val)
make_feature_list
Definition: built_ins.c:176
int make_feature_private(ptr_psi_term term)
make_feature_private
Definition: modules.c:1256
char ** WFFeatures(ptr_psi_term psi)
WFFeatures.
Definition: lib.c:391
void List_InsertAfter(RefListHeader header, Ref atom, Ref mark)
List_InsertAfter.
Definition: list.c:134
long type_cyclicity(ptr_definition d, ptr_int_list anc)
type_cyclicity
Definition: types.c:977
void pchoices()
pchoices
Definition: memory.c:93
void read_string_error(int n)
read_string_error
Definition: token.c:796
void bk_mark_quote_tree(ptr_node t)
bk_mark_quote_tree
Definition: copy.c:729
ptr_psi_term stack_string(char *s)
stack_string
Definition: built_ins.c:109