ace.c Colin Ramsay (cram@itee.uq.edu.au) 25 Feb 00
ADVANCED COSET ENUMERATOR, Version 3.001
Copyright 2000 Centre for Discrete Mathematics and Computing, Department of Mathematics and Department of Computer Science & Electrical Engineering, The University of Queensland, QLD 4072. (http://staff.itee.uq.edu.au/havas)
This is the top level stuff for Level 2 of ACE; that is, the standalone, interactive `demonstration application'.
Historical fact: the first run of ACE's Level 2 interactive interface which included an actual enumeration (as opposed to just sitting in the main loop twiddling its thumbs) lasted from 10:56:57am to 10:59:03am on Tues 29th Dec 1998, and took place in the Dept of CS & EE at The Univ of Qld. The group was A_5, over the trivial subgroup, and the correct answer (ie, 60) was obtained!
/****************************************************************** Stuff declared in al2.h
******************************************************************/
jmp_buf env;
Logic okstart, okcont, okredo;
Logic tabinfo, tabindex; int lresult;
Logic echo, skipnl; int currip; char currkey[64], currname[128]; int *currword, currsiz, currexp; int intcnt, intarr[32];
/****************************************************************** int main(void)
ACE takes no arguments, and normally returns 0; something -ve will be returned on an `error'. By default, all input is from stdin & all output is to stdout, via the fip/fop Level 0 parameters.
******************************************************************/
/* On POSIX systems, the uname() function retrieves the name of the host, which we print out neatly at the start of a run. (Of course, we could also access this using the "sys:...;" ACE command.) If required, define AL2_HINFO in the make file. This code could be expanded to print out any
other information regarding the current host that is required. */
/* If costable is NULL at this point, then either this is the first time through, or an attempt to allocate the requested workspace has failed. In either case, we attempt to allocate the default amount of workspace.
If this fails, then we terminate extremely prejudicially. */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.