2006-03-30  jcbowman  <jcbowman@wizard>

	* base/constants.asy, base/graph3.asy, base/solids.asy,
	* base/three.asy, doc/asymptote.texi, doc/cylinder.asy, runtime.in: 
	
	Added Degrees function; like degrees(pair) but returns 0 for (0,0)
	argument.
	
	Added minbound and maxbound functions for triples.

	Moved minbound, maxbound, and Longitude functions to runtime code.

	Added min(guide3[]) and max(guide3[]) functions.

	For convenience added xaxis(triple,real) functions, etc.

	Added solid geometry package with cylinder routines.

	Updated documentation.

	* path.cc, path3.cc:
	
	Added limit maxIntersectCount=100000 on maximum number of calls to
	intersectcubics per cubic segment.

2006-03-28  jcbowman  <jcbowman@wizard>

	* TODO:
	
	Removed TODO item regarding extending runnable-at-a-time mode to inner
	code levels as this is no longer needed.

2006-03-27  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, main.cc, pool.h:
	
	Fixed memory leak in interactive mode by using an implementation
	of reset that is closer to the environment reset used between
	multiple file runs. 

	Removed pool.h as it is no longer used.

2006-03-26  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Fixed indentation.

	* genv.cc: Fixed typos.

2006-03-25  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated CJK documentation.

	* base/pens.asy, doc/asymptote.texi: Added real fontsize() routine.

	Documented real fontsize(pen p=currentpen).

	Documented use of CJK fonts.

2006-03-21  jcbowman  <jcbowman@wizard>

	* base/three.asy, doc/asymptote.texi, fileio.h, interact.cc,
	* parser.cc, runtime.in, util.cc:
	
	Implemented interactive mode (without command-line editing and
	history) even in absence of readline library.

	Made minor change to System diagnostic messages.

	Changed invert: triple invert(pair z, triple normal, triple point)
	projects onto the plane perpendicular to normal and passing
	through point.
	
	Updated Debian URL.

2006-03-19  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, base/three.asy, settings.cc:
	
	Added function triple invert(pair v, real z, projection
	P=currentprojection) to map v onto (x,y,z) by inverting the
	projection P onto a constant z plane.

	Minor documentation updates.

2006-03-17  jcbowman  <jcbowman@wizard>

	* pen.h, triple.h: Support compilation under gcc-4.1.0.

2006-03-15  jcbowman  <jcbowman@wizard>

	* base/three.asy:
	
	Fixed return type of three-dimensional intersectionpoint routines.

2006-03-12  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 1.03cvs.

	* base/graph3.asy, main.cc:
	Fixed surface lighting colours; respect projection argument.

	Removed test diagnostic.

	* interact.cc, picture.cc, runtime.in, settings.cc, util.cc:
	Avoid need for single quotes around path settings in MSWINDOWS.

	Fix configuration diagnostics.

2006-03-12  jcbowman  <jcbowman@wizard>

	* base/graph3.asy, main.cc:
	
	Fixed surface lighting colours; respect projection argument.

	Removed test diagnostic.

	* interact.cc, picture.cc, runtime.in, settings.cc, util.cc:
	
	Avoid need for single quotes around path settings in MSWINDOWS.

	Fix configuration diagnostics.

	* doc/asymptote.texi:
	
	Documented how to install in alternate locations under MSDOS.

	Fixed typo in configuration instructions.

2006-03-11  jcbowman  <jcbowman@wizard>

	* examples/sinc.asy: Simplified example.

	* examples/sinc.asy, base/light.asy, base/three.asy,
	* doc/asymptote.texi, doc/surface.asy, base/graph3.asy:
	
	Implemented surface lighting and example of sinc function.

	Changed signature of subsampled surface routine (argument nsub now
	preceeds pairs a and b).

	Changed light.init constructor into
	light(triple source, shadefcn shade=defaultshade).

	Added cast from triple to light.

	Made currentlight public; added nolight variable.

	Renamed projectXY to xypart.

	Added XY() and XYZ() members to bbox3.

	* base/graph.asy: Fixed axis label positioning when sign=-1.

	* doc/asymptote.texi, patches/README, patches/pstoedit-3.43asy.patch:
	
	Removed pstoedit patches (included in pstoedit-3.44); updated
	documentation. 

2006-03-10  jcbowman  <jcbowman@wizard>

	* Makefile.in, doc/asymptote.texi, runtime.in:
	
	Allow make to inherit LDFLAGS from configure.

	Allow and document installation without root privileges.

	Document configuring to search for includes and libraries in
	nonstandard locations.

	* doc/asymptote.texi: Updated configuration file documentation.

	* main.cc, settings.cc:
	
	Catch errors thrown by parser while reading configuration file.

	Recompute search path after reading configuration files and
	command-line options in case dir was changed.

	Move MSWindows .asy initialization directory to %USERPROFILE%.

2006-03-07  jcbowman  <jcbowman@wizard>

	* builtin.cc: Fixed type of randMax.

	* patches/pstoedit-3.42asy.patch, patches/pstoedit-3.43asy.patch,
	* doc/asymptote.texi, examples/animations/wheel.asy,
	* base/pstoedit.asy: 
	
	Updated pstoedit patch.

	* configure.ac: Incremented version to 1.02cvs.

	* doc/asymptote.texi, base/graph3.asy:
	
	Fixed bug in surface plot of a matrix.

2006-03-06  jcbowman  <jcbowman@wizard>

	* configure.ac, runtime.in:
	
	Workaround broken GNU readline/history library on MacOS.

	* configure.ac: Incremented version to 1.01cvs.

	* runtime.in: Fixed cxx warning messages.

	* doc/asymptote.texi:
	
	Moved detailed discussion of growing list of base modules closer
	to the end of the documentation.

	* base/filldraw.asy, doc/asymptote.texi, examples/poster.asy,
	* configure.ac: 
	
	Updated to use gc6.7 by default.

	Added RadialShade filltype.

	* base/arrows.asy: Remove blank legend entries.

	* pen.h: Fixed pen bounds (too large by a factor of 2).

	* base/palette.asy: Fixed transformation of palette bar.

	* base/graph.asy: Removed empty picture check in xlimits and ylimits.

	* base/arrows.asy, base/markers.asy, base/math.asy,
	* base/palette.asy, base/picture.asy, doc/asymptote.texi, castop.h,
	* fileio.cc, fileio.h, runtime.in: 
	
	Moved linear solve and matrix inversion to C++ code; simplified memory
	allocation in tridiagonal.

	Added seek and tell functions for positioning input files.

	Make images transform properly.

	Make legend argument to draw a Label type (currently only the
	string and pen members are used). Added length and skip arguments
	to frame legend(...).

	Removed side effects from eol(file).

2006-03-05  jcbowman  <jcbowman@wizard>

	* runtime.pl: Generate correct #line comments.

2006-03-04  hammera  <hammera@wizard>

	* picture.cc, picture.h, pipestream.h:
	
	Now delete texput.log when the pipe to the tex process is closed
	(to ensure its deletion with the --inlinetex option).  Also delete
	texput.aux.

2006-03-03  jcbowman  <jcbowman@wizard>

	* base/math.asy: Fixed bug in pivot vectorization in solve.

2006-03-01  jcbowman  <jcbowman@wizard>

	* configure.ac: Added INCL for enable-gc=system.

2006-02-27  jcbowman  <jcbowman@wizard>

	* examples/animations/wheel.asy, doc/asymptote.texi,
	* examples/orthocenter.asy, base/embed.asy, base/picture.asy,
	* base/strings.asy, picture.cc, texfile.h: 
	
	Renamed includegraphics to graphic.

	Added embed module to interface with LaTeX movie15 package for
	embedding movies, sounds and 3D objects into a PDF file.

	Don't attempt to resize unbounded pictures.

	Output LaTeX pipe diagnostics even when verbose <= 1.

	Added \begin{document} to LaTeX pipe.

	* examples/poster.asy: Added poster example.

2006-02-20  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, main.cc, runtime.in, settings.cc:
	
	Add configuration dir to search path; search for configuration file in
	standard search paths (in usual order).

	Remember defaultpen set in configuration file.

2006-02-19  jcbowman  <jcbowman@wizard>

	* base/arrows.asy: Always draw arrows with solid linetype.

2006-02-18  jcbowman  <jcbowman@wizard>

	* base/graph.asy, doc/asymptote.texi, castop.h, mathop.h,
	* runtime.in, settings.cc, stack.cc, vm.h: 
	
	Updated MSDOS default of gs8.51 to gs8.53.

	Changed default for xlimits and ylimits to NoCrop.

	Work around unused variable warning messages when XDR support is
	disabled.

	Cleaned up error calls.

	Updated documentation.

	* Makefile.in: Added missing $(GCLIBS) dependency.

	* Makefile.in: Added camp.tab.h entry again.

2006-02-08  jcbowman  <jcbowman@wizard>

	* base/filldraw.asy: Removed +solid from Fill and NoFill.

	* runtime.in: Added missing xpart, ypart, zpart functions for triples.

	* base/palette.asy, psfile.cc:
	Fixed reversed image dimensions for colour density plots.

	* runtime.in: Added missing xpart and ypart functions.

2006-02-06  jcbowman  <jcbowman@wizard>

	* camperror.cc, picture.cc:
	Signal an error if write to final output file fails.

	Removed "camp: " from camp error messages for brevity.

2006-01-29  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi:
	Added link to Dario Teixeira's Asymptote and LaTeX Integration Guide.

	* base/animate.asy, runtime.in:
	
	Added file prefix option to animate and merge.

2006-01-28  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Added index entries.

	* runtime.in: Allow format("%",1).

	* base/graph.asy: Set tickMin to a and tickMax to b if Step is 0.

2006-01-17  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Added check for empty picture in xlimits and ylimits.

	* Makefile.in, runtime.in, settings.cc: Better dependency tracking.

	Removed MSDOS compiler flag in favour of __CYGWIN__. This will
	make cygwin defaults identical with those under MSDOS (outside of
	cygwin).

	* interact.cc: Fixed cxx warning.

	* Makefile.in, runtime.pl:
	
	Added Tom's alternative way of making runtime.pl not update runtime.h.

2006-01-14  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, settings.cc:
	
	Documented inlinetex mode.

	* base/feynman.asy:
	
	Updates to feyman.asy: improved photon line, use align structures.

2006-01-11  jcbowman  <jcbowman@wizard>

	* runtime.pl: Added #line directives in runtime.cc.

2006-01-10  jcbowman  <jcbowman@wizard>

	* pair.h, runtime.in:
	
	Fixed segmentation fault when bad format string is given to format.

	Fixed cast: (pair) "1".

2006-01-07  hammera  <hammera@wizard>

	* base/three.asy: Added transform3 multiplication (aliased from math).

2006-01-04  jcbowman  <jcbowman@wizard>

	* base/math.asy, base/strings.asy, doc/asymptote.texi, TODO,
	* interact.cc, runtime.in:
	
	Don't exit interactive mode on EOF (ctrl-d).

	Added tab completion option and default prompt="" to readline.

2006-01-03  jcbowman  <jcbowman@wizard>

	* settings.cc: Fixed cxx error.

	* doc/asymptote.texi, runtime.in:
	
	Changed complement to int[] complement(int[] a, int n);
	this returns the complement of the integer array a in {1,2,...,n},
	so that b[complement(a,b.length)] yields the complement of b[a].

	* Makefile.in: Removed unused line.

	* Makefile.in, base/strings.asy, camp.l, dec.h, doc/asy.1,
	* doc/asymptote.texi, interact.cc, interact.h, main.cc, runtime.in,
	* settings.cc, settings.h, types.cc, types.h:
	
	Added interface to GNU readline library to allow editing with
	history when reading data from stdin. Updated getstring, getreal,
	etc. in strings.asy to use this new readline function.

	Added complement(int[] a, T[] b) function to return the complement
	of the integer array a in {1,2,...,b.length}, so that
	b[complement(a,b)] yields the complement of b[a].

	Generated dataSettings from a templated struct; added intSetting.

	Added historylines option (default is still 1000).

	Added array check to arrayConditional.

	Updated documentation.

	* entry.h: Formatted.

2006-01-01  jcbowman  <jcbowman@wizard>

	* main.cc: Move more initialization code before setOptions.

	Check em in signal handlers.

2005-12-31  jcbowman  <jcbowman@wizard>

	* settings.cc: Address compilation problem under MacOS X 10.3.9.

	* configure.ac: Incremented version to 1.00cvs.

	* doc/asymptote.texi: Minor documentation updates.

	* settings.cc: Added missing (mem::string).

	* settings.cc:
	
	Defer initialization of settingsModule to solve race condition.

2005-12-30  jcbowman  <jcbowman@wizard>

	* main.cc:
	
	Initialize GC before calling setOptions.

	* doc/asymptote.texi, main.cc, wce:
	
	Don't stop running after first error in a runnable if -debug is set.

	Updated wce.

	Documented contributed MacOS X binary.

	* configure.ac: Incremented version to 0.99cvs.

	* doc/asymptote.texi: Minor documentation updates.

	* doc/asymptote.texi, builtin.cc, interact.cc, main.cc,
	* picture.cc, refaccess.h, runtime.in, settings.cc, util.cc:
	
	Fixed compilation problem under g++-3.3.4.

	Change addConstant to use itemRefAccess.

	Search in usual paths for config.asy if ~/.asy/config.asy is not found.

	Convert configuration variable names to lower case.

	Update diagnostics and documentation: emphasize use of configuration
	variables instead of system environment variables.

	* doc/asymptote.texi, doc/latexusage.tex:
	
	Removed obsolete -t option from documentation, which is no
	longer required for inline tex mode. 

	* builtin.cc, genv.cc, main.cc, refaccess.cc, refaccess.h,
	* runtime.in, settings.cc, settings.h:
	
	Fixed cxx errors.

2005-12-29  jcbowman  <jcbowman@wizard>

	* base/picture.asy:
	
	Suppress warning messages when shipping out an empty picture.

	* base/constants.asy, base/filldraw.asy, base/graph.asy,
	* base/simplex.asy, base/stats.asy, base/three.asy,
	* doc/asymptote.texi, builtin.cc, main.cc, runtime.in, settings.cc: 
	
	Implemented machine constants as variables rather than functions.

	Added ASYMPTOTE_CONFIG environment variable.

	Moved ASYMPTOTE_DIR environment variable to settings.

	Do an initial read of command line in case CONFIG or DIR were
	specified.

	* builtin.cc, main.cc, picture.cc, settings.cc, settings.h:
	
	Moved ASYMPTOTE_PAPERTYPE to settings.

2005-12-29  hammera  <hammera@wizard>

	* util.cc:
	
	Moved argument parsing to avoid writing to memory between a fork
	and an exec. 

2005-12-29  jcbowman  <jcbowman@wizard>

	* interact.cc, main.cc, picture.cc, runtime.in, settings.cc,
	* settings.h:
	
	Moved environment variables into settings.

	Call doConfig before reading command line options.

	* base/constants.asy, builtin.cc, runtime.in:
	
	Implemented addConstant and pi example.

2005-12-28  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, dec.cc, interact.cc, main.cc,
	* picture.cc, settings.cc: 
	
	Removed ~/.asy/options in favour of ~/.asy/config.asy.

	Add "Including filename" diagostic.

	Fixed localhistory.

	Speeded up initialization by turning off autoplain when reading
	configure file.

	Renamed position to align.

	Updated documentation.

	* runtime.in: Fixed verbose flag.

	* doc/asymptote.sty, drawlabel.cc, exp.cc, genv.cc, guide.h,
	* knot.cc, main.cc, picture.cc, pipestream.h, settings.cc,
	* settings.h, stack.cc, texfile.cc, texfile.h, util.cc: 
	
	Removed -t option, which is no longer needed to produce inline tex
	code.

	Removed unused settings code.

	Added -nov option.

	Improved formatting of option messages.

	Hide oneFileView and inlinetex (formerly texmode) from help menu.

2005-12-26  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/picture.asy:
	
	Fixed tick computation in xaxis and yaxis when explicit limits are
	given.

2005-12-25  hammera  <hammera@wizard>

	* settings.cc:
	
	Removed the -n, -no option in favour of -blah/-noblah style negations.

2005-12-24  hammera  <hammera@wizard>

	* settings.cc:
	
	Improved error reporting when parsing command line options
	Autogenerate -help output.

	* locate.h, main.cc, pen.h, picture.cc, pipestream.h, record.cc,
	* record.h, refaccess.cc, refaccess.h, runtime.in, settings.cc,
	* settings.h, stack.cc, texfile.cc, texfile.h, util.cc, Makefile.in,
	* access.cc, access.h, coder.cc, coder.h, dec.cc, drawlabel.cc,
	* exp.cc, genv.cc, guide.h, interact.cc, knot.cc: 
	
	Added a settings module.  Re-implemented command line options to
	modify variables of the settings module.  Added refaccess to
	access C++ variables as Asymptote variables.

2005-12-22  jcbowman  <jcbowman@wizard>

	* fileio.h, fileio.cc: Fixed string reads.

2005-12-18  jcbowman  <jcbowman@wizard>

	* fileio.cc: Check for cvsmode in ignoreComment.

2005-12-17  jcbowman  <jcbowman@wizard>

	* fileio.cc: Allow comments within 3d data blocks.

	* base/Label.asy, base/arcs.asy, base/constants.asy,
	* base/paths.asy, base/three.asy, doc/asymptote.texi, arrayop.h,
	* builtin.cc, fileio.h, main.cc: 
	
	Removed writeP in favour of write.

	Stop running after first error in a runnable.

	Standardized write argument names.

	* base/pens.asy: Added fonts.

	* types.h, builtin.cc: Fixed cxx errors and warning messages.

	* TODO, access.cc, access.h, application.cc, arrayop.h,
	* base/Label.asy, base/arcs.asy, base/arrows.asy, base/boxes.asy,
	* base/constants.asy, base/filldraw.asy, base/geometry.asy,
	* base/graph.asy, base/margins.asy, base/markers.asy,
	* base/paths.asy, base/pens.asy, base/picture.asy, base/plain.asy,
	* base/shipout.asy, base/strings.asy, base/transforms.asy,
	* builtin.cc, builtin.h, dec.cc, dec.h, doc/asymptote.texi,
	* fundec.cc, fundec.h, mathop.h, runtime.in, runtime.pl, types.cc,
	* types.h: 
	
	Added type-dependent function and record operators to parent record.

	Cleaned up builtin.cc.

	Moved two- and three-dimensional array min and max functions to
	C++ code.

	Split plain.asy into many subfiles (using include rather than
	import for speed).

2005-12-15  jcbowman  <jcbowman@wizard>

	* base/plain.asy, builtin.cc, builtin.h, runtime.in, runtime.pl:
	
	Allow explicit keywords in autogenerated code.

	Moved default arguments from plain.asy to runtime.in.

	Respect currentpen nib.

	* configure.ac: Incremented version to 0.98cvs.

	* pen.h, runtime.in, drawelement.h: Fixed pen transform bug.

	* interact.cc:
	
	Make recent readline startup changes compatible with readline-4.0
	under UNIX.

	* base/plain.asy, doc/asymptote.texi, builtin.cc, dec.cc, errors,
	* fundec.cc, runtime.in, types.cc, types.h: 
	
	Added missing names and fixed incorrect names for builtin function
	arguments.
	
	Removed duplicate functions.

	* interact.cc:
	
	Workaround readline incompatibility under MacOS X 10.4.3.

	* configure.ac: Incremented version to 0.97cvs.

	* picture.cc, pipestream.h, settings.cc, settings.h:
	
	Make MSDOS binary work under both MSWINDOWS and CYGWIN.

2005-12-14  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Fixed spelling.

	* doc/asymptote.texi:
	
	Document that the -V option under MSDOS is the default only when a
	single file is given.

	* runtime.in: Fixed cxx warning messages.

	* doc/asymptote.texi, fundec.h, types.cc, types.h, arrayop.h,
	* builtin.cc, application.cc:
	
	Allow explicit keyword in builtin function definitions.

	Added write(file fout=stdout, string s="", explicit T[] x ... T[][]);
	function for writing a list of vectors as columns.

	Updated documentation of write routines.

	* array.h, arrayop.h, builtin.cc, runtime.in:
	
	Fix segmentation fault by checking for null arrays in dotsGuide,
	dashesGuide, and 3d intersect.

2005-12-13  jcbowman  <jcbowman@wizard>

	* runtime.in: Fixed order of autogenerated newAppendedArray arguments.

	* interact.h, main.cc, runtime.cc, runtime.h, runtime.in, runtime.pl:
	
	Fixed cxx error and warning messages.

	Make time(string) simply return format string on systems without
	strftime.

	Removed generated files.

	* Makefile.in, arrayop.h, base/plain.asy, builtin.cc, builtin.h,
	* cast.cc, castop.h, doc/asymptote.texi, drawclipbegin.h, env.cc,
	* env.h, exp.cc, genrun.h, genv.cc, picture.cc, picture.h,
	* runtime.cc, runtime.h, runtime.in, runtime.pl, types.cc: 
	
	Autogenerate remaining runtime functions, producing runtime.cc and
	runtime.h. 

2005-12-12  jcbowman  <jcbowman@wizard>

	* builtin.cc, runtime.cc, runtime.in, runtime.pl, transform.h:
	
	Make default transform constructor the identity.

	Allow operator keyword in autogenerated functions (optional,
	except for operator *).

	Autogenerate more runtime functions.

	* runtime.cc, runtime.in, runtime.pl, builtin.cc:
	
	Fixed comment handling of runtime.pl; added prototype comments.

	Autogenerate remaining array functions.

2005-12-11  jcbowman  <jcbowman@wizard>

	* arrayop.h, builtin.cc, runtime.cc, runtime.h, runtime.in, runtime.pl:
	
	Autogenerate runtime array operations.

2005-12-09  jcbowman  <jcbowman@wizard>

	* runtime.cc, runtime.in, builtin.cc:
	
	Autogenerate more runtime functions.

2005-12-07  jcbowman  <jcbowman@wizard>

	* base/plain.asy, builtin.cc, builtin.h, doc/asymptote.texi,
	* drawlabel.cc, drawlabel.h, runtime.cc, runtime.h, runtime.in,
	* runtime.pl, stack.h: 
	
	Updated runtime.pl to generate named arguments and optional
	default values.

	Auto-generate many more runtime routines.

	Use transform and pen instead of transform* and pen* for
	consistency with other types.

	* application.h: Fixed recently-introduced memory leak.

2005-12-06  hammera  <hammera@wizard>

	* camp.y: Made brackets part of the syntax for 'quote'.

2005-12-06  jcbowman  <jcbowman@wizard>

	* exp.cc, exp.h: Formatting.

	* doc/asymptote.texi, builtin.cc, types.h:
	
	Implement named arguments for builtin functions.

	* main.cc:
	
	Make translate (-s option) work with eval (requires running codelets).

2005-12-06  hammera  <hammera@wizard>

	* application.cc, application.h:
	
	Fixed sequenced evaluation of packed arguments.

2005-12-05  jcbowman  <jcbowman@wizard>

	* arrayop.h, base/plain.asy, base/three.asy, builtin.cc,
	* doc/asymptote.texi, doc/makepen.asy, fileio.h, fundec.cc, item.h,
	* runtime.cc, runtime.h, stack.h, types.h, varinit.h: 
	
	Optimized isDefault test.

	Implemented default function arguments for builtin functions.

	Made write routines builtin functions.

2005-12-04  jcbowman  <jcbowman@wizard>

	* fundec.h: Remove obsolete remark about default function arguments.

2005-12-03  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/makepen.asy:
	
	Documented makepen, nib, Sin, Cos, Tan, aSin, aCos, aTan, and
	fontcommand.

	* doc/asymptote.texi: Documented BeginPoint, MidPoint, EndPoint.

2005-12-02  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Removed unneeded assignment.

	* base/plain.asy:
	
	Replaced midarrow routine with generalized arrow routine.

	* base/plain.asy:
	
	Do MidArrow and MidArcArrow size adjustment in PostScript rather
	than user coordinates.

	* base/plain.asy, base/roundedpath.asy, doc/asymptote.texi,
	* examples/mosaic.asy, examples/roundpath.asy:
	
	Added contributed examples and a routine to round the sharp
	corners of a path.

	Reordered the list of available modules.

	* pair.h, path.cc: Handle angle(0,0) condition robustly.

2005-12-01  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/asymptote.texi, doc/makepen.asy, pair.h, path.cc:
	
	Ignore angle(0,0) errors in dirtime.

	Preserve output precision when outputting paths of any length.

	Fixed makepen draw routine (makedraw).

2005-12-01  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Minor optimization of makepen draw.

	* doc/makepen.asy, base/plain.asy:
	
	Revert broken optimization of makepen draw.

2005-11-30  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Simplified makepen draw; extend to cyclic paths.

	* base/plain.asy, doc/makepen.asy, pen.h, runtime.cc, runtime.in:
	
	Added MetaPost-like makepen that works for any polygonal (possibly
	nonconvex) cyclic path.

	* main.cc:
	
	Call purge after each interactive line to close any files that
	have gone out of scope.

	Suppress interactive update on exit.

2005-11-29  jcbowman  <jcbowman@wizard>

	* main.cc: Make estack and sstack static local variables.

	* base/graph.asy: Added filltype to labeltick.

2005-11-28  jcbowman  <jcbowman@wizard>

	* picture.cc: Fix -o - with labels.

	* examples/sphere.asy, base/light.asy, base/three.asy,
	* doc/asymptote.texi, TODO, picture.cc, settings.cc, settings.h:
	
	Added example of 3d lighting effects for a sphere, using Gouraud
	shading.

	When running MSDOS binary under CYGWIN, use UNIX line terminator.

2005-11-26  jcbowman  <jcbowman@wizard>

	* base/three.asy: Check for null binary space partition.

	Move normal==O test to face.

	* doc/asymptote.texi, picture.cc:
	
	Make -o - work without labels.

	Document how to pass options to convert.

2005-11-25  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Minor improvements.

	* base/plain.asy, doc/asymptote.texi, main.cc:
	
	Added unitsize argument to shipout command (makes user coordinates
	represent multiples of unitsize).

	Suppress final call to exitfunction when exiting interactive mode.

2005-11-24  jcbowman  <jcbowman@wizard>

	* interact.cc, settings.cc:
	
	Under MSDOS, turn off the default -V option if more than one file is
	specified on the command line.

	Under MSDOS, by default bind Delete and Insert keys to delete-char and
	overwrite-mode, respectively.

	* Makefile.in: Install *.dat and piicon.eps files.

2005-11-23  jcbowman  <jcbowman@wizard>

	* interact.h, picture.cc, pipestream.h, runtime.cc, texfile.cc,
	texfile.h: 
	
	Always destroy tex pipe at cleanup (e.g., in case a label contains
	a \gdef command).

	* main.cc: Unwrap wrapper.

	* dec.cc:
	
	Fixed segmentation fault with unravel and from access in parse
	diagnostic. 

	* doc/asymptote.texi:
	
	Documented ImageMagick convert dependency of GUI xasy.

	* doc/asy.1, doc/asymptote.texi, doc/xasy.1x, settings.cc:
	
	Renamed -n option to -nV. Used -n (or -no) to negate next option.

2005-11-22  jcbowman  <jcbowman@wizard>

	* configure.ac: Use kpsewhich to help find default latex path.

	* main.cc, parser.cc: Improved diagnostics.

	* genv.cc: Check for module recursion after call to parseFile.

	* base/graph.asy, base/plain.asy, doc/asymptote.texi:
	
	Removed incorrect (and unnecessary) addPoint call from xaxis and yaxis.

	Made axisT readable outside of graph module. Made standard axis
	types public.

	Document custom axis types.

	* configure.ac: Incremented version to 0.96cvs.

	* doc/asymptote.texi: Fixed indentation.

2005-11-22  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Fixed indentation.

	* builtin.cc, doc/asymptote.texi, fileio.h, interact.cc,
	* interact.h, main.cc, runtime.cc, runtime.h, runtime.in:
	
	Reimplemented reset keyword in interactive mode to restore the
	environment except for the setting of scroll().

	Interactive input now does an automatic reset.

	Added link to the GNU readline library documentation for customizing
	interactive key bindings.

	Fixed hang in scroll mode on EOF.

	* base/plain.asy: Move legend.append to appropriate place.

2005-11-21  jcbowman  <jcbowman@wizard>

	* texfile.cc, texfile.h:
	
	Use scalebox only where necessary, to reduce LaTeX memory usage.

2005-11-20  jcbowman  <jcbowman@wizard>

	* application.h: Plugged remaining memory leak.

	* application.h: Plug another memory leak.

	* application.h: Fixed memory leak.

2005-11-19  jcbowman  <jcbowman@wizard>

	* main.cc: Put GC warnings under control of -d option.

	* main.cc:
	
	Suppress GC warning messages (in particular: "Repeated allocation
	of very large block").

	* doc/asymptote.texi, interact.cc, interact.h, main.cc:
	
	Make interactive input command reset the environment.

2005-11-17  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Removed old documentation.

	* configure.ac: Incremented version to 0.95cvs.

2005-11-17  jcbowman  <jcbowman@wizard>

	* base/plain.asy, camp.y, dec.cc, dec.h, doc/asymptote.texi:
	
	Changed import graph; to abbreviation for access graph; unravel graph.
	
	Also: import graph as graph2d; means access graph as graph2d;
	unravel graph2d.

	Updated documentation; removed descriptions of old import scheme.

	* doc/asymptote.sty, runtime.in:
	
	Force quiet mode with running embedded latex files.

2005-11-16  jcbowman  <jcbowman@wizard>

	* entry.h: Reduce memory usage.

	* main.cc: Use a vector instead of a list for estack and sstack.

	* doc/asymptote.sty, texfile.h:
	
	Reverse order of pstricks and graphicx also in asymptote.sty.

	Fixed formatting.

2005-11-16  hammera  <hammera@wizard>

	* entry.cc: Slight refactoring.

2005-11-16  jcbowman  <jcbowman@wizard>

	* texfile.cc, texfile.h:
	
	Workaround scalebox problem with old versions of pstricks.

2005-11-16  hammera  <hammera@wizard>

	* base/geometry.asy, entry.cc, entry.h, exp.h, name.cc, name.h:
	
	Fixed frame loading issues with imported types.

2005-11-16  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.94cvs.

	* picture.cc: Fixed cygwin problem.

	* doc/Makefile: Added mkdir.

	* texfile.cc:
	
	Revert to pstricks colors instead of color.sty due to problems
	under FreeBSD. 

	* configure.ac, runtime.in:
	
	Workaround missing C99 gamma function under FreeBSD.

	* doc/asymptote.texi: Documentation updates.

	* base/asy-mode.el: Added new keyword.

	* mathop.h: Fixed more cxx warnings.

	* settings.cc: Fixed cxx errors and warnings.

	* base/version.asy.in: Version template.

	* base/plain.asy, runtime.in, configure.ac:
	
	Added version check to plain.asy.

	* doc/asy.1, doc/asymptote.texi, interact.cc, settings.cc, settings.h:
	
	Put history in ~/.asy/history by default unless -localhistory is
	specified.

	Renamed ~/.asyrc to ~/.asy/options

	Updated documentation.

	* settings.cc: Read command line style-parameters from $HOME/.asyrc

	* base/feynman.asy, base/geometry.asy, base/graph.asy,
	* base/graph3.asy, base/metapost.asy, base/plain.asy,
	* base/pstoedit.asy, base/three.asy, examples/elliptic.asy: 
	
	Removed superfluous static modifiers.

2005-11-15  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, base/graph3.asy, base/math.asy:
	
	Added surface graph for matrices.

	* base/graph3.asy, doc/cube.asy, doc/generalaxis3.asy,
	* doc/helix.asy, doc/join3.asy, doc/surface.asy, examples/epix.asy: 
	
	Importing graph3 should publically import graph and three.

	* base/plain.asy, doc/asymptote.texi, drawlabel.cc, drawlabel.h,
	* runtime.in, texfile.cc, texfile.h: 
	
	Implemented horizontal and vertical label scaling.

	Cleaned up Label code in plain.asy.

2005-11-14  jcbowman  <jcbowman@wizard>

	* mathop.h: Optimized integer overflow checks.

	* builtin.cc, castop.h, doc/asymptote.texi, mathop.h, runtime.cc,
	* runtime.in: 
	
	Added checks for integer overflow.

	* main.cc: Handle parse errors.

2005-11-14  hammera  <hammera@wizard>

	* doc/asymptote.texi: Minor edits.

2005-11-14  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Documented "from m unravel c as C;" syntax.

	* doc/asymptote.texi: Minor update.

	* doc/asymptote.texi:
	
	Documented unravel and include. Updated documentation of execute
	and eval. 

2005-11-13  hammera  <hammera@wizard>

	* doc/asymptote.texi: Describes new importing system.

2005-11-13  jcbowman  <jcbowman@wizard>

	* main.cc: Fixed memory leak.

	* errormsg.h: Removed constructor added in error.

	* builtin.cc, coder.h, dec.cc, errormsg.h, exp.h, genv.h, main.cc,
	* memory.h, runtime.cc, runtime.in, stack.h, table.h, util.h: 
	
	Fixed cxx errors and warnings.

2005-11-12  hammera  <hammera@wizard>

	* entry.cc, entry.h: Added venv::add to NOHASH.

2005-11-12  jcbowman  <jcbowman@wizard>

	* dec.cc: Another workaround for gcc 3.3.4 problems.

	* main.cc: Workaround problem with gcc-3.3.4.

	* doc/asymptote.texi, runtime.in: Added erf,erfc, and gamma functions.

	* runtime.cc, doc/asymptote.texi:
	
	Make quotient(int,int) consistent with %.

	* camp.l: Fix **.

2005-11-12  hammera  <hammera@wizard>

	* camp.y, dec.cc, dec.h, env.cc, env.h, genv.cc, genv.h, main.cc,
	* runtime.cc: 
	
	Replaced std::string with mem::string for genv.
	
	Moved error reporting associated with 'as'.

2005-11-12  jcbowman  <jcbowman@wizard>

	* picture.cc: Added missing delete.

2005-11-11  jcbowman  <jcbowman@wizard>

	* picture.cc: Make bounding box computation work with -o -.

	* doc/asymptote.texi, picture.cc:
	
	Allow outputting to standard output with "-o -" command line option.

	* doc/asymptote.texi, settings.cc, picture.cc:
	
	Set default pdf viewer to acroread under UNIX, just like under MSDOS.

	Removed pdf fuzz (a workaround for a pdf-viewing problem only of
	gv, not other pdf viewers).

2005-11-10  hammera  <hammera@wizard>

	* application.cc, application.h:
	
	Refactored argument matching functions.

2005-11-10  jcbowman  <jcbowman@wizard>

	* interact.cc: Removed old interactive buffer flushing code.

	* base/plain.asy, doc/asymptote.texi, doc/shadedtiling.asy,
	* examples/Gouraud.asy, examples/latticeshading.asy,
	* examples/ring.asy, examples/shade.asy, builtin.cc, dec.h: 
	
	Choose more descriptive names latticeshade, axialshade,
	radialshade, and gouraudshade for shading routines.

	* fileio.cc:
	
	Respect final null entry when reading data in csv mode (fixed).

	* camp.l: Flush input buffer every time we enter parser.

	* base/asy-mode.el, examples/treetest.asy:
	
	Added new keywords; fixed treetest.

	* base/plain.asy, base/three.asy, doc/asymptote.texi:
	
	Documentation updates.

2005-11-09  hammera  <hammera@wizard>

	* base/asy.vim, base/plain.asy, base/three.asy, camp.y, dec.cc,
	* dec.h, entry.cc, entry.h, env.h, fundec.cc, stm.cc, stm.h,
	* camp.l: 
	
	Extended access and unravel syntax.

2005-11-09  jcbowman  <jcbowman@wizard>

	* main.cc: Make embedded evals work within exitfunction.

	* base/plain.asy, builtin.cc, interact.cc, main.cc, parser.cc,
	* picture.cc, runtime.cc, runtime.h, runtime.in: 
	
	Reimplemented GUI support.

2005-11-08  hammera  <hammera@wizard>

	* dec.cc, genv.cc, genv.h, parser.cc:
	
	Check for infinite recursion when loading modules.
	
	Add position info (markTrans) for codelets.

2005-11-08  jcbowman  <jcbowman@wizard>

	* examples/hierarchy.asy, base/plain.asy, builtin.cc,
	* doc/asymptote.texi: 
	
	Renamed defaultpen() to resetdefaultpen() and getdefaultpen() to
	defaultpen().

	* errors, genv.cc, wce: Updated diagnostics.

	* TODO, main.cc: Re-implemented -p (parse) and -s (translate) options.

	* base/plain.asy, camp.l, doc/asymptote.texi, patches/dvipdf:
	
	Corrections from import merge.

	* camp.y, dec.h, doc/asymptote.texi, errormsg.cc, interact.cc,
	* main.cc, runtime.cc:
	
	Reimplemented import "file" syntax.

	Interactive mode updates; reimplemented interactive "input" command.

	Documented true interactive mode.

	* Makefile.in, configure.ac, doc/Makefile:
	
	Facilitate optional installation of documentation and examples to
	different directories.

	* doc/errorbars.asy: Added missing picture arguments to graph.

	* examples/animations/cube.asy, examples/animations/wheel.asy,
	* fileio.cc, fileio.h: 
	
	Remaining import updates.

2005-11-07  hammera  <hammera@wizard>

	* Makefile.in, absyn.h, access.cc, access.h, application.h,
	* arrayop.h, base/animate.asy, base/asy.vim, base/featpost3D.asy,
	* base/geometry.asy, base/graph.asy, base/graph3.asy,
	* base/palette.asy, base/plain.asy, base/simplex.asy,
	* base/stats.asy, base/three.asy, builtin.cc, camp.l, camp.y,
	* coder.cc, coder.h, coenv.h, dec.cc, dec.h, doc/asymptote.sty,
	* entry.cc, entry.h, env.cc, env.h, examples/Pythagoras.asy,
	* examples/orthocenter.asy, exp.cc, exp.h, fileio.h, fundec.cc,
	* genv.cc, genv.h, import.cc, import.h, importaccess.h, interact.cc,
	* interact.h, locate.cc, main.cc, name.cc, name.h, newexp.cc,
	* newexp.h, parser.cc, patches/dvipdf, picture.cc, record.cc,
	* record.h, runtime.cc, runtime.h, runtime.in, settings.cc,
	* settings.h, stack.cc, stack.h, stm.cc, stm.h, table.h, types.cc,
	* types.h: 
	
	Merged in changes from the import branch.

2005-11-06  jcbowman  <jcbowman@wizard>

	* camp.l, doc/asymptote.texi: Removed # and ## as admissible operators.

2005-11-03  jcbowman  <jcbowman@wizard>

	* fileio.cc: Temporarily deactivate last change.

	* fileio.cc, fileio.h:
	
	Respect final null entry when reading data in csv mode.

	* base/fontsize.asy, doc/asymptote.texi, camp.l, camp.y:
	
	Added infix operators << >> @ @@ $ $$ # ##.

	New module fontsize.asy supports nonstandard fonts.

2005-10-30  jcbowman  <jcbowman@wizard>

	* camp.y: Allow expressions of the form (0,0,0){x,y,z}.

2005-10-29  jcbowman  <jcbowman@wizard>

	* base/plain.asy, camp.l: Re-added tension3 and curl3 keywords.

2005-10-28  jcbowman  <jcbowman@wizard>

	* doc/version.texi.in, configure.ac, doc/asymptote.texi, psfile.cc:
	
	Documentation now refers to Datadir variable rather than
	/usr/local/share.

2005-10-26  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Fixed typo.

2005-10-25  jcbowman  <jcbowman@wizard>

	* main.cc:
	
	Return a definite return code (rather than an error count that
	overflows after 256 errors). Also check for parse and translation
	errors. A return code of 0 means successful; 1 means a user error
	occurred; -1 signals a misconfiguration error (pipe, fork, or exec
	failed).

	* doc/Makefile, doc/asymptote.texi, base/plain.asy:
	
	Set default put argument of box and ellipse functions to Above.

	Use convert instead of dvipng in doc/Makefile.

	Updated Debian URL.

2005-10-23  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.93cvs.

	* runtime.cc: Fixed cd diagnostic.

	* drawlabel.cc: Fixed label bbox bug.

	* base/plain.asy, base/three.asy, doc/asymptote.texi,
	* doc/helix.asy, path.cc:
	
	Fixed intersect fuzz calculation.

	Implemented means of adjusting 3d aspect ratio.

2005-10-22  jcbowman  <jcbowman@wizard>

	* xasy: Updated xasy to generate GUI(int) frames instead of gui(int).

	* bbox.h, runtime.in: Workaround missing round function under FreeBSD.

	* path.cc: Fixed cxx errors.

	* doc/brokenaxis.asy: Fixed example.

	* doc/brokenaxis.asy: Added missing example.

	* doc/asymptote.texi, base/graph.asy:
	
	Added scaleT Broken and example of broken x axis.

	* base/plain.asy, doc/asymptote.texi, doc/errorbars.asy,
	* doc/image.asy, doc/subpictures.asy, examples/elliptic.asy,
	* examples/laserlattice.asy, examples/progrid.asy:
	
 	Moved dir argument of picture.fit() to add(frame,pair) and
	attach(frame,pair).
	
	Added frame align(frame f, pair dir) for aligning frames.

	* doc/errorbars.asy, doc/asymptote.texi:
	
	Implemented a new struct marker to hold marker data, including a
	general markroutine. Included both the default marknodes routine and a
	markuniform(int n) routine which draws n markers at evenly spaced
	intervals along the arclength of the path.

2005-10-21  jcbowman  <jcbowman@wizard>

	* main.cc, picture.cc, util.cc, util.h, xasy:
	
	Don't strip directory from explicit output filenames.
	
	* doc/asymptote.texi, doc/lineargraph.asy, doc/lineargraph0.asy,
	* base/plain.asy: 
	
	Documentation updates.

2005-10-20  jcbowman  <jcbowman@wizard>

	* base/math.asy, base/plain.asy, base/three.asy,
	* doc/asymptote.texi, doc/lineargraph.asy, doc/lineargraph0.asy,
	* Makefile.in, knot.cc, picture.cc, texfile.cc: 
	
	Added CPPFLAGS option to configure.ac (equivalent to CFLAGS).

	Fixed spurious overwrite messages.

	Added fuzz to label clipping to retain labels exactly on boundary.

	Moved intersectionpoint to plain.asy and added documentation.

	Renamed intersection in math.asy to intersect.

	Added UnFill filltype for clipping underneath frames, pictures,
	and labels, with examples.

	Make save/restore respect currentprojection.

	Added 3d intersectionpoint routines to three.asy.

	Added instructions for setting environment variables under
	MSWindows XP.

	Removed ymargin=infinity in favour of ymargin=xmargin.

	Documented use of Cyrillic fonts.

	Documented that \end{asy} environment must appear on a line by itself.

2005-10-15  jcbowman  <jcbowman@wizard>

	* base/graph.asy:
	
	Fix precision errors at +/-1e-4; default format changes to scientific
	notation here.

	* base/plain.asy: Fixed inside(path,pair).

2005-10-14  jcbowman  <jcbowman@wizard>
 
	* base/graph.asy, base/math.asy, base/plain.asy, base/three.asy,
	* doc/asymptote.texi, doc/leastsquares.asy,
	* examples/animations/cube.asy, examples/laserlattice.asy,
	* examples/star.asy, INSTALL, builtin.cc, drawclipbegin.h,
	* drawclipend.h, drawelement.h, drawfill.h, drawlabel.cc,
	* drawlabel.h, knot.cc, pair.h, path.cc, path.h, pen.h, picture.cc,
	* picture.h, psfile.h, runtime.cc, runtime.h, runtime.in,
	* texfile.cc, texfile.h: 
	
	Implemented robust real cubic root solver.

	Removed inside, quadratic solver, and intersect routines from
	math.asy in place of internal C++ routines. Changed DOUBLE to TWO,
	etc., to avoid confusion with double roots.

	Implemented function bool inside(path g, pair z, pen p=currentpen);
	to test whether a point is inside a cyclic path.

	Implemented clipping of labels. Added two new fill rules to allow
	labels centered within the clipped region to overlap the clipping
	boundary.

	Clipping now clips all layers of a picture, not just the most
	recent one.

	Fixed bug in precontrol and postcontrol.

	Fixed floating point exception in complex powers when base is zero.

	Added Floor, Ceil, and Round functions that don't produce floating
	point exceptions.

	Made the default axis for logarithmic scaling YEquals(1) and
	XEquals(1).
	
	Made currentpicture the default picture in Scale(pair).

	Added begingroup/endgroup pairs to filldraw.

	Draw over existing TeX layers when doing 3d hidden surface removal.

	Added face labels to cube animation.

	Updated installation instructions.

2005-10-13  hammera  <hammera@wizard>

	* Makefile.in, access.h, application.h, base/plain.asy,
	* base/simplex.asy, coder.h, dec.cc, env.cc, env.h, genv.cc,
	* import.cc, import.h, importaccess.h, name.cc, name.h, record.cc,
	* record.h: 
	
	Grouped common code between record and env into protoenv.

	* exp.cc, exp.h: Fixed prettyprinting of joinExp.

	* env.cc, exp.cc: More specific error message for casting.

	* stm.cc: Fixed indenting for parse output.

2005-10-13  jcbowman  <jcbowman@wizard>

	* knot.h:
	
	Fixed control point bug introduced by recent straight flag fix.

2005-10-12  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Make default value of picture.keepAspect true.

	* base/plain.asy:
	
	Use picture defaults as default parameters in fit and size functions
	(locally resolved default function arguments now allow this).

2005-10-12  hammera  <hammera@wizard>

	* access.h, builtin.cc, dec.cc, dec.h, entry.h, env.h, exp.h,
	* fundec.cc, name.cc, name.h, newexp.cc, newexp.h, record.h,
	* access.cc: 
	
	Replace ty with tyEntry for type declarations.  Allows types to be
	imported.
	
	* dec.cc: Edited comment.

	* flatguide.cc, knot.cc, knot.h:
	
	Straight flags are preserved when using a path as part of a guide.

2005-10-08  hammera  <hammera@wizard>

	* fundec.cc:
	
	Default arguments are evaluated "out-of-order" like variable
	initializers.

2005-10-07  jcbowman  <jcbowman@wizard>

	* Makefile.in, base/three.asy, doc/asymptote.texi, doc/planes.asy,
	* examples/animations/cube.asy, examples/animations/wheel.asy,
	* examples/cubeanimation.asy, examples/wheelanimation.asy: 
	
	Moved animations to animations subdirectory of examples directory.

	plane(triple u, triple v, triple O=three.O) now returns the plane
	through point O with normal cross(u,v)

	* base/plain.asy, base/three.asy, doc/asymptote.texi,
	* doc/planes.asy, examples/cubeanimation.asy,
	* examples/wheelanimation.asy, runtime.cc:
	
	Simplified plane(triple, triple, triple).

	Simplified Pen(int).

	merge no longer waits for animation to complete.

	Added rotating cube animation.

2005-10-06  jcbowman  <jcbowman@wizard>

	* doc/loggrid.asy: Fixed formatting.

	* doc/loggrid.asy: Added linewidth().

	* base/feynman.asy, base/plain.asy, doc/asymptote.texi,
	* examples/conicurv.asy, examples/triads.asy,
	* examples/wheelanimation.asy, builtin.cc: 
	
	Removed implicit cast from real to pen;
	added pen operator +(pen p, real w) and defaultpen(real) instead.

	To avoid confusion, a dot product now requires explicit pair arguments.

	* examples/epix.asy: Added new 3d surface example.

2005-10-06  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/leastsquares.asy, doc/leastsquares.dat,
	* base/plain.asy:
	
	Added example of reading column data from a file and a least
	squares fit.
	
	Changed xsize and ysize arguments of size to simply x and y.

	* doc/asymptote.texi, base/plain.asy:
	
	Added keepAspect=Aspect option to size(pic,real).

	* base/stats.asy: Added colinearity checks to leastsquares.

2005-10-05  jcbowman  <jcbowman@wizard>

	* base/graph.asy:
	
	Use local copy of ticklabel and Label context variables.

	* base/graph.asy: Reduce default axis coverage limit to 80%.

	* doc/asymptote.texi: Minor documentation updates.

2005-10-04  jcbowman  <jcbowman@wizard>

	* picture.cc, settings.cc:
	
	Fixed default location of python under MSDOS.

	Improved ASYMPTOTE_PYTHON/ASYMPTOTE_XASY diagnostics.

	* doc/asymptote.texi, base/plain.asy, genv.cc, main.cc,
	* picture.cc, runtime.in, settings.cc, settings.h: 
	
	Added Windows support for xasy, including an environment variable for
	finding Python.

	Allow GUI mode in interactive mode.

	Added gui(real x=1) function to turn on GUI mode.

	* runtime.cc: Remove intermediate gif files before viewing animation.

	* base/plain.asy, doc/asymptote.texi, examples/wheelanimation.asy,
	* patches/ImageMagick.patch, builtin.cc, picture.cc, picture.h,
	* runtime.cc, settings.cc, settings.h: 
	
	Added quiet option to override -V command line option, say for
	producing animated gifs. If the -V option is given, gifmerge now
	calls animate.

	* configure.ac: Incremented version to 0.92cvs.

2005-10-04  jcbowman  <jcbowman@wizard>

	* base/plain.asy:
	
	Fixed GUI transforms: grouping should not depend on deconstruct flag.

	* configure.ac: Incremented version to 0.91cvs.

	* examples/limit.asy, pipestream.h, util.cc:
	
	Flush stdout immediately before calls to fork() to avoid duplicate
	output.

2005-10-03  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, base/plain.asy, base/three.asy,
	* application.cc, application.h, exp.cc, exp.h, fundec.cc,
	* runtime.cc, runtime.h, types.h: 
	
	Added Andy's changes to evaluate default function arguments in the
	defining scope of the function, not in the scope of the caller.

	* arrayop.h, base/plain.asy, base/three.asy, builtin.cc,
	* doc/asymptote.texi, fileio.cc, fileio.h, runtime.cc, runtime.h: 
	
	Generalized write to handle an arbitrary number of data values;
	improved documentation.

	Generate standard casts via templates.

	Added == and != for files.

	Allow casting of null to file.

	* path.cc, path3.cc:
	
	Readded depth limit to intersect routines to prevent stack overflow.

2005-10-02  jcbowman  <jcbowman@wizard>

	* base/three.asy, path.cc, path3.cc:
	
	Enforce a minimum value of fuzz in intersect routines to prevent
	infinite loops.

	* base/graph.asy, base/plain.asy, base/three.asy, doc/asy.1,
	* doc/asymptote.texi, doc/helix.asy, doc/join3.asy,
	* doc/westnile.asy, drawlabel.cc, picture.cc, texfile.h:
	
	Fixed depth handling of deferred TeX labels.

	Fixed error in man page (-t option).

	Fixed interaction of overwrite(Move) with "%" tick formats.

	Improved 3d axis label positioning.

	Added rotate(explicit pair dir) and rotate(explicit triple dir) for
	rotating text along a line in the direction dir.

	Updated helix example to illustrate rotated tick and axis labels.

2005-10-01  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.90cvs.

	* doc/asymptote.texi: Documented min(frame) and max(frame).

2005-09-30  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Don't upscale logarithmic range when automax=false.

	* doc/asymptote.texi, picture.cc:
	
	Renamed temporary included PostScript file suffix from "ps" to "eps".

	Removed all references to mailing list, as it is no longer in use.

	* base/graph.asy, base/plain.asy, doc/asymptote.texi,
	* examples/limit.asy:
	
	Fixed .gui processing.

	Added new example.

	* base/graph.asy, doc/Bode.asy, doc/asymptote.texi, doc/logticks.asy:
	
	Allow overriding of ticklabel routine for logarithmic axis; added
	example.

	* base/graph.asy, base/palette.asy, base/plain.asy, doc/Bode.asy,
	* doc/asymptote.texi, doc/datagraph.asy, doc/diatom.asy,
	* doc/generalaxis.asy, doc/generalaxis3.asy:
	
	Standardized arguments to LeftTicks, etc.

	Fixed user-specified logarithmic ticks.

2005-09-29  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.89cvs.

2005-09-29  jcbowman  <jcbowman@wizard>

	* doc/Makefile: Only build required images.
	
	* doc/asymptote.texi, doc/flow.asy: Minor documentation updates.
	
	* examples/flow.asy, base/graph.asy, base/plain.asy,
	* doc/asymptote.texi, doc/flow.asy, fileio.cc, runtime.cc:
	
	Fixed missing label on thinned logarithmic graphs.

	Documented getstring and getreal.

	Documented vectorfield and flow example.

	Fixed cxx warning messages.

2005-09-28  jcbowman  <jcbowman@wizard>

	* doc/axis3.asy, doc/generalaxis.asy, doc/generalaxis3.asy,
	* doc/helix.asy, doc/join.asy, doc/join3.asy, doc/saddle.asy,
	* doc/surface.asy, doc/unitcircle3.asy, examples/elliptic.asy,
	* base/graph.asy, base/graph3.asy, base/plain.asy, base/three.asy,
	* doc/Makefile, doc/asymptote.texi, TODO, camp.l: 
	
	Simplified, improved, and documented 3d axes routines.

	Renamed tickspec to ticklocate. Documented ticklocate.

	Removed unused symbols from camp.l.

	Removed spurious nullpaths from :: and ---.

	Documented deconstruction of guides.

2005-09-27  jcbowman  <jcbowman@wizard>

	* doc/latexusage.tex, base/plain.asy, doc/asymptote.texi,
	* camperror.h, drawlabel.cc, drawlabel.h, runtime.in, camperror.cc: 
	
	Added a second optional string to Label to provide an estimate for
	the label size when an undefined label is encountered with the -t
	option.

	Fixed box(Label).

	* patches/pstoedit-3.42asy.patch:
	
	Updated pstoedit patch to put brackets around rotated strings.

	* doc/asymptote.texi, base/plain.asy, builtin.cc, fileio.cc,
	* fileio.h, runtime.cc:
	
	Implemented data file comment character (# by default).

2005-09-26  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Used scaled epsilon to adjust right-hand axis limit.

	* patches/README, patches/pstoedit-3.41asy.patch,
	* patches/pstoedit-3.42asy.patch, Makefile.in, base/graph.asy,
	* base/graph3.asy, base/math.asy, base/plain.asy, base/pstoedit.asy,
	* base/three.asy, bbox.h, builtin.cc, doc/asymptote.texi,
	* doc/generalaxis.asy, doc/generalaxis3.asy, doc/latexusage.tex,
	* path.cc, path.h, path3.cc, runtime.cc, runtime.h, runtime.in,
	* triple.cc, triple.h: 
	
	Added fuzz parameter to intersect routines for finding
	intersections with circular approximations, etc. Also fixed these
	routines for paths consisting of a single point.

	Moved 3d intersect routine to C++ for speed.

	Cache 2d path bounding box.

	Added 3d version of expi.

	Increased accuracy of true Arc and Circle to approximately machine
	precision.

	Added 3d true Arc and Circle.

	Added 3d polargraph function.

	Renamed triple.cc to path3.cc.

	Added missing triple to path3 cast.

	Added patch to pstoedit-3.42 to support PNG to EPS conversion.

	Updated documentation.

	* drawlabel.cc:
	Fixed base alignment in new deferred TeX alignment scheme.

2005-09-24  jcbowman  <jcbowman@wizard>

	* base/three.asy: Fixed shift(c) in 3d circle.

2005-09-23  jcbowman  <jcbowman@wizard>

	* camp.l: Fixed "\\".

	* interact.cc: Added missing header.

	* runtime.cc: Make merge use environment variable ASYMPTOTE_CONVERT.

	* doc/asymptote.texi, picture.cc, pipestream.h, settings.cc,
	* settings.h, util.cc, util.h:
	
	Added an environment variable for the location of every external
	command.

2005-09-23  jcbowman  <jcbowman@wizard>

	* runtime.cc: Make merge use environment variable ASYMPTOTE_CONVERT.

	* doc/asymptote.texi, picture.cc, pipestream.h, settings.cc,
	* settings.h, util.cc, util.h: 
	
	Added an environment variable for the location of every external
	command.

	* base/graph.asy, examples/flow.asy:
	
	Added vectorfield routine and example.

	* doc/asy.1, doc/asymptote.sty, doc/asymptote.texi,
	* doc/latexusage.tex, patches/README, patches/dvipdf, drawlabel.cc,
	* drawlabel.h, picture.cc, pipestream.h, settings.cc, settings.h,
	* texfile.cc, texfile.h: 
	
	Added [inline] option to asymptote.sty to use inline LaTeX code
	instead of eps files, making LaTeX symbols visible to the
	\begin{asy}...\end{asy} environment. In this mode, Asymptote
	correctly aligns LaTeX symbols defined outside of the
	\begin{asy}...\end{asy} environment, but treats their size as zero.

	Added -t option to asy to request inline LaTeX code to be generated.

	Added modified dvipdf that accepts the dvips -z hyperdvi option.

2005-09-22  jcbowman  <jcbowman@wizard>

	* doc/latexusage.tex: Updated axis call.

2005-09-21  jcbowman  <jcbowman@wizard>

	* picture.cc, runtime.cc: Replace system calls to rm/del by unlink().

	* base/graph.asy, base/graph3.asy, base/palette.asy,
	* base/plain.asy, base/three.asy, doc/Bode.asy, doc/asymptote.texi,
	* doc/axis3.asy, doc/exp.asy, doc/generalaxis.asy,
	* doc/generalaxis3.asy, doc/secondaryaxis.asy,
	* examples/equilchord.asy, examples/integraltest.asy,
	* examples/log.asy, examples/spiral.asy, examples/sqrtx01.asy,
	* examples/sqrtx01y1.asy, examples/triads.asy, examples/wedge.asy,
	* examples/wheelanimation.asy, examples/xxsq01.asy, path.cc,
	* path.h:
	
	Fixed segmentation fault in straight.

	Fixed bug in setting straight flag in reverse.

	Fixed axis label placement for slanted (but straight) axes.

	Improved tick label positioning with slanted ticks.

	Simplified 3d axis routines; added autolimits function to implement 3d
	autoscaling.

	Don't cache Ticksize and ticksize.

	Standardized xaxis, yaxis, xequals, yequals calls (Label now appears
	immediately after picture argument).

	Check for empty pictures when drawing axes with ticks.

	Updated documentation and examples.

2005-09-20  jcbowman  <jcbowman@wizard>

	* doc/datagraph.asy, doc/diatom.asy, doc/generalaxis.asy,
	* doc/generalaxis3.asy, doc/lineargraph.asy, doc/secondaryaxis.asy,
	* INSTALL, TODO, base/graph.asy, base/graph3.asy, base/plain.asy,
	* configure.ac, doc/asymptote.texi, runtime.cc, util.h: 
	
	Overhaul and major clean up of 2d graph module; to support 3d
	axes, partitioning is now done in tick value space rather than
	with respect to arclength.

	Added 3d graph axes (xaxis, yaxis, zaxis, and general axis) and
	generalaxis3 example.

	Format "" is now treated as defaultformat (use "%" to suppress labels).

	Updated gc to 6.6.

	Under MSDOS, change "rm" to "del" in merge utility.

	Don't print hints when there is no environment variable.

2005-09-16  hammera  <hammera@wizard>

	* name.cc: Fixed error reporting bug.

2005-09-14  jcbowman  <jcbowman@wizard>

	* Makefile.in: Changed make to $(MAKE) for portability.

	* base/three.asy: Changed nullpath to nullpath3 to avoid ambiguities.

	Set initial precontrol point and final postcontrol point of
	noncyclic paths to the corresponding node.

	Fixed the length of a cyclic path3.

	* runtime.cc: Added snprintf workaround for non-C99 compliant systems.

2005-09-13  jcbowman  <jcbowman@wizard>

	* pipestream.h, util.cc: Added missing headers for Solaris/Sparc.

	* types.cc: Fixed pair.z and triple.xx bugs.

2005-09-12  jcbowman  <jcbowman@wizard>

	* base/graph.asy:
	
	Added some comments to graph.asy.

	* base/math.asy: Optimized matrix times vector.

	* base/geometry.asy, examples/Pythagoras.asy, examples/orthocenter.asy:
	
	Standardized perpendicular.

2005-09-12  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/join.asy, base/three.asy, builtin.cc,
	* camp.l, camp.y: 
	
	Added 2d and 3d Metapost & operator (like --, but omits the
	duplicate point).

2005-09-11  jcbowman  <jcbowman@wizard>

	* doc/Makefile, doc/asymptote.texi:
	
	Fixed resolution problems of png figures in html manual.

	* patches/ImageMagick.patch, doc/asymptote.texi:
	
	Reorganized installation instructions.

	* application.h, doc/asymptote.texi, application.cc:
	
	Handle errors due to nonarray rest formals gracefully.

	Improved formatting.

2005-09-10  jcbowman  <jcbowman@wizard>

	* INSTALL, Makefile.in, doc/Makefile, doc/asymptote.texi, errors:
	
	Updated list of errors.

	Changed make test to make check.

	"make all"/"make install" now build/install asy, asymptote.pdf,
	and man pages but not asymptote.dvi, asymptote.info, or asymptote.html
	(use make install-all if you want these too).

	Documented workaround for broken pdftex installations.

	* base/feynman.asy, builtin.cc, doc/asymptote.texi, runtime.cc,
	* runtime.h: 
	
	Removed scale(pair) in favour of scale(abs(z))*rotate(degrees(z))
	to avoid confusion with xscale(z.x)*yscale(z.y).

	* doc/asymptote.texi, base/plain.asy:
	
	Don't cache MidArrow and Bar sizes.

2005-09-09  jcbowman  <jcbowman@wizard>

	* base/geometry.asy, base/three.asy, doc/asymptote.texi,
	* examples/Pythagoras.asy, examples/cosaddition.asy:
	
	More intuitive interface: perpendicular(pair z, pair align) now uses an
	alignment argument.

	Documented virtual structure functions.

	Updated documentation to emphasize that face is derived from picture.

2005-09-08  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated Help section.

2005-09-07  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated documentation.

	* doc/asymptote.texi: Document structure inheritance.

	* doc/asymptote.texi, doc/diatom.asy, doc/surface.asy,
	* doc/unitcircle3.asy, examples/wheelanimation.asy, base/graph.asy,
	* base/plain.asy, base/three.asy, drawpath.cc:
	
	Fixed floating point exception problems in axes routines.

	Check for negative linetype arguments.

	Minor example updates.

2005-09-07  hammera  <hammera@wizard>

	* runtime.cc, name.h: Changed indenting.

2005-09-06  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.88cvs.

	* doc/asymptote.texi, doc/unitcircle3.asy: Minor documentation updates.

	* access.h, doc/asymptote.texi, entry.h, exp.h:
	Fixed cxx warning messages.

2005-09-06  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/unitcircle3.asy: Minor documentation updates.

	* access.h, doc/asymptote.texi, entry.h, exp.h:
	Fixed cxx warning messages.

	* TODO, base/patterns.asy, base/plain.asy, doc/asymptote.texi,
	* doc/unitcircle3.asy, examples/conicurv.asy:
	
	Added pen option to filltype to specify an interior pen distinct
	from the boundary pen.
	
	Removed Filltype in patterns in favour of a deferred filltype.

	Removed explicit size arguments from bbox (as done with shipout
	some time ago).

	Updated filltype and 3d documentation.

	* TODO, base/drawtree.asy, base/math.asy, base/plain.asy,
	* base/three.asy, base/tree.asy, builtin.cc, dec.cc,
	* doc/asymptote.texi, doc/helix.asy, doc/planes.asy,
	* doc/subpictures.asy, doc/surface.asy, examples/conicurv.asy,
	* examples/near_earth.asy, examples/planes.asy, runtime.cc,
	* runtime.h, types.cc:
	
	Implemented general hidden surface removal using a binary space
	partition.
	
	Fixed perspective and orthographic when camera is below the XY plane.
	Also added perspective(real,real,real) and orthographic(real,real,real)
	functions.

	Fixed draw((0,0,0)..(1,0,0)) and draw((0,0,0)).

	Added convenient 3d circle and arc functions.

	Added abs(triple) (equivalent to length(triple)).

	Added Longitude(triple), which ignores errors along +/- Z axis.

	Ported near_earth and conicurv examples from featpost3D.asy to
	three.asy.

	Added == and != for structures (equivalent to alias and !alias,
	respectively).

	For convenience, array push members now return the pushed element.

	Added missing shift in Label.out(frame).

	Updated documentation.

2005-09-04  hammera  <hammera@wizard>

	* coder.h, entry.cc, entry.h, name.cc: Added permissions back in.

2005-09-03  hammera  <hammera@wizard>

	* Makefile.in, access.cc, access.h, camp.l, camp.y, coder.cc,
	* coder.h, coenv.cc, dec.cc, dec.h, entry.cc, entry.h, env.h,
	* exp.cc, exp.h, frame.h, fundec.cc, fundec.h, import.cc,
	* importaccess.h, modifier.h, name.cc, name.h, newexp.cc, newexp.h,
	* record.h, varinit.cc, varinit.h: 
	
	Refactoring!

	- most #include "camp.tab.h" lines removed in favor of modifier.h
	- access now uses actions (READ, WRITE, CALL) to control encoding
	- fundef and newFunctionExp merged
	- name refactor, and it also uses actions
	- permission information moved to varEntry (but not in use yet)

2005-09-01  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/graph3.asy, base/three.asy, doc/surface.asy:
	
	Moved surface to graph3.

	Added 3d analogues of 2d graph functions.

	* TODO, base/math.asy, base/three.asy, doc/asymptote.texi,
	* doc/helix.asy, doc/surface.asy:
	
	Added numerically robust quadratic equation solver.

	Added min(path3) and max(path3) functions.

	Simplified and documented 3d arc (analogous to 2d arc).

	Implemented path3 to guide3 cast.

	* base/three.asy, doc/surface.asy, path.cc, TODO:
	
	Added 3d intersect and dir functions.

	Added 3d arc function that is consistent with the usual circle
	approximation.

	* base/geometry.asy: Removed diagnostic.

	* base/geometry.asy, base/three.asy, doc/asymptote.texi,
	examples/triangle.asy, record.h:
	
	Documented constructors; changed triangle.asy to use a constructor.

2005-08-31  jcbowman  <jcbowman@wizard>

	* TODO, coder.cc, frame.h:
	
	Fixed permissions for static functions in structs.

	* base/three.asy, doc/Makefile, doc/asymptote.texi,
	doc/datagraph.asy, doc/image.asy, doc/lineargraph0.asy,
	doc/loggrid.asy, doc/secondaryaxis.asy, doc/subpictures.asy,
	doc/superpath.asy:
	
	Simplified path3 constructor.

	Added subpicture example.

	Fixed datagraph example.

	Minor documentation updates.

	* TODO, base/three.asy:
	
	Use same internal structure for path3 as for path, to facilitate
	port of various path.cc functions to 3d.

	Added subpath & associated functions.

2005-08-30  jcbowman  <jcbowman@wizard>

	* base/plain.asy:
	
	Expose Relative(pair) alignment function.

	Use arclength rather than length for determining default label
	position on paths.

	* base/three.asy, doc/surface.asy, Makefile.in, TODO, guide.h,
	* path.cc, path.h, runtime.in, triple.cc, triple.h:
	
	Added path3 type. Separated project into path3 conversion and
	projection. 

	Added 3d arclength and arctime functions.

2005-08-29  jcbowman  <jcbowman@wizard>

	* base/three.asy:
	
	For surface plots on a regular mesh, handle hidden surfaces from
	any camera location.

2005-08-28  jcbowman  <jcbowman@wizard>

	* examples/eetomumu.asy, base/feynman.asy, base/graph.asy,
	* base/plain.asy, doc/Makefile, doc/asymptote.texi: 
	
	Added Relative(real) and Relative(pair) functions for labelling paths
	relative to the total arclength and local path direction.

	Feynman updates (including new function texshipout); moved
	MidArrow and added MidArcArrow to plain.asy.

	Fixed optional position argument of BeginArrow, etc.

	Update documentation; simplified Makefile.

2005-08-25  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.87cvs.

	* doc/Makefile: Fixed make clean.

	* doc/Makefile: Fixed problems with make man.

	* configure.ac: Incremented version to 0.86cvs.

	* doc/Makefile: Makefile tweaks.

	* doc/Makefile, picture.cc:
	
	Add hyperlinks to pdf manual; fixed margins.

	Use imdisplay for ImageMagick display under MSDOS.

	* doc/asymptote.texi, mod.h, runtime.cc, settings.cc:
	ASYMPTOTE_DIR can now be a list of directories (separated by :
	under UNIX and ; under MSDOS).

	Fixed size_t errors.

	* base/asy-mode.el, base/asy.vim, base/plain.asy, base/three.asy,
	builtin.cc, camp.l, doc/asymptote.texi, doc/surface.asy, knot.cc,
	knot.h, runtime.cc, runtime.h, settings.cc, types.cc:
	
	Added curl3 operator.

	Implemented 3d generalization of Hobby's Metafont angle
	calculation that is invariant to rotation and reduces to his 2d
	splines in the planar case. Removed 3d direction specifiers (no
	longer required) from circle example in surface.asy.

	Merged and simplified tridiagonal solvers.

	When writing paths, output direction angles in degrees.

	Handle null cyclic arrays.

	Added min() and max() members of picture to calculate the picture
	size to date.

	Updated documentation.

2005-08-23  jcbowman  <jcbowman@wizard>

	* picture.cc:
	
	Disable automatic rotation of pdf files "based on the predominant
	orientation of the text on each page".

2005-08-18  jcbowman  <jcbowman@wizard>

	* runtime.cc: Fixed special case of periodic tridiagonal solver.

	* doc/westnile.asy, array.h, base/graph.asy, base/three.asy,
	* builtin.cc, doc/asymptote.texi, mod.h, runtime.cc, runtime.h,
	* types.cc: 
	
	Allow cyclic indices only on arrays with virtual cyclic flag set
	to true.
	
	Added Dirichlet and periodic tridiagonal solvers.

2005-08-17  jcbowman  <jcbowman@wizard>

	* base/plain.asy:
	
	Reduce infinity for tension at least infinity on alpha platform.

	* doc/asymptote.texi, interact.cc, settings.cc, settings.h:
	
	Make interactive help work in MSDOS.

	* doc/asymptote.texi, configure.ac, interact.cc, picture.cc,
	* settings.cc, settings.h, util.cc, util.h:
	
	Added online help option; exit is now a synonym for quit in
	interactive mode.

2005-08-16  jcbowman  <jcbowman@wizard>

	* asy.ico, doc/icon.asy, Makefile.in: Improved icon.

	* Makefile.in, asy.ico, asy.rc, doc/icon.asy:
	
	Fixed MSDOS build; improved icon.

	* asy.rc: Windows resource template.

	* doc/asymptote.texi, Compile, Makefile.in, README, asy.ico,
	* base/simplex.asy, configure.ac: 
	
	Improved configuration; added icon for Microsoft Windows.
	Updated documentation.

2005-08-16  hammera  <hammera@wizard>

	* base/simplex.asy: Generalized bug fix in simplex.

2005-08-14  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.85cvs.

2005-08-13  jcbowman  <jcbowman@wizard>

	* Makefile.in:
	
	Added compilation option msdos for producing Microsoft binaries.

	* base/graph3d.asy: Removed obsolete file.

	* base/simplex.asy: Workaround truesize=0 bug in simplex.asy.

	* array.h, base/math.asy, base/palette.asy, base/plain.asy,
	* builtin.cc, doc/asymptote.texi, drawelement.h, drawfill.cc,
	* drawfill.h, examples/latticeshading.asy, psfile.cc, psfile.h,
	* runtime.cc, runtime.h, transform.h, types.cc, types.h: 
	
	Added lattice gradient shading; check pen size in Gouraud shading
	to avoid segmentation fault.

	Copy data and palette arrays in palette.asy.

	* examples/Gouraud.asy, base/three.asy, doc/asymptote.texi,
	* transform.h:
	
	Added 3d reflections.

	Swapped triple arguments of rotate(real,triple,triple) for consistency
	with the 2d reflect(pair,pair) syntax.

	* arrayop.h, runtime.cc, runtime.h:
	
	Removed (size_t) array.size() casts as they are no longer needed.

2005-08-12  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, examples/Gouraud.asy, base/plain.asy,
	* builtin.cc, camp.l, drawfill.cc, drawfill.h, drawimage.h,
	* psfile.cc, psfile.h, runtime.cc, runtime.h: 
	
	Added support for Gouraud shading.

	Moved nullpath into plain.asy.

	* doc/asymptote.texi, base/palette.asy, base/plain.asy, base/graph.asy:
	
	Cleaned up autosize code; more pair to align changes.

	* base/graph.asy, examples/coag.asy:
	
	Updated example; removed extra instance of defaultformat.

	* doc/asymptote.texi, doc/datagraph.asy, doc/diatom.asy,
	* doc/generalaxis.asy, doc/helix.asy, doc/latexusage.tex,
	* doc/lineargraph.asy, doc/mosquito.asy, doc/secondaryaxis.asy,
	* doc/surface.asy, doc/westnile.asy, examples/cardiod.asy,
	* examples/circles.asy, examples/cos2theta.asy,
	* examples/cosaddition.asy, examples/delu.asy,
	* examples/elliptic.asy, examples/fjortoft.asy,
	* examples/hierarchy.asy, examples/labelbox.asy, examples/log.asy,
	* examples/near_earth.asy, examples/orthocenter.asy,
	* examples/phase.asy, examples/polarcircle.asy, examples/sin1x.asy,
	* examples/sinxlex.asy, examples/sqrtx01.asy,
	* examples/sqrtx01y1.asy, examples/triads.asy,
	* examples/unitcircle.asy, examples/venn.asy,
	* examples/wheelanimation.asy, examples/xxsq01.asy, patches/README,
	* patches/pstoedit-3.40asy.patch, patches/pstoedit-3.41asy.patch,
	* base/drawtree.asy, base/featpost3D.asy, base/graph.asy,
	* base/palette.asy, base/plain.asy, base/pstoedit.asy, builtin.cc,
	* camp.y, dec.cc, doc/Bode.asy, env.h, exp.cc, exp.h, pen.h,
	* runtime.cc, runtime.h, types.cc, types.h: 
	
	Put label parameters in a structure called Label, to which a
	string can be cast, and which can be rotated and shifted (in
	Postscript coordinates).

	Updated examples and documentation.

	Fixed automatic sizing under picture transformation (particularly
	under rotation) and handling of an unspecified size in one
	direction (denoted by infinity).

	Added size(real Size) function that ensures each dimension is no
	more than Size.

	Added scale(bool) function for enabling or disabling autoscaling
	in both directions.

	Simplified 2d graph and palette code.

	Added begingroup/endgroup checks.

	Added array append method.

	Removed unused duplicate variable check code.

	Added virtual transform components and transform 6-tuple notation.

	Added pen and filltype to Legend.

	Removed labeldot(z) in favour of dot(Label,z).
	Removed labelbox and labelellipse in favour of box and ellipse.
	Removed labelxtick and labelytick in favour of xtick and ytick.

	Updated pstoedit support.

2005-08-07  jcbowman  <jcbowman@wizard>

	* base/plain.asy, base/three.asy, doc/asymptote.texi, builtin.cc,
	* drawclipbegin.h, drawelement.h, drawfill.cc, drawfill.h,
	* picture.cc, picture.h, runtime.cc, runtime.h, runtime.in:
	
	Used cast from path to path[] (superpath) to simply fill and clip code.

2005-08-06  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, fileio.cc, fileio.h, interact.cc,
	picture.cc, util.cc:
	
	Remove .asy_input on exit.

	Disable display (which requires Xwindows) under MSDOS.

	Minor documentation updates.

	* doc/labelsquare.asy, doc/lineargraph.asy, doc/lineargraph0.asy,
	* doc/loggraph.asy, doc/loggrid.asy, doc/mosquito.asy,
	* doc/parametricgraph.asy, doc/quartercircle.asy,
	* doc/secondaryaxis.asy, doc/shadedtiling.asy, doc/square.asy,
	* doc/superpath.asy, doc/tile.asy, base/graph.asy, base/graph3.asy,
	* base/palette.asy, doc/Bode.asy, doc/asymptote.texi,
	* doc/bigsquare.asy, doc/datagraph.asy, doc/diagonal.asy,
	* doc/errorbars.asy, doc/exp.asy, doc/generalaxis.asy,
	* doc/hatch.asy, doc/helix.asy, doc/histogram.asy, doc/image.asy: 
	
	Added simpler helix example.

	Moved pticklabel to LeftTicks, etc., as the argument plabel. Added
	pTick and ptick pen types for drawing big and small ticks with
	different sizes, bool beginlabel and endlabel for suppressing
	first and last labels, and extend for drawing ticks across the
	graph (useful for superimposing a grid on the graph).

	Improved optional first and last tick/label suppression.

	Updated documentation.
	
2005-08-05  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, settings.cc, util.cc, util.h, locate.cc,
	* picture.cc: 
	
	MSDOS environment variable tweaks.

2005-08-04  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, util.cc, util.h, settings.cc,
	* settings.h, picture.cc, locate.cc: 
	
	Fixed MSDOS interactive mode: the postscript viewer child process
	should exit, not return. Searching for an available postscript
	viewer is not possible in general (but the desired viewer can be
	specified with the appropriate environment variable).

	Added environment variable ASYMPTOTE_GS and drag and drop support.

	Make -V the default under MSDOS. Added -n (-noView) option.

	Updated documentation.

2005-08-03  hammera  <hammera@wizard>

	* doc/asymptote.texi:

	Corrections to documentation.
	
2005-08-02  jcbowman  <jcbowman@wizard>

	* patches/cygwin_xdr.patch, configure.ac, drawlabel.cc,
	* picture.cc, util.h: 
	
	Port to MSDOS (via CYGWIN).

2005-07-31  jcbowman  <jcbowman@wizard>

	* doc/shade.asy, knot.cc: Removed unused file.

	* doc/asymptote.texi, examples/shade.asy, base/plain.asy,
	* base/three.asy: 
	
	Changed operator :: and operator --- to loops.

	Simplified fill commands.

2005-07-28  jcbowman  <jcbowman@wizard>

	* picture.cc:
	
	Remove %%DocumentPaperSizes: comment inserted by dvips 5.95a.

2005-07-24  jcbowman  <jcbowman@wizard>

	* examples/centroidfg.asy, examples/cos2theta.asy,
	* examples/integraltest.asy, examples/log.asy,
	* examples/lowupint.asy, examples/polararea.asy,
	* examples/polarcircle.asy, examples/spiral.asy,
	* examples/sqrtx01.asy, examples/sqrtx01y1.asy, examples/tanh.asy,
	* examples/xxsq01.asy, base/graph.asy, base/graph3d.asy,
	* base/plain.asy, base/three.asy, doc/asymptote.texi, doc/exp.asy,
	* doc/latexusage.tex, doc/parametricgraph.asy, doc/surface.asy,
	* examples/cardiod.asy: 
	
	Simplified graph routines.

	Fixed nullguide3 problems.

	Began graph3d construction.

	Updated documentation and examples.

2005-07-19  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated menus.

	* configure.ac: Incremented version to 0.84cvs.

	* errors, errortest.asy: Updated error test.
	
	* base/three.asy, doc/asymptote.texi:
	
	Changed default angle for oblique projection to 45 degrees.

	Updated documentation.

	* doc/cube.asy, doc/helix.asy, base/plain.asy, base/three.asy,
	* doc/asymptote.texi, runtime.h, triple.h, camp.l, knot.h,
	* runtime.cc, builtin.cc: 
	
	Used existing internal function relativedistance for control point
	computations.

	Renamed path3 to flatguide3.

	Added tension3 specifier.

	Standardized 3d angles, rotations, and scalings.

	Added guide3 operator :: and ---.

	Added write(path[]) and write(guide3[]).

	Added helix example and updated documentation.

2005-07-18  jcbowman  <jcbowman@wizard>

	* doc/surface.asy, base/three.asy:
	Determined correct signs in direction-to-control point calculation;
	propagate directions across nodes.

	* base/three.asy:
	
	Implemented preliminary 3d direction to control point conversion.

	* doc/Bode.asy, doc/asymptote.texi, doc/diatom.asy,
	* doc/generalaxis.asy, doc/image.asy, doc/parametricgraph.asy,
	* base/graph.asy, base/palette.asy, base/patterns.asy,
	* base/plain.asy: 
	
	Move math mode ($ delimiters) to within defaultformat string, to
	allow use of non-math mode fonts in tick labels (by providing a
	nondefault format string).

	* doc/asymptote.texi, base/geometry.asy, base/math.asy,
	* base/plain.asy, runtime.cc, runtime.h, builtin.cc, knot.cc: 
	
	Fixed bug in string font(pen).

	Renamed Angle(pair) to degrees(pair).

	Added Degrees(pair) to math.asy.

2005-07-17  jcbowman  <jcbowman@wizard>

	* castop.h:

 	Allow reading three-dimensional arrays in line mode by recognizing
	blank lines as block delimiters.

	* doc/asymptote.texi, doc/datagraph.asy, base/graph.asy,
	* base/palette.asy: 
	
	Added pticklabel option for drawing tick labels with a different pen.

	* doc/datagraph.asy, doc/surface.asy, examples/coag.asy,
	* examples/sqrtx01y1.asy, examples/xxsq01.asy, doc/asymptote.texi,
	* base/graph.asy: 
	
 	Added labelxtick and labelytick. Fixed tick size and shift in xtick.

	Updated documentation; added examples.

	* examples/wheelanimation.asy, doc/asymptote.texi, base/graph.asy:

	Fixed problems with autoscaling and unextended axes.

2005-07-16  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/latexusage.tex, base/graph.asy,
	* base/plain.asy, base/simplex.asy: 
	
	Renamed internal xequals and yequals routines to yaxisAt and xaxisAt.
	
	For clarity, renamed xline and yline routines to xequals and yequals.
	
	Added initializers.

	* settings.cc:
	
	Disabled -laat while line-at-a-time mode is under construction (due to
	known segmentation fault).

	* doc/cube.asy, examples/venn.asy, base/featpost3D.asy,
	* base/graph.asy, base/math.asy, base/three.asy, doc/asymptote.texi,
	* builtin.cc, runtime.cc, runtime.h: 
	
	Added and documented remaining triple functions.

	Renamed Dot to dot and Cross to cross.

	* base/graph3d.asy, base/plain.asy, base/three.asy,
	* doc/asymptote.texi, doc/colons.asy, doc/cube.asy, doc/dots.asy,
	* doc/join.asy, doc/surface.asy, examples/planes.asy, camp.l,
	* camp.y, frame.h, knot.cc, stack.cc: 
	
	Simplified three.asy; added oblique projection and ^^ operator.

	Added Metapost --- operator; allow :: to accept a direction specifier.

	Allow user-defined ++ binary operator (for consistency with -- binary
	operator).

	Minor knot velocity optimizations.

	Added surface example to documentation; updated cube example.

	Updated documentation; fixed cxx warning messages.

2005-07-16  hammera  <hammera@wizard>

	* flatguide.h: Fixed crash caused by fixing previous crash.

2005-07-15  hammera  <hammera@wizard>

	* knot.cc:
	
	Handle tensions in straight sections of paths as MetaPost does.

	* flatguide.h, knot.cc:
	
	Fixed controls versus direction specifiers crash.

2005-07-14  jcbowman  <jcbowman@wizard>

	* base/math.asy, base/plain.asy, base/three.asy,
	* doc/asymptote.texi, array.h, camp.y, runtime.cc, runtime.h,
	* types.cc, types.h: 
	
	Added array pop function.

	Give DIRTAG the same precedence as CONTROLS and TENSION.

	Added replacement :: for Metapost ... joiner (which selects an
	inflection-free path where possible).

	Added 3d direction specifiers, pending 3d conversion to control
	points...

	Added triple write and interp functions to plain.asy.

2005-07-13  jcbowman  <jcbowman@wizard>

	* knot.cc: Formatting.

	* base/three.asy: Cleaned up controls.

	* base/three.asy: Renamed controls3 to controls.

	* base/three.asy: Added controls3.

	* knot.cc: Compute knot solving constants.

	* arrayop.h, builtin.cc: Fixed write(guide).

2005-07-12  jcbowman  <jcbowman@wizard>

	* camp.l, camp.y: Allow operator ::.

	* interact.cc, configure.ac:
	
	Added explicit check for readline remove_history.

	* doc/asymptote.texi:
	
	Readded installation hint about ancient readline versions.

	* base/three.asy: Fixed lookAtOrigin.

	* base/math.asy, base/three.asy, triple.h, builtin.cc, cast.cc, pair.h:
	
	Updates to triple and three.asy.

	Removed unused code.

2005-07-11  jcbowman  <jcbowman@wizard>

	* base/graph3d.asy, base/math.asy, doc/asymptote.texi,
	* doc/cube.asy, examples/conicurv.asy, examples/near_earth.asy,
	* examples/planes.asy, base/featpost3D.asy, runtime.cc, runtime.h,
	* triple.h, builtin.cc: 
	
	Replaced vector by triple.

	* base/three.asy, exp.cc: Fixed casting error message.

	* base/stats.asy, base/three.asy, pair.h, runtime.cc, runtime.h,
	* runtime.in, types.cc, types.h, angle.h, builtin.cc, camp.y,
	* exp.cc, exp.h, fileio.h: 
	
	Added triple type.

2005-07-09  hammera  <hammera@wizard>

	* base/three.asy: Surface plot test.

2005-07-08  hammera  <hammera@wizard>

	* main.cc: Moved laat diagnostic.

	* main.cc, settings.cc, settings.h, stack.cc, stack.h, stm.h,
	* frame.h, genv.cc, genv.h, item.h, coder.cc, coder.h: 
	
	Proof-of-concept code for true line-at-a-time mode.

2005-07-07  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Removed path to pair[] ecast.

	* examples/dragon.asy: Updated example.

	* doc/asymptote.texi, base/plain.asy, base/three.asy:
	
	Removed explicit pair[] to guide casts in favour of 
	operator --(...) and operator ..(...).

	* configure.ac: Fixed default CFLAGS.

	* configure.ac: Fixed CFLAGS.

	* doc/asymptote.texi, doc/asy.1: Updated documentation.

	* configure.ac: Fixed error in CFLAGS.

2005-07-07  jcbowman  <jcbowman@wizard>

	* doc/parametricgraph.asy, examples/dragon.asy,
	* examples/sin1x.asy, base/graph.asy, base/plain.asy,
	* doc/asymptote.texi: 
	
	Added implicit pair[] to guide and guide[] casts and explicit path to
	pair[] casts.

	Removed unnecessary guide=nullpath argument from graph calls.

	Renamed LinearInterp to Straight, to correspond to straight(path).

	Updated nullpath documentation to correspond to new solver.

2005-07-06  hammera  <hammera@wizard>

	* entry.h: Change NOHASH to use #ifdef.

	* base/three.asy: Three dimensional drawing routines (in development).

2005-07-05  hammera  <hammera@wizard>

	* exp.cc, exp.h, flatguide.h, knot.cc, knot.h, types.h, builtin.cc:
	
	Join operators now use rest arguments.
	
	Fixed a bug in solving empty guides.

	* dec.cc, dec.h, newexp.cc, newexp.h:
	
	Combined duplicate code for function definitions.

2005-07-04  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Minor documentation updates.

2005-07-04  hammera  <hammera@wizard>

	* entry.cc, entry.h, genv.h, record.h: Added back venv::list().

2005-07-03  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.83cvs.

2005-07-03  jcbowman  <jcbowman@wizard>

	* doc/asy.1:

	Updated man page.
	
	* frame.h, inst.h, stack.cc, stack.h: Fixed cxx warning messages.

	* doc/asymptote.texi, exp.cc, settings.cc, settings.h:
	
	Added -d command-line option to produce extra debugging messages
	(currently only "named argument may be mistaken for assignment"
	warning).

	* examples/centroidfg.asy, examples/integraltest.asy,
	* examples/log.asy, examples/lowupint.asy, examples/phase.asy,
	* examples/spiral.asy, base/plain.asy, doc/asymptote.texi,
	* doc/exp.asy, doc/westnile.asy, base/graph.asy: 
	
	Added arrow option to axes routines.

2005-07-02  jcbowman  <jcbowman@wizard>

	* configure.ac:
	
	Allow specifying default CFLAGS to configure.

	* Makefile.in, configure.ac, dec.cc, frame.h:
	
	Added configure option to detect ext/hash_map and set -DNOHASH
	accordingly.

	Fixed cxx warning messages.

	* doc/datagraph.asy, doc/exp.asy, doc/westnile.asy,
	* examples/centroidfg.asy, examples/integraltest.asy,
	* examples/log.asy, examples/lowupint.asy, examples/phase.asy,
	* examples/spiral.asy, base/graph.asy, doc/asymptote.texi: 
	
	Standardized xtick and ytick routines.

2005-07-02  hammera  <hammera@wizard>

	* entry.cc, entry.h, env.h, import.h, memory.h, types.cc, types.h:
	
	Added NOHASH option to compile on non-gcc compilers.

	* varinit.cc, varinit.h:
	
	Excised from exp.h so that dec.h includes less.

	* dec.cc, dec.h, exp.cc, exp.h, stm.cc, Makefile.in, camp.l, camp.y:
	
	Allow dimensions for types in cast expression.

2005-07-02  jcbowman  <jcbowman@wizard>

	* doc/datagraph.asy, doc/errorbars.asy, base/graph.asy,
	* doc/asymptote.texi: 
	
	Added ability to specify custom tick locations.

	* runtime.cc: Fix warning messages when XDR is disabled.

	* base/graph.asy: Added more default initializers.

	* doc/asymptote.texi, TODO, camp.y:

	Allow explicit casts to any name. Documented general implicit and
	explicit casts.

2005-07-01  jcbowman  <jcbowman@wizard>

	* TODO, doc/asymptote.texi:
	
	Documented named function arguments and rest parameters.

	* patches/README, patches/bison.patch, application.h, exp.h,
	* types.cc, application.cc: 
	
	Fixed warning messages; updated bison patch to bison-2.0a.

2005-06-30  jcbowman  <jcbowman@wizard>

	* env.h, types.h: Fixed more warning messages.

	* fileio.h, memory.h, types.h: Fixed cxx errors and warnings.

	* util.cc: Replaced strdup by strcpy.

	* base/plain.asy, doc/asymptote.texi, runtime.h, builtin.cc,
	* camp.l, exp.cc, exp.h, runtime.cc: 
	
	Renamed nullframe to newframe.

2005-06-30  jcbowman  <jcbowman@wizard>

	* fileio.h, main.cc:
	
	Fixed memory leak and segmentation fault in fileio garbage collection.

	* base/plain.asy: Renamed write function keywords.

2005-06-29  jcbowman  <jcbowman@wizard>

	* examples/triangle.asy, base/stats.asy, base/tree.asy,
	* base/geometry.asy, base/graph.asy, base/graph3d.asy,
	* base/math.asy, base/palette.asy, base/patterns.asy,
	* base/plain.asy: 
	
	Extend use of operator init().

	* doc/datagraph.asy, doc/diatom.asy, doc/image.asy, doc/logo.asy,
	* doc/mosquito.asy, doc/shadedtiling.asy,
	* examples/PythagoreanTree.asy, examples/elliptic.asy,
	* examples/equilchord.asy, examples/fjortoft.asy,
	* examples/planes.asy, examples/venn.asy,
	* examples/wheelanimation.asy, doc/asymptote.texi, base/plain.asy: 
	
	Added default initializer to picture; removed "=new picture" from
	examples. Documented operator init().

	* base/graph.asy: Removed ticksT tag.

	* locate.cc, locate.h, memory.h: Fixed memory leak in locateFile.

2005-06-28  jcbowman  <jcbowman@wizard>

	* xstream.h: Removed unnecessary semicolons.

	* application.h: Added virtual destructor.

	* program.h, types.h, callable.h, fileio.h, guide.h, knot.h, memory.h:
	
	Added virtual destructors.

	* examples/lowint.asy, examples/spiral.asy, examples/sqrtx01.asy,
	* examples/workcone.asy, examples/yingyang.asy, doc/asymptote.texi,
	* base/plain.asy: 
	
	Removed xsize, ysize, and keepAspect from shipout, in favour of size().

	* configure.ac: Added -lgccpp also with --enable-gc=system.

2005-06-28  hammera  <hammera@wizard>

	* base/plain.asy: Put reverse functions back in.

	* base/plain.asy, main.cc, memory.h, name.cc, name.h, newexp.cc,
	* record.cc, record.h, runtime.cc, runtime.h, stm.cc, symbol.cc,
	* symbol.h, types.cc, types.h, configure.ac, dec.cc, dec.h,
	* entry.cc, entry.h, env.cc, env.h, exp.cc, exp.h, genv.cc, genv.h,
	* import.cc, import.h, Makefile.in, TODO, application.cc,
	* application.h, builtin.cc, camp.l, camp.y, cast.cc, cast.h,
	* coder.h, coenv.cc, coenv.h:
	
	Results of type overhaul:
	  - venv now uses a hashtable to quickly look up variable of a
	    specific type
	  - initializers and casts are now functions in the environment
	  - matching arguments to signatures handled by application class
	  - (side-effects of) expressions are evaluated left-to-right
	  - exp::trans(e, target) split into transToType (which implicitly
	    casts) and transToType (which doesn't)
	  - added keyword and rest arguments
	  - added formal class to types

2005-06-26  jcbowman  <jcbowman@wizard>

	* util.cc:
	
	Work around spurious uninitialized warning message under gcc 3.3.3.

	* util.cc: Code cleanup.

	* util.cc:
	
	Allow use of single quotes to prevent system command word
	splitting on spaces.

2005-06-25  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/asymptote.texi, drawfill.cc, runtime.cc,
	* runtime.h:
	
	Fixed bug in fill, due to a numerical precision issue, which shows
	up with g++-4.00 under optimization.

	Removed unused routine and declarations.

	* table.h: Removed unused virtual destructor.

	* examples/workcone.asy, doc/asymptote.texi, base/feynman.asy,
	* base/graph.asy, base/patterns.asy, base/plain.asy: 
	
	Simplified tag handling.

2005-06-25  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Replace OverwriteT with integer variables.

	* base/plain.asy: Simplified coding of endl and tab qualifiers.

2005-06-23  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.82cvs.

	* doc/asymptote.texi: Fixed indentation.

	* drawelement.h, guide.h, knot.h, pen.h, runtime.cc, types.cc:
	
	Fixed g++-4.0.0 warning messages.

	* table.h: Fixed cxx compilation error.

2005-06-23  rtprince  <rtprince@wizard>

	* runtime.h: Cleanup header.

	* main.cc: Maybe fix GC on darwin.

2005-06-22  jcbowman  <jcbowman@wizard>

	* base/plain.asy, arrayop.h, builtin.cc:
	
	Replaced writeP in favour of write; added writen entry points for pen,
	guide, and transform.

2005-06-22  hammera  <hammera@wizard>

	* knot.cc: Fixed solving bug.

2005-06-22  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Allow graphs with just one data point.

2005-06-20  jcbowman  <jcbowman@wizard>

	* examples/eetomumu.asy, base/feynman.asy: Feynman updates.

2005-06-20  rtprince  <rtprince@wizard>

	* inst.cc, Makefile.in, access.cc, access.h, array.h, arrayop.h,
	* builtin.cc, builtin.h, callable.cc, callable.h, coder.h, dec.cc,
	* drawimage.h, exp.cc, exp.h, inst.h, main.cc, name.cc, newexp.cc,
	* program.cc, program.h, psfile.h, record.cc, record.h, runtime.cc,
	* runtime.h, stack.cc, stack.h, vm.h:
	
	Split up inst.h.

2005-06-19  rtprince  <rtprince@wizard>

	* table.h: gcc4 is more const.

2005-06-19  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.81cvs.

	* INSTALL, configure.ac, doc/asymptote.texi:
	
	Upgrade to use Boehm gc6.5 garbage collector.

	* pool.h: Tom's patch to pool segmentation fault.

2005-06-18  rtprince  <rtprince@wizard>

	* coder.cc, inst.h: Remove obsolete maxStackSize.

2005-06-18  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Deep copy all members of picture.

	* INSTALL: Quick installation instructions.

2005-06-18  rtprince  <rtprince@wizard>

	* Makefile.in: Tests.

2005-06-18  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.80cvs.
	
	* Makefile.in: Remove unused features.
	
	* runtime.in: Fixed cxx warning messages.

	* doc/secondaryaxis.asy, doc/Bode.asy, doc/asymptote.texi,
	* base/graph.asy, base/plain.asy:
	
	Check for empty picture in secondary axes routines; added another
	example of a secondary axis.

2005-06-18  rtprince  <rtprince@wizard>

	* runtime.pl, wce, Makefile.in, builtin.cc, genrun.h, runtime.cc,
	* runtime.in:
	
	Automate testing.

	* coder.cc, coder.h, inst.cc, inst.h, stack.cc:
	
	Change vm::program to hold inst directly.

	* Makefile.in, builtin.cc, builtin.h, runtime.in, runtime.pl:
	
	Compile genrun.cc separately.

	* camperror.cc, main.cc, stack.h, vm.h: Move vm interface to vm.h.

	* memory.h, pool.h, configure.ac, fileio.h, main.cc:
	
	Properly collect fileio.

2005-06-16  rtprince  <rtprince@wizard>

	* runtime.cc: item handles GC allocation.

2005-06-16  jcbowman  <jcbowman@wizard>

	* runtime.cc: Readded 2005-05-26 fix for substr bug.

2005-06-16  rtprince  <rtprince@wizard>

	* dec.cc, dec.h, drawelement.h, entry.h, errormsg.h, exp.h,
	* flatguide.h, frame.h, import.h, inst.h, main.cc, memory.h, pen.h,
	* runtime.cc, stm.h, table.h, types.h, absyn.h, access.h:
	
	Make everything use GC (except fileio).

2005-06-15  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Don't allow a picture to be added to itself.

	* castop.h: Backported recent castop.h change to g++ 3.3.4.

2005-06-14  hammera  <hammera@wizard>

	* exp.cc, exp.h: Added getType caching.

2005-06-13  jcbowman  <jcbowman@wizard>

	* configure.ac, memory.h: Reverted gc/gc.h change back to gc.h.

2005-06-04  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Document type1cm.

2005-06-01  jcbowman  <jcbowman@wizard>

	* doc/diatom.asy, base/graph.asy, base/stats.asy:
	
	Fixed autoscaling of scaled axes, e.g. Linear(x) with x != 1.

2005-05-29  jcbowman  <jcbowman@wizard>

	* examples/PythagoreanTree.asy:
	
	Added asymmetric Pythagorean tree example.

	* base/math.asy: Added aSin, aCos, aTan functions.

2005-05-27  jcbowman  <jcbowman@wizard>

	* memory.h, configure.ac: Changes for Debian port.

	* access.h, entry.h, frame.h, import.h, table.h, types.h:
	
	Fixed memory leaks.

	* main.cc: Fixed memory leak.

	* access.h, entry.h, frame.h, import.h, table.h, types.h:
	
	Added Tom's remaining garbage collection changes.

	* fileio.h, main.cc:
	
	Garbage collect files on explicit closure and at exit.

2005-05-26  jcbowman  <jcbowman@wizard>

	* runtime.cc, item.h: Fixed substr bug.

2005-05-20  hammera  <hammera@wizard>

	* base/plain.asy: Changed wording in comments. Indenting.

2005-05-20  rtprince  <rtprince@wizard>

	* exp.cc, item.h, memory.h, runtime.cc, runtime.in, builtin.cc,
	* cast.cc, castop.h, coder.cc, coder.h, fileio.h:
	
	Use mem::string during runtime.
	
	Make encode(inst) private.
	
	item.h calls new(UseGC).

2005-05-19  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.79cvs.

	* memory.h: Disable GC_STRING for now.

	* camp.l, util.h: Port to cygwin.

2005-05-18  jcbowman  <jcbowman@wizard>

	* fileio.h:
	
	Move file back under control of memory::managed to ensure
	deconstructor is called.

x2005-05-18  rtprince  <rtprince@wizard>

	* item.h, stack.cc, coder.cc, coder.h, inst.cc, inst.h:
	
	Use item for everthing in inst.

	* memory.h: Define mem::string.

	* dec.cc, genv.cc, newexp.cc: Use coder::encode everywhere.

2005-05-18  rtprince  <rtprince@wizard>

	* memory.h: Cleanup memory.h.

2005-05-18  jcbowman  <jcbowman@wizard>

	* pipestream.h, util.cc: Changed index to strchr for cygwin port.

	* configure.ac: Fixed LIB.

2005-05-15  jcbowman  <jcbowman@wizard>

	* configure.ac: Check headers earlier.

	* configure.ac: Make --enable-gc=system also check for gc.h.

2005-05-12  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, inst.h:
	
	Workaround "GC Warning: Repeated allocation of very large block"
	messages. 

	* arrayop.h, mathop.h: Fix NaN handling.

	* base/graph.asy: Better checkaxis test.

2005-05-12  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, configure.ac:
	
	Added --enable-gc=system configuration option to use system libgc
	and libgccp.

2005-05-11  jcbowman  <jcbowman@wizard>

	* memory.h:
	
	Define traceable_allocator when garbage collection is disabled.

	* base/math.asy, doc/asymptote.texi, arrayop.h, builtin.cc:
	
	Added binary search routine.
	
2005-05-10  rtprince  <rtprince@wizard>

	* dec.cc, dec.h, exp.h, inst.h, stm.h, types.h: Make CVS -lgccpp clean.

	* item.h: Make item use new(UseGC).

2005-05-10  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.78cvs.

	* examples/Geometry.asy, examples/orthocenter.asy: Renamed example.

	* doc/asymptote.texi, Makefile.in, configure.ac, gc6.3.tar.gz:
	
	Distribute Boehm GC as a separate package.

	* memory.h, pool.h, table.h, types.h, absyn.h, access.h, entry.h,
	* errormsg.h, frame.h, import.h, inst.h, main.cc: 
	
	Fixed parser leak again.

	* stack.cc: Fixed broken draw call.

2005-05-09  jcbowman  <jcbowman@wizard>

	* runtime.cc: More gc string updates.

	* gc_atomic.h: Unused file.

	* memory.h: Handle out of memory errors gracefully.

2005-05-09  rtprince  <rtprince@wizard>

	* dec.cc: list<decid *> is from mem::.

	* stack.h: Make theStack be mem::deque.

2005-05-09  jcbowman  <jcbowman@wizard>

	* configure.ac, main.cc, pool.h: Fixed segmentation fault.

2005-05-09  rtprince  <rtprince@wizard>

	* picture.cc: Dont gc non-heap string.

	* Makefile.in: Fix makefile. :-(

	* stack.cc, item.h, picture.cc, psfile.h, runtime.cc,
	* drawelement.h, exp.cc: 
	
	More gc fixes.

	* Makefile.in, absyn.h, access.h, configure.ac, dec.h,
	* drawlabel.cc, entry.h, errormsg.h, exp.h, frame.h, import.h,
	* inst.h, item.h, main.cc, memory.h, parser.cc, picture.cc,
	* stack.cc, stack.h, stm.h, table.h, texfile.h, types.h: 
	
	GC fixes. We dont need mempool.

2005-05-09  jcbowman  <jcbowman@wizard>

	* drawpath.cc, picture.cc, pool.h: Fixed cxx errors.

	* runtime.cc, texfile.h, types.h, knot.h, lexical.h, main.cc,
	* memory.h, pair.h, picture.cc, picture.h, pool.cc, pool.h,
	* psfile.h, guide.h, import.h, inst.h, item.h, knot.cc, access.h,
	* camperror.h, collect.h, configure.ac, drawelement.h, drawlabel.cc,
	* drawpath.cc, entry.h, errormsg.h, exp.h, frame.h, absyn.h: 
	
	Fixed memory leak in parser and translator.

	Cleaned up interface to the Boehm garbage collector.

2005-05-08  jcbowman  <jcbowman@wizard>

	* examples/piicon.eps: Figure for Geometry.asy.

	* Makefile.in: Minor fixes.

	* Makefile.in: Workaround Makefile problem in gc6.3.

	* stack.cc:
	
	Move trace/interrupt check to beginning of virtual machine loop.

2005-05-08  jcbowman  <jcbowman@wizard>

	* examples/Geometry.asy, examples/Pythagoras.asy,
	* examples/cosaddition.asy, examples/geometry.asy,
	* examples/sflogo.eps, examples/sinxlex.asy, examples/triangle.asy,
	* doc/asymptote.texi, base/geometry.asy, base/math.asy: 
	
	Added beginnings of a geometry module, including a triangle
	structure and functions to draw interior arcs of triangles and
	perpendicular symbols.

	* pool.h, Makefile.in, configure.ac: Distribute generated source files.

	* runtime.cc: Fixed type of argument of dividebyzero.

	* collect.h, mathop.h, runtime.cc: cxx updates.

	* stack.cc, stack.h: DEBUG_STACK updates.

	* doc/asymptote.texi, pool.cc, settings.cc, settings.h,
	* texfile.cc, texfile.h, drawelement.h, drawpath.cc, main.cc,
	* picture.cc, picture.h: 
	
	Minor garbage collection updates.

2005-05-07  jcbowman  <jcbowman@wizard>

	* configure.ac: Autoconf backwards compatibility workaround.

	* main.cc: Renamed COLLECT to USEGC.

	* Makefile.in, collect.h, configure.ac, main.cc, pair.h, types.h:
	
	Added configuration to optionally disable garbage collection.

	* Makefile.in, doc/asymptote.texi, inst.h: Fixed Makefile dependencies.

	* pair.h, parser.cc, parser.h, path.cc, path.h, pen.h, picture.cc,
	* picture.h, pipestream.h, psfile.cc, psfile.h, runtime.cc,
	* runtime.in, settings.cc, settings.h, stack.cc, stack.h, symbol.cc,
	* symbol.h, texfile.cc, texfile.h, transform.h, types.cc, types.h,
	* util.cc, util.h, genv.h, guide.h, import.h, inst.h, interact.cc,
	* item.h, knot.cc, knot.h, lexical.h, locate.cc, locate.h, main.cc,
	* builtin.cc, camp.l, camp.y, camperror.cc, camperror.h, cast.cc,
	* castop.h, configure.ac, drawclipbegin.h, drawclipend.h,
	* drawelement.h, drawimage.h, drawlabel.cc, drawlabel.h,
	* drawpath.cc, drawpath.h, drawverbatim.h, entry.h, errormsg.cc,
	* errormsg.h, exp.cc, exp.h, fileio.cc, fileio.h, frame.h,
	* gc6.3.tar.gz, genv.cc, Makefile.in, TODO, absyn.cc, absyn.h,
	* access.h: 
	
	Implemented Boehm garbage collection.

2005-05-06  hammera  <hammera@wizard>

	* knot.cc: Fixed solveSection bug.

2005-05-05  jcbowman  <jcbowman@wizard>

	* base/palette.asy: Added missing comma.

	* doc/westnile.asy, base/palette.asy, base/plain.asy, base/graph.asy:
	
	Addressed pen plabel vs. p issues.

	* doc/asymptote.texi, base/plain.asy, genv.cc, runtime.cc,
	* runtime.h, dec.cc, dec.h, builtin.cc:
	
	Renamed eval(f(T), T[] A) to map(f(T), T[] A).

	Documented eval(string) and make eval autoload plain.

	Implemented T[] concat(T[] A, T[] B) to concatenate two arrays
	into a new one.

	* base/math.asy: Added pair exp(pair) and pair log(pair).

	* base/graph.asy, base/math.asy, base/palette.asy,
	* doc/asymptote.texi, runtime.cc: 
	
	Make int quotient(int,int) portable.

	Updated base files to use quotient for integer division.

	* builtin.cc, doc/asymptote.texi, mathop.h, runtime.cc, runtime.h:
	
	Make int/int return a real, as is normally desired; the new function
	int quotient(int,int) returns an integer quotient.

	* TODO: Updated TODO items.

	* picture.cc: List iterator simplification.

	* base/plain.asy: Added reltime(path, real).

	* doc/asy.1, doc/asymptote.texi, entry.cc:
	
	Make -l option list available global variables as well as functions.

2005-05-04  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Minor updates.

	* parser.cc:
	
	For portability, explicitly check that input file isn't a
	directory on systems with stat.

2005-05-03  jcbowman  <jcbowman@wizard>

	* examples/triangle.asy:
	
	Added example of a transformable triangle structure.

2005-05-02  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.77cvs.

	* examples/spring.asy: Added PenMargin.

	* doc/asy.1, doc/asymptote.texi, entry.cc, entry.h, genv.cc,
	* genv.h, main.cc, record.h, settings.cc, settings.h, types.cc:
	
	Added -l option to list available global functions.

	Documentation default structure constructors.

	* base/plain.asy: Added missing plabel.

	* interact.cc, interact.h, main.cc, pipestream.h, runtime.cc,
	* texfile.h:
	Improved error handling in pipestream; wrap fork to avoid zombies.

	TeX errors should force TeX pipe to be closed.

	* examples/sin1x.asy, examples/sqrtx01.asy, examples/wedge.asy,
	* examples/xsin1x.asy:
	
	Updated examples.

	* doc/asymptote.texi, doc/latexusage.tex:
	
	Updated documentation.

	* castop.h:
	
	Don't push a final null entry when reading an array in line mode.

	* base/graph.asy, base/palette.asy, base/plain.asy:
	
	Fixed grouping in add(pair,frame,frame,group).

	Added put argument to pic.add, attach, etc.

	Added plabel argument to draw to allow labels and legends to use a
	different pen than the curve itself.

	Rearranged plabel and p arguments in axis routines for consistency.

	Added getstring and getreal functions.

	Added Mark, MarkFill frame arrays and Mark(int) function.

	* base/math.asy: Added node, value, and slope functions for paths.

2005-05-01  rtprince  <rtprince@wizard>

	* camperror.cc, camperror.h, drawclipend.h, errormsg.cc,
	* errormsg.h, fileio.h, pair.h, path.cc, path.h, psfile.cc,
	* psfile.h, stack.cc, transform.h, util.cc: 
	
	Make camperror throw instead of queuing.

2005-05-01  hammera  <hammera@wizard>

	* camp.l, camp.y: ''

2005-04-30  hammera  <hammera@wizard>

	* exp.cc, exp.h: Allowed more implicit scaling.

	* camp.y: Changed precedence for implicit scaling.

2005-04-26  jcbowman  <jcbowman@wizard>

	* examples/near_earth.asy, main.cc:
	
	Flush exited child processes (zombies) in batch mode.

	* picture.cc:
	
	Workaround interactive mode bug introduced by recent changes to
	main.cc.

	On multiple file runs, texpreamble should appear before any other
	commands.

	* TODO, base/graph.asy, examples/near_earth.asy:
	
	Added example of 3d featpost3d arc.

2005-04-25  rtprince  <rtprince@wizard>

	* parser.cc: Make parseStdin() turn off lex debugging.

2005-04-24  jcbowman  <jcbowman@wizard>

	* base/plain.asy:
	
	Added Dotted(pen) function which returns a dotted pen at double
	the linewidth.

2005-04-23  jcbowman  <jcbowman@wizard>

	* fileio.h: Clear existing errors on reading from standard input.

2005-04-23  rtprince  <rtprince@wizard>

	* main.cc: Fix interrupt handling.

2005-04-22  rtprince  <rtprince@wizard>

	* parser.cc: Cleanup.

2005-04-22  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, parser.cc: Fixed compilation error.

2005-04-22  rtprince  <rtprince@wizard>

	* parser.cc: Fix segfault.

2005-04-22  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, lexical.h, settings.cc, camp.l, castop.h,
	* configure.ac: 
	
	Replaced boost::lexical_cast with lexical.h to remove last remaining
	dependency on boost header files.

2005-04-22  rtprince  <rtprince@wizard>

	* main.cc, runtime.cc: Cleanup.

	* main.cc: Refactoring main.cc.

	* genv.cc, main.cc: More refactoring in main.cc

	* util.cc, util.h, main.cc, runtime.cc:
	
	findextension is used only to strip suffix. So strip it.

2005-04-21  rtprince  <rtprince@wizard>

	* main.cc: Fix interactive.

	* main.cc: More main.cc cleanup.

	* main.cc: Simplify error handling.

	* main.cc: Start pulling apart main(), so it easier to
	change and understand. Doesn't do much, but gives a place to start.

	* errors, wce: Update ./wce.

	* newexp.h, stm.cc, exp.h: Remove warning about side-effects.

2005-04-21  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.76cvs.

	* doc/asymptote.texi, base/graph.asy: Documented xline and yline.

	* doc/diatom.asy: More updates.

	* doc/diatom.asy: Updated axis call.

2005-04-20  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated binary installation instructions.

	* base/palette.asy: Update yaxis call.

	* genv.h, knot.cc, main.cc, parser.cc, runtime.cc, genv.cc:
	
	Consolidated autoload code.

	Suppressed "could not load" error message in interactive mode.

	Fixed gcc 3.2 warnings and error message.

	* base/math.asy: Added linear interpolation and binary search routines.

	* base/graph.asy, doc/asymptote.texi:
	
	Moved put argument to axis routines to end of argument list, for
	consistency with draw.

	Added xline and yline interfaces to axis routines.

2005-04-20  rtprince  <rtprince@wizard>

	* main.cc, runtime.cc, stack.cc, stack.h:
	
	Change stack::run(lambda*) to a free function vm::run.

	* main.cc, parser.cc: Fix handling of bad parse.

	* parser.cc: Refactor doParse().

2005-04-20  jcbowman  <jcbowman@wizard>

	* base/stats.asy:
	
	Fixed definition of correlation coefficient; added fit function to
	linefit struct.

	* interact.cc, parser.cc:
	
	Implemented portable way of testing for directories (but not null
	files).

2005-04-19  jcbowman  <jcbowman@wizard>

	* main.cc, parser.cc, errormsg.cc: Fixed stdin handling of parser.cc.

2005-04-19  jcbowman  <jcbowman@wizard>

	* errormsg.cc, errors, main.cc:
	
	Fixed more bugs associated with new parser.

	* interact.cc: filebuf should not be static; fixed error message.

	* interact.cc:
	
	Interactive input command now checks for a directory or null file.
	Print an error if input file can't be loaded.

	* runtime.cc: Make execute() autoload plain (and any gui file) again.

	* genv.h, interact.cc, main.cc, parser.cc, parser.h, runtime.cc,
	* runtime.h, runtime.in, settings.cc, settings.h, Makefile.in,
	* builtin.cc, camp.l, genv.cc:
	
	Re-added new parser, with fixes for standard input bugs (including a
	segmentation fault with -p option).

	Attempting to read a directory or a null file now returns
	"error: could not load module" instead of generating an exception.

	* base/graph.asy: Changed default value of axislabelmargin to 1.

2005-04-19  rtprince  <rtprince@wizard>

	* main.cc:
	
	Don't segfault on -p if we can't parse the file, but don't report
	an error.

2005-04-19  jcbowman  <jcbowman@wizard>

	* parser.cc, parser.h, runtime.cc, runtime.in, main.cc, fileio.cc:
	
	Fixed cxx errors and and warnings; removed unused parser files.

	* builtin.cc, camp.l, genv.cc, genv.h, interact.cc, main.cc,
	* runtime.cc, runtime.h, settings.cc, settings.h, Makefile.in:
	
	Revert to old parser until bugs in new parser are fixed.

2005-04-18  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, fileio.cc:
	
	Fixed bug in csv mode when line mode is not set.

2005-04-16  rtprince  <rtprince@wizard>

	* Makefile.in, builtin.cc, runtime.cc, runtime.pl, .cvsignore:
	
	runtime.pl updates. Actually use the generated code.

	* runtime.in: Typos.

	* inst.h: inst.h cleanups.

	* item.h: Implement type query for vm::item.

	* inst.h: We use item to store string* in inst.

2005-04-15  rtprince  <rtprince@wizard>

	* runtime.in, runtime.pl, Makefile.in: Fixes for runtime.pl script.

	* runtime.in, runtime.pl: Initial runtime.pl script.

2005-04-14  rtprince  <rtprince@wizard>

	* runtime.h, runtime.cc, parser.cc, parser.h, builtin.cc: Add eval.

	* genv.h, main.cc, genv.cc: Move interactive logic out of genv to main.

2005-04-14  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Interactive mode update.

	* configure.ac: Incremented version to 0.75cvs.

	* doc/asymptote.texi:

	Removed figures with shading from manual since many printers
	don't understand PostScript 3.

	* base/palette.asy:

	Reduced default number of colors in images to work around
	postscript/pdf limitations (this prevented recent manuals from
	being printed).

	* doc/lineargraph.asy, doc/lineargraph0.asy, locate.cc, settings.cc:

	Fixed segmentation fault in version 0.73.

2005-04-14  rtprince  <rtprince@wizard>

	* entry.cc: overloaded::simplify() handles allocation.

2005-04-13  rtprince  <rtprince@wizard>

	* stack.cc, stack.h, frame.h, inst.cc, inst.h, item.h, runtime.cc,
	* coder.cc: 
	
`	Make vm::frames extendable, and make function explicitly allocate
	their local variables. This might be a first step towards true
	interactive support or caching modules from one run to another.

2005-04-13  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.74cvs.

	* runtime.cc: Make nullpath static.
	
	* doc/asymptote.texi: Minor updates.

	* runtime.cc: Push constructed objects as pointers.

	* inst.h, inst.cc: Fixed sign of virtual assembly code line numbers.

	* inst.cc, inst.h, stack.cc: Fixed more warning messages.

	* castop.h, drawpath.cc, fileio.h, main.cc, pen.h, picture.cc,
	* psfile.cc, runtime.cc, texfile.cc, util.cc, arrayop.h: 
	
	Accept cast of empty string to 0.

	Use string.empty() everywhere.

	Minor formatting changes.

2005-04-13  rtprince  <rtprince@wizard>

	* inst.h, item.h, inst.cc: Don't use boost iterator facade.

	* item.h: vm::item doesn't need to be memory::managed,
	since vm::frame is memory::managed_array.

	* locate.cc: Fix absolute filename handling.

2005-04-13  jcbowman  <jcbowman@wizard>

	* arrayop.h, castop.h, inst.cc, runtime.cc: Fixed more cxx warnings.

	* arrayop.h, castop.h, item.h, knot.cc, parser.cc, runtime.cc,
	* runtime.h:
	
	Fixed cxx error and warning messages.

	* castop.h, fileio.h, item.h, runtime.cc: Further minor optimizations.

2005-04-12  jcbowman  <jcbowman@wizard>

	* item.h: Removed unused friend declaration.

	* item.h, stack.cc, inst.h:
	
	Replaced boost::any with a much faster type-safe union.

2005-04-12  rtprince  <rtprince@wizard>

	* arrayop.h, mathop.h: mathop's don't need vm::stack.

	* runtime.cc, runtime.h, stack.cc, stack.h, castop.h, inst.cc,
	* main.cc, mathop.h, arrayop.h: 
	
	Move curPos out of vm::stack.

	* dec.cc: Push empty item instead of (void*)0.

2005-04-11  rtprince  <rtprince@wizard>

	* Makefile.in, camp.l, genv.cc, parser.cc, parser.h:
	
	Separate parser code from camp.l and genv.cc into parser.{h,cc}.

	* settings.cc:
	
	Change ./ to . in searchPath to avoid .//file.asy in messages.

	* locate.cc, locate.h, Makefile.in, genv.cc, interact.cc,
	* settings.cc, settings.h:
	
	Reimplement locateFile using std::string.

2005-04-10  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, picture.cc, runtime.cc, texfile.cc, texfile.h:
	Fixed texpreamble for multiple files and latex asy environment.

2005-04-09  jcbowman  <jcbowman@wizard>

	* base/metapost.asy, examples/conicurv.asy: Removed nonscalable fonts.

	* doc/asymptote.texi, examples/hierarchy.asy, base/plain.asy:
	
	box(frame), ellipse(frame), labelbox(frame), labelellipse(frame) now
	return the boundary as a guide.

	box(frame) and ellipse(frame) prepend to frame for filling with a
	background colour, as illustrated in hierarchy.asy.

2005-04-08  jcbowman  <jcbowman@wizard>

	* examples/hierarchy.asy: Example of labelellipse.

	* doc/asymptote.texi, base/plain.asy:
	
	Added ellipse(frame) and labelellipse(frame,string,position).
	Renamed bbox(frame) to box(frame) for consistency.

	* inst.h:
	
	Workaround for bug in build 1671 of gcc (version 3.3 20030304)
	under Darwin (MacOS).

2005-04-07  rtprince  <rtprince@wizard>

	* stack.cc: Cache *ip as reference rather than pointer.

2005-04-06  jcbowman  <jcbowman@wizard>

	* main.cc: Added check to interrupt handler.

2005-04-06  jcbowman  <jcbowman@wizard>

	* errormsg.h: Fixed cxx warning messages.

	* camperror.h, errormsg.cc, errormsg.h, main.cc, stack.cc:
	
	Optimized main loop.

2005-04-06  rtprince  <rtprince@wizard>

	* inst.cc:
	
	Use error from stack.cc instead of calling em->runtime directly.

2005-04-06  jcbowman  <jcbowman@wizard>

	* errormsg.h, stack.cc, stack.h: minor optimizations

	* errormsg.cc: Reformatted.

2005-04-05  rtprince  <rtprince@wizard>

	* errormsg.cc: Operator precedence fix.

	* stack.h: We don't use stack:ip any more.

	* coder.cc, coder.h, inst.cc, inst.h, stack.cc, stack.h:
	
	Reapply curPos patch.

	* errormsg.cc: Fix interactive error reporting.

	* camp.l, errormsg.cc, errormsg.h:
	
	Track line numbers in position instead of fileinfo.

	* coder.cc: Don't access program.encode directly.

2005-04-04  jcbowman  <jcbowman@wizard>

	* picture.cc: prepend should insert after beginning of layer

	* runtime.cc, picture.h, picture.cc, errormsg.cc:
	
	Make empty() use nodes.empty() rather than nodes.size().

	STL list portability fixes.

	* doc/asymptote.texi, base/graph.asy:
	
	Ignore crop() on an empty picture.

	* configure.ac: Incremented version to 0.73cvs.

	* errormsg.cc, errormsg.h: Removed spurious blank tracing lines.

	* coder.cc, coder.h, errormsg.cc, errormsg.h, inst.cc, inst.h,
	* main.cc, stack.cc, stack.h: 

	Revert fileposition changes again, due to segmentation fault with
	-vvvvv.

	Moved line-number tracing code into main loop.

	Avoid the need for the lastpos variable by moving stack s out of
	main loop in main.cc.

	* coder.cc, coder.h, inst.cc, inst.h, stack.cc, stack.h:
	
	Reinstated new file position code w/segmentation fault bug fixed.

	* coder.cc, coder.h, errormsg.h, inst.cc, inst.h, stack.cc, stack.h:
	
	Backout 2005-03-17 runtime file position changes to avoid a
	segmentation fault.

2005-04-03  jcbowman  <jcbowman@wizard>

	* runtime.cc:
	
	Check for space format specifier as well as plus in
	format(string,real).

	* examples/yingyang.asy, doc/asymptote.texi, base/plain.asy:
	
	Removed deconstruct flag from picture in favour of group option to
	picture and frame add routines.

	Updated documentation.

2005-04-02  jcbowman  <jcbowman@wizard>

	* drawgroup.h: Added missing file.

	* base/graph.asy, base/plain.asy, base/pstoedit.asy,
	* base/stats.asy, drawclipbegin.h, drawclipend.h, drawelement.h,
	* drawlayer.h, picture.cc, picture.h, runtime.cc, runtime.h,
	* transform.h, types.cc, types.h, builtin.cc:
	
	Reimplemented deconstruction at a lower level to allow both
	pictures and frames to be deconstructed (or grouped with
	begingroup/endgroup). Deconstruction now works properly with
	clipping and erasing.

	* drawelement.h, drawlabel.cc, drawlabel.h, picture.cc:
	
	Check that drawLabel::bounds is called before drawLabel::write.

	Remove unused setup code.

2005-04-01  jcbowman  <jcbowman@wizard>

	* doc/lineargraph.asy, doc/lineargraph2.asy, doc/asymptote.texi,
	* base/plain.asy:
	
	Added attach(pair,picture,frame) to automatically increase the
	picture size to accomodate adding a frame about a user coordinate.

	Added warning about erasing deconstructed pictures.

	Updated lineargraph and documentation to use attach.

	* picture.cc: Reset bounding box when prepending.

	* base/drawtree.asy, base/graph.asy, base/plain.asy,
	* doc/loggraph.asy, examples/labelbox.asy, drawclipend.h, errors,
	* picture.cc, picture.h: 
	
	Fixed label alignment vs. transformation problem.

	Removed frame labelBox() in favour of void labelbox(frame);
	updated example.

	Make logarithmic checks in autoscale conditional.

	xlimits and ylimits now adjust deferred drawing bounds.

	Simplified bboxstack handling.

	Updated "errors" list.

2005-03-31  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, locate.h, locate.cc, configure.ac, Makefile.in:
	
	Revert configuration to only require boost headers.

	* camp.l, errormsg.cc, interact.cc: Backout boost fixes.

2005-03-31  rtprince  <rtprince@wizard>

	* camp.l, errormsg.cc, errormsg.h, genv.cc, interact.cc,
	* settings.cc, settings.h:
	
	Revert boost::filesystem changes.

2005-03-31  jcbowman  <jcbowman@wizard>

	* base/math.asy, doc/asymptote.texi:
	
	Added explicit linear equation solver; used to handle general
	matrix inversion.

	Fixed return type of real[][] * real[].

	Hard coded 2x2 and 3x3 determinants.

	Update documentation.

	* libboost/operations_posix_windows.cc: Fixed cxx warning message.

	* doc/asymptote.texi: Minor updates.

	* libboost/convenience.cc, libboost/exception.cc,
	* libboost/operations_posix_windows.cc,
	* libboost/path_posix_windows.cc, configure.ac, doc/asymptote.texi,
	* Makefile.in: 
	
	Added portable version of boost::filesystem for systems without boost
	library, in particular for linux-alpha cxx compiler.

2005-03-29  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Updated documentation.

	* configure.ac: Allow compatibility with older versions of autoconf.

2005-03-28  jcbowman  <jcbowman@wizard>

	* doc/histogram.asy, base/stats.asy, doc/asymptote.texi,
	* base/plain.asy, base/graph.asy, camp.l, configure.ac, errormsg.cc,
	* runtime.cc, util.h, Makefile.in:
	
	Updated configuration and documentation regarding boost-1.32.0 library.

	Improved format(string,real).

	Generalized histogram and changed order of arguments of frequency
	and histogram (bin boundaries are now given before the data).

	Fixed problems with Log(false,false).

2005-03-25  jcbowman  <jcbowman@wizard>

	* drawclipbegin.h, drawclipend.h, drawelement.h, drawimage.h,
	* drawlabel.cc, drawlabel.h, drawpath.cc, drawpath.h, picture.cc,
	* picture.h: 
	
	Cache drawelement bbox contributions where possible.

	Make bboxstack local to picture frame.

2005-03-25  rtprince  <rtprince@wizard>

	* doc/.cvsignore: We generate .png's.

	* genv.h: Don't have symbolToFile anymore.

	* errormsg.h, genv.cc, interact.cc, locate.cc, locate.h,
	* settings.cc, settings.h, Makefile.in, camp.l, errormsg.cc:
	
	Use boost::filesystem for find files to parse.
	
	Move file locating logic to locate.{cc,h}.

2005-03-25  jcbowman  <jcbowman@wizard>

	* doc/lineargraph.asy, doc/lineargraph2.asy:
	Simplified legend examples.

2005-03-24  jcbowman  <jcbowman@wizard>

	* doc/bigsquare.asy, doc/cube.asy, doc/datagraph.asy,
	* doc/diagonal.asy, doc/exp.asy, doc/generalaxis.asy, doc/hatch.asy,
	* doc/histogram.asy, doc/image.asy, doc/labelsquare.asy,
	* doc/latexusage.tex, doc/lineargraph.asy, doc/lineargraph0.asy,
	* doc/lineargraph2.asy, doc/loggraph.asy, doc/mosquito.asy,
	* doc/parametricgraph.asy, doc/quartercircle.asy,
	* doc/secondaryaxis.asy, doc/shade.asy, doc/shadedtiling.asy,
	* doc/square.asy, doc/superpath.asy, doc/tile.asy,
	* doc/asymptote.texi: 
	
	Workaround makeinfo indentation bug.

	* doc/asymptote.texi: Fixed typos.

	* examples/labelbox.asy: Simplified example.

2005-03-24  rtprince  <rtprince@wizard>

	* genv.h, main.cc, genv.cc:
	Have main load plain.asy and ${outname}.gui explicitly,
	rather than doing it implicitly in genv::genv().

2005-03-23  jcbowman  <jcbowman@wizard>

	* base/graph.asy: optimized crop()

2005-03-23  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.72cvs.
	
	* doc/asymptote.texi: Document leastsquare routine.

	* knotlist.cc, knotlist.h, pathlist.cc, pathlist.h:
	Removed obsolete files.

	* examples/elliptic.asy, examples/lines.asy, doc/asymptote.texi,
	base/plain.asy:
	
	Documented save() and restore().

	* base/math.asy, doc/asymptote.texi:
	Added and documented Andy's drawline routine.

2005-03-23  hammera  <hammera@wizard>

	* base/plain.asy: Added saving and restoring of the graphics state.

2005-03-23  jcbowman  <jcbowman@wizard>

	* base/plain.asy, picture.h, picture.cc: Cache picture bounds.

2005-03-22  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/parametricgraph.asy, base/graph.asy:
	Reinstated crop; use current value of userMin/userMax in xlimits
	and ylimits.

	* doc/histogram.asy, doc/lineargraph0.asy, doc/asymptote.texi:
	Added further legend example.

2005-03-22  rtprince  <rtprince@wizard>

	* pool.h: cxx doesn't like const objects in containers.

2005-03-22  jcbowman  <jcbowman@wizard>

	* doc/lineargraph2.asy, doc/asymptote.texi:
	Document alternative for legend fitting.

	* doc/datagraph.asy, doc/image.asy, doc/lineargraph.asy,
	* base/palette.asy, base/plain.asy, doc/asymptote.texi: 
	
	Make legend a separate picture that can be positioned and aligned
	like any other picture (see lineargraph.asy example). The legend
	must now be explicitly added to the picture, for example, with
	add(point(E),legend(20E));

	Palette also now returns a new picture.

	* xasy: Updated move limits to be compatible with SW alignment.

2005-03-21  rtprince  <rtprince@wizard>

	* runtime.cc: Use free function vm::pop instead of vm::stack::pop.

	* types.cc: std::equal is much faster than explicit iteration.

2005-03-21  hammera  <hammera@wizard>

	* base/plain.asy, path.cc, path.h, runtime.cc, runtime.h,
	* types.cc, types.h, exp.h, flatguide.cc, flatguide.h, genv.cc,
	* guide.cc, guide.h, guideflags.h, knot.cc, knot.h, mathop.h, mod.h,
	* camp.l, camp.y, exp.cc, Makefile.in, builtin.cc: 
	
	Replaced the implementation of solving guides into paths.

	Refactored the abstract syntax of operators.

2005-03-21  jcbowman  <jcbowman@wizard>

	* doc/diatom.asy, doc/datagraph.asy, doc/asymptote.texi,
	base/plain.asy, base/graph.asy:
	
	Changed marker filltype default to NoFill.

	Introduced Above/Below and Crop/NoCrop variables.

	* builtin.cc: Code cleanup.

2005-03-21  rtprince  <rtprince@wizard>

	* pool.cc:
	memory::insert(poolitem) was eating most of the runtime. Use
	std::deque instead of std::set.

2005-03-21  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy, castop.h, doc/asymptote.texi,
	* doc/datagraph.asy, doc/diatom.asy, doc/exp.asy, doc/loggraph.asy,
	* doc/parametricgraph.asy, doc/secondaryaxis.asy,
	* examples/cardiod.asy, mathop.h, picture.cc: 
	
	Prepend only nonextended axes in current layer.

	Fixed xlimits and ylimits; fixed frame bbox bug.

	Updated documentation.

	* examples/cardiod.asy: Draw axis on top of cardiod.

	* base/graph.asy, base/palette.asy, base/plain.asy,
	* doc/asymptote.texi, doc/diatom.asy, doc/exp.asy, picture.cc,
	* picture.h, runtime.cc, runtime.h, types.cc, builtin.cc: 
	
	By default, draw axes before other objects in current layer.

	Fixed frame alignment scaling.

2005-03-21  rtprince  <rtprince@wizard>

	* castop.h, mathop.h: Add include guards.

2005-03-21  jcbowman  <jcbowman@wizard>

	* base/stats.asy: Added least-squares fit.

2005-03-21  rtprince  <rtprince@wizard>

	* arrayop.h, builtin.cc, castop.h, mathop.h, runtime.cc, stack.h:
	Use free function vm::pop instead of vm::stack::pop.

2005-03-19  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/asymptote.texi, runtime.cc, stack.cc, fileio.h:
	Added append boolean option to output and xoutput.

	Omit "runtime" from error().

	Added frame marker(path g, pen p=currentpen).

2005-03-18  rtprince  <rtprince@wizard>

	* picture.h, pool.cc, pool.h, transform.h, types.h, absyn.h,
	* access.h, drawelement.h, entry.h, errormsg.h, fileio.h, frame.h,
	* guide.h, import.h, inst.h, main.cc, path.h, pen.h:
	
	Rename namespace mempool to memory.

	* castop.h, mathop.h: Add file headers to castop.h, mathop.h.

	* arrayop.h, builtin.cc, builtin.h, cast.cc, castop.h, genv.cc,
	* mathop.h, runtime.cc, runtime.h, stack.cc, stack.h:
	
	Move all template runtime code into dedicated files castop.h and
	mathop.h. 
	
	Cleanup all references to stack.h, so it isn't needlessly included.

	* drawelement.h: Header include cleanup.

2005-03-18  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy:
	
	Allow one to turn on autoscaling again with
	xlimits(-infinity,infinity), etc.

	Accept an overall scaling of frame alignment shifts.

	* base/graph.asy, base/plain.asy:
	
	Fixed interaction of new automin/automax scale flags with
	xlimits/ylimits.

	Use a small tick by default for unlabelled intermediate decade ticks.

2005-03-17  rtprince  <rtprince@wizard>

	* stack.cc, stack.h: Remove UNALIAS, since it is no longer needed.

	* coder.h, errormsg.h, inst.cc, inst.h, stack.cc, stack.h, coder.cc:
	Simplify runtime file position reporting.

	* stack.cc, stack.h: Start refactoring stack::run.

	* dec.cc, genv.cc, inst.cc, inst.h, newexp.cc, stack.cc:
	Replace inst::alloc with inst::makefunc + inst::popcall.

	* inst.h, main.cc, runtime.cc, stack.cc, stack.h, access.h,
	inst.cc, access.cc:
	
	stack::globals is obsolete. Get rid of it.

	* coder.cc, coder.h, stm.cc: Fix return breakage.

2005-03-17  jcbowman  <jcbowman@wizard>

	* base/graph.asy:
	Don't draw logarithmic subticks by default when number of big
	ticks > 2.

	* base/graph.asy:
	Show 10 subticks by default for thinned logarithmic graphs.

	* errormsg.cc:
	Fixed interactive line number reporting for files that are input.

2005-03-16  jcbowman  <jcbowman@wizard>

	* builtin.h: Fixed more cxx warning messages.

	* builtin.h: Fixed cxx unused variable warning messages.

	* base/drawtree.asy, base/graph.asy, base/math.asy,
	* base/palette.asy, base/plain.asy, base/stats.asy,
	* doc/asymptote.texi, doc/datagraph.asy, doc/histogram.asy,
	* doc/image.asy, doc/latexusage.tex, doc/mosquito.asy,
	* examples/labelbox.asy, examples/sqrtx01.asy:
	
	Added frame alignment (analogous to label alignment) for
	positioning frames on picture.

	Generalized and simplified palette bar interface by using frame
	alignment.

	Renamed addabout to add, drawabout to draw, fillabout to fill, and
	filldrawabout to filldraw.

	Updated documentation; added examples of frame alignment and
	histograms.

2005-03-16  rtprince  <rtprince@wizard>

	* coder.cc, dec.cc, genv.cc, inst.cc, inst.h, main.cc, newexp.cc,
	* record.cc, record.h, stack.cc, stack.h, stm.cc: 
	
	A record (and module) is just a function that allows you to access its
	variables after it is done. Implement them this way.

	* access.cc, access.h, builtin.cc:
	We don't use opcodes for functions any more, so remove instAccess.

2005-03-16  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Documented bool empty(frame).

	* doc/asymptote.texi, inst.h, runtime.cc, runtime.h, stack.cc,
	TODO, arrayop.h, builtin.cc, builtin.h, dec.cc, inst.cc:
	
	Changed arithmetic opcodes to functions.

2005-03-16  rtprince  <rtprince@wizard>

	* stm.cc, stm.h, absyn.h:
	We don't treat files specially, so get rid of class.

2005-03-15  jcbowman  <jcbowman@wizard>

	* stack.cc, errormsg.h: Moved interrupt check into main loop.

2005-03-15  rtprince  <rtprince@wizard>

	* symbol.h: The only symbols should be coming from symbol::trans().

	* runtime.cc: Use get<>() instead of any_cast<>().

	* Compile: Use $(OPTS) instead of $(OPT), which doesn't exist.

2005-03-15  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.71cvs.

	* fpu.h:
	
	Fixed dummy fpu exception support for machines lacking C99 fenv
	routines.

	* patches/gv-3.6.1-sigint.patch, Makefile.in,
	patches/gv-3.5.8-all.patch:
	
	Removed reference to deleted xdr files.

	Added gv sigint.patch to prevent interactive interrupts from
	closing the gv window.

	* util.h: Added missing prototypes for cxx compiler.

	* doc/asy.1, doc/asymptote.texi, configure.ac, dec.cc,
	* errormsg.cc, errormsg.h, fileio.h, fpu.h, genv.cc, interact.cc,
	* interact.h, main.cc, picture.cc, pipestream.h, runtime.cc,
	* runtime.h, settings.cc, settings.h, stack.cc, util.cc, util.h,
	* arrayop.h, builtin.cc, builtin.h:
	
	Improved error and interrupt (ctrl-c) handling in interactive mode.

	Mask floating point errors by default in interactive mode.

	By first issuing an explicit reset command, code can now be
	entered prior to executing an interactive input commands.

	Added scroll(int n) and string cd(string) commands.

	Added Jn and Yn Bessel functions.

2005-03-14  jcbowman  <jcbowman@wizard>

	* base/math.asy:
	Fixed bug in extension with a robust (and faster) parametric solver.

2005-03-12  jcbowman  <jcbowman@wizard>

 	* base/plain.asy, doc/asymptote.texi, runtime.cc, runtime.h,
	* settings.cc, settings.h, builtin.cc, pen.h:
	
	Added -bw option to convert all colors to black and white.

	Removed double(file) in favour of single(file,false); also added
	csv(file,false) and linemode(file,false).

	* doc/image.asy, doc/image.xdr, patches/pstoedit-3.40asy.patch,
	BUGS, base/palette.asy, base/pstoedit.asy, doc/asymptote.texi: 
	
	Minor change to palette interface.

	Replaced image.asy with more compact example to reduce distributed
	file sizes.

	* patches/pstoedit-3.40asy.patch:
	Removed textpen argument from image labels.

	* patches/pstoedit-3.40asy.patch:
	Fixed image support for pstoedit asy backend.

2005-03-11  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Thin crowded logarithmic axis.

2005-03-10  jcbowman  <jcbowman@wizard>

	* examples/wedge.asy, examples/wheelanimation.asy:
	Updated examples to use XEquals rather than xequals.

	* doc/secondaryaxis.asy, base/graph.asy, base/palette.asy,
	base/plain.asy, doc/asymptote.texi, builtin.cc, runtime.cc,
	runtime.h:
	
	Generalized secondary axes to handle any scaling (e.g. logarithmic) and
	removed the two bool options (no longer needed).

	Improved tick divisor calculation when automin=false and automax=false.

	Documented file single(file, bool) for setting the precision of
	real XDR reads and writes.

	Cleaned up automin and automax in scaleT and autoscaleT.

	* Makefile.in: Removed unneeded -I- compilation flag.

	* configure.ac: Incremented version to 0.70cvs.

	* Makefile.in: Install xdr image in examples directory.

	* picture.h: Fixed warning message.

	* doc/image.asy: Fixed font.

	* doc/asymptote.texi:
	Recommended use of XEquals and YEquals axes over internal xequals and
	yequals routines.

	* patches/pstoedit-3.40asy.patch:
	Suppressed misleading warning message.

	* examples/equilateral.asy: New example.

	* doc/asymptote.texi, base/math.asy:
	Fixed numerical precision bug in extension (in math.asy, reported
	by Gao).

	* doc/asymptote.texi, doc/datagraph.asy, doc/image.asy,
	* doc/image.xdr, base/palette.asy, base/plain.asy, base/graph.asy:
	
	Fixed secondary axis tick selection;
	
	Improved tick selection for crowded axis when automin or automax=false.
	
	Added n-point unit cross routine.
	
	Added Grayscale and Rainbow palettes.
	
	Documented color density images, palettes, and mark option to draw
	routine, with examples.

2005-03-09  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/image.asy, base/palette.asy:
	
	Slightly reduced default number of colors to workaround gs pdf
	limitations.

2005-03-08  jcbowman  <jcbowman@wizard>

	* base/pstoedit.asy, doc/image.asy, doc/secondaryaxis.asy,
	* base/palette.asy, base/plain.asy, base/graph.asy, picture.h,
	* psfile.cc, psfile.h, runtime.cc, runtime.h, types.cc, types.h,
	* drawelement.h, fileio.h, pen.h, builtin.cc:
	
	Added support for generating image density plots and palettes.

	Added support for data markers, including cross, plus, and polygon
	markers.

	Added min and max functions for 2d and 3d arrays.

	Fixed tick divisors in secondary axes.

	Deep copy path arrays to avoid surprises.

	Fixed limits() in graph.asy.

	Respect "#" in format strings (allows trailing zeros).

2005-03-05  jcbowman  <jcbowman@wizard>

	* doc/secondaryaxis.asy: More general example of secondary axis.

	* doc/asymptote.texi, doc/loggraph.asy, base/graph.asy:
	Fixed secondary axes bug;
	xlimits, ylimits, and limits now use properly scaled user values.

2005-02-28  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/math.asy, base/plain.asy: Minor optimizations.

2005-02-27  jcbowman  <jcbowman@wizard>

	* examples/venn.asy, doc/latexusage.tex:
	Adjusted margins so that arrows all have same length.

	* patches/pstoedit-3.40asy.patch: Updates to support Microsoft Windows.

	* base/plain.asy: Fixed finite(pair).

	* configure.ac: Incremented version to 0.69cvs.

	* base/simplex.asy, base/plain.asy:
	Added Andy's constraint removal code for even better simplex
	optimization.

	* examples/venn.asy: Updated to use Margin rather than subpath.

	* configure.ac: Incremented version to 0.68cvs.

	* patches/gv-3.6.1-gs8.patch, patches/gv-3.6.1-landscape.patch,
	* patches/pstoedit-3.40asy.patch, patches/gv-3.6.1-getopt.patch,
	* doc/asymptote.texi, base/plain.asy, pen.h, drawlabel.cc:
	
	Initialize font explicitly to ensure compatibility between tex
	pipe and final latex processing and to ensure tex pipe font is properly
	reinitialized.

	If picture cannot be fit to requested size, scale size by sqrt(2)
	and retry.

	Added gv-3.6.1 patches; updated documentation.

	Modified pstoedit patch to remove unneeded shipout().

2005-02-26  jcbowman  <jcbowman@wizard>

	* examples/eetomumu.asy, base/feynman.asy: arrowsize updates

	* base/simplex.asy:
	Removed superflous constraints before solving linear programming
	problem.

2005-02-26  jcbowman  <jcbowman@wizard>

	* examples/eetomumu.asy, base/feynman.asy: arrowsize updates

	* base/simplex.asy:
	Removed superflous constraints before solving linear programming
	problem.

2005-02-26  jcbowman  <jcbowman@wizard>

	* base/simplex.asy:
	Removed superfluous constraints before solving linear programming
	problem.

	* base/simplex.asy:
	Check that r.c >= 0 in selectVar (this guarantees that r.t[col] < 0).

	* doc/asymptote.texi, base/plain.asy, base/simplex.asy, base/graph.asy:
	Optimized simplex pivoting.

	Made global constants static.

	Fixed recently introduced error in relative(picture, pair).

2005-02-25  jcbowman  <jcbowman@wizard>

	* base/graph.asy, doc/asymptote.texi: Minor errorbar updates.

	* base/feynman.asy: arrowsize updates

2005-02-22  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.67cvs.

	* picture.cc, xasy: Improved selection highlighting in GUI.

2005-02-21  jcbowman  <jcbowman@wizard>

	* pen.h, runtime.cc: Put quotes around outputted font command string.
	Set camp::TeXcontaminated to false upon decontaminating.

	* main.cc, runtime.cc:
	Moved interactive rejectline code back into main.cc.

	* drawlabel.cc, main.cc, picture.cc, picture.h, runtime.cc:
	Moved cleanup functions into exitFunction.

	* base/graph.asy, base/plain.asy, builtin.cc, builtin.h,
	* doc/asymptote.sty, doc/asymptote.texi, doc/bezier.asy,
	* doc/bigsquare.asy, doc/cube.asy, doc/datagraph.asy,
	* doc/diagonal.asy, doc/diatom.asy, doc/exp.asy,
	* doc/generalaxis.asy, doc/hatch.asy, doc/labelsquare.asy,
	* doc/latexusage.tex, doc/lineargraph.asy, doc/linetype.asy,
	* doc/loggraph.asy, doc/logo.asy, doc/mosquito.asy,
	* doc/parametricgraph.asy, doc/quartercircle.asy,
	* doc/secondaryaxis.asy, doc/shade.asy, doc/shadedtiling.asy,
	* doc/square.asy, doc/superpath.asy, doc/tile.asy, doc/westnile.asy,
	* examples/Pythagoras.asy, examples/cardiod.asy,
	* examples/centroidfg.asy, examples/circles.asy,
	* examples/conicurv.asy, examples/cos2theta.asy,
	* examples/cosaddition.asy, examples/delu.asy, examples/dragon.asy,
	* examples/eetomumu.asy, examples/equilchord.asy, examples/fano.asy,
	* examples/fermi.asy, examples/fjortoft.asy, examples/geometry.asy,
	* examples/grid.asy, examples/integraltest.asy,
	* examples/labelbox.asy, examples/lever.asy, examples/log.asy,
	* examples/near_earth.asy, examples/phase.asy, examples/planes.asy,
	* examples/polararea.asy, examples/polarcircle.asy,
	* examples/progrid.asy, examples/ring.asy, examples/sacone.asy,
	* examples/sin1x.asy, examples/sinxlex.asy, examples/spring0.asy,
	* examples/spring2.asy, examples/tanh.asy, examples/treetest.asy,
	* examples/unitcircle.asy, examples/upint.asy, examples/wedge.asy,
	* examples/xsin1x.asy, genv.cc, interact.cc, picture.cc, runtime.cc,
	* runtime.h, settings.cc, settings.h, TODO:
	
	Added atexit function.

	A shipout() command is added implicitly at file exit if no
	previous shipout commands have been executed. The examples were
	updated to remove any unnecessary shipout() calls.

	Used atexit to clean up asymptote.sty and interactive mode.

	Files with no drawing commands now work with -f pdf.

2005-02-20  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy:
	Fixed (logarithmic and other) scalings of XEquals and YEquals axes and
	errorbars.

	* doc/asymptote.texi: Fixed typo.

	* configure.ac: Incremented version to 0.66cvs.

	* Makefile.in, doc/asymptote.texi: Fixed location of latexusage.tex.

	* configure.ac: Incremented version to 0.65cvs.

2005-02-20  jcbowman  <jcbowman@wizard>

	* Makefile.in, doc/asymptote.texi: Fixed location of latexusage.tex.

	* configure.ac: Incremented version to 0.65cvs.

	* examples/treetest.asy: Fixed typos in example.

	* base/feynman.asy, base/plain.asy, doc/mosquito.asy, doc/westnile.asy:
	Updated examples.

	* examples/eetomumu.asy: Linewidth change.

	* examples/equilchord.asy, examples/fjortoft.asy,
	* examples/geometry.asy, examples/lever.asy,
	* examples/near_earth.asy, examples/polararea.asy,
	* examples/polarcircle.asy, examples/sacone.asy,
	* examples/sinxlex.asy, examples/unitcircle.asy, base/graph.asy,
	* base/plain.asy, doc/asymptote.texi, doc/datagraph.asy,
	* examples/cosaddition.asy, examples/delu.asy: 
	
	Added DotMargin margin qualifier.
	Updated examples to use margins.

	* examples/Pythagoras.asy, examples/polararea.asy,
	* examples/spring.asy, examples/triads.asy, base/math.asy,
	* base/plain.asy, doc/asymptote.texi, doc/datagraph.asy,
	* base/feynman.asy, base/graph.asy:
	
	Added errorbar routines to graph.asy.

	Changed arrowhead and dimension bar default size specifiers:
	arrowsize to arrowsize(pen p=currentpen),
	arcarrowsize to arcarrowsize(pen p=currentpen),
	barsize to barsize(pen p=currentpen).

	* runtime.cc: Fixed bug in eval(f(T), T[] A).

2005-02-19  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: Documented real[] A vs. real A[] issue.

	* doc/asymptote.texi, doc/latexusage.tex, examples/sqrtx01.asy,
	base/plain.asy: 
	
	Documented and improved margin routines.

	Included correct latexusage file in documentation.

	* base/feynman.asy, base/plain.asy, doc/asymptote.sty,
	* doc/asymptote.texi, doc/latexusage.tex, examples/Pythagoras.asy,
	* examples/sqrtx01.asy, Makefile.in:
	
	Added Margin, PenMargin, and TrueMargin drawing qualifiers.

	Fixed name conflicts between asymptote.sty and comment.sty.

	Install latexusage.tex with examples.

2005-02-18  jcbowman  <jcbowman@wizard>

	* exp.cc: Fixed diagnostic.

	* exp.cc: Fixed segmentation fault in anonymous function diagnostic.

	* configure.ac: Incremented version to 0.64cvs.

	* picture.cc: Reset lastpen on every call to texinit.

	* configure.ac: Fixed harmless typo.

	* configure.ac: Incremented version to 0.63cvs.

	* pen.h, psfile.h:
	Fixed shading colorspace & fillrule/baseline output strings;
	removed unwanted space from gsave/grestore.

2005-02-18  jcbowman  <jcbowman@wizard>

	* picture.cc: Reset lastpen on every call to texinit.

	* configure.ac: Fixed harmless typo.

	* configure.ac: Incremented version to 0.63cvs.

	* pen.h, psfile.h:
	Fixed shading colorspace & fillrule/baseline output strings;
	removed unwanted space from gsave/grestore.

	* base/plain.asy, base/pstoedit.asy, doc/asymptote.texi,
	* doc/labelsquare.asy, doc/latexusage.tex, examples/geometry.asy,
	* examples/sqrtx01.asy, builtin.cc, drawlabel.cc, drawlabel.h,
	* pen.h, runtime.cc, runtime.h:
	
	Added basealign pen type to align labels using the TeX baseline, if
	applicable, rather than using the full bounding box. (The default
	continues to be nobasealign).

	Documentation improved in several areas.

2005-02-17  jcbowman  <jcbowman@wizard>

	* util.h: Added missing include.

	* doc/labelsquare.asy: Simple example of label positioning.
	
	* doc/asymptote.texi: Corrected index entry.

	* doc/asymptote.texi, util.h:
	Workaround broken cxx linux-alpha headers.

	* examples/sflogo.eps, patches/pstoedit-3.40asy.patch,
	* doc/asymptote.texi, doc/bigsquare.asy, examples/geometry.asy,
	* base/plain.asy, builtin.cc, camp.l, configure.ac, pipestream.h,
	* runtime.cc, runtime.h, texfile.cc, texfile.h, util.h, README: 
	
	EPS files (and other formats supported by \includegraphics) can now be
	included and positioned just like any other LaTeX label (the include
	function has been changed to return a string containing an
	includegraphics command that can be used with label).

	Added image support to pstoedit backend.

	Fixed compilation problems under Solaris.

	Updated documentation.

2005-02-16  rtprince  <rtprince@wizard>

	* Makefile.in, configure.ac: CFLAGS is already subst'd by AC_PROG_CC.
	CXX defaults to g++ if it is available (AC_PROG_CXX).
	Define CC in Makefile if we get it from AC_PROG_CC.

2005-02-16  jcbowman  <jcbowman@wizard>

	* genv.cc, genv.h, main.cc, name.cc, name.h, newexp.cc, newexp.h,
	* stm.cc, stm.h, types.cc, types.h, exp.cc, exp.h, camp.l, camp.y,
	* dec.cc, dec.h, absyn.h, absyn.cc:
	
	Changed namespace absyn to absyntax to avoid conflicts with class
	of same name under some compilers.

	* camp.l, camp.y: Namespace as -> absyn.

	* genv.cc, genv.h, main.cc, name.cc, name.h, newexp.cc, newexp.h,
	* stm.cc, stm.h, types.cc, types.h, absyn.h, configure.ac, dec.cc,
	* dec.h, exp.cc, exp.h, absyn.cc:
	
	Renamed namespace "as" to "absyn" to work around Solaris namespace
	pollution. 
	
	Added CXX=g++ to configure.ac and removed -DNDEBUG flag.

	* picture.cc:
	Clip should insert beginclip at beginning of current layer.

2005-02-15  jcbowman  <jcbowman@wizard>

	* base/pstoedit.asy, patches/pstoedit-3.40asy.patch,
	* base/plain.asy, runtime.cc, builtin.cc: 
	
	Reinstated underlying frame clipping for picture clipping (with
	transform bug fix), allowing picture unfill to be properly
	implemented (using frame unfill).

	Moved beginclip, endclip, gsave, and grestore to pstoedit.asy.

	Fixed remaining gsave/grestore bugs in Asymptote backend to pstoedit.

	* base/plain.asy:
	Code clean up; added pair min(path[]) and max(path[]) functions.

	* configure.ac: Incremented version to 0.62cvs.
	
	* doc/cube.asy, doc/superpath.asy: New examples.

	* drawgrestore.h, drawgsave.h: Added PostScript grestore/gsave objects.

	* doc/asymptote.texi: Fixed spelling and grammar.

	* patches/pstoedit-3.40asy.patch, doc/asymptote.texi,
	* base/asy.vim, base/plain.asy, drawclipbegin.h, drawclipend.h,
	* drawlabel.cc, drawlabel.h, runtime.cc, runtime.h, builtin.cc:
	
	Added Asymptote backend and support for pstoedit, including native
	clipping and subpaths.

	Added Postscript font and scaled TeX font support.

2005-02-13  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, base/plain.asy:
	Added warning message and documentation about clipping
	deconstructed objects.

	* doc/asy.1, doc/asymptote.texi, pen.h, settings.cc, settings.h:
	Added -gray option.

	* doc/asymptote.texi, Makefile.in:
	Install documentation examples and data files in examples directory.

	* examples/labelbox.asy, examples/ring.asy, examples/yingyang.asy,
	* base/graph.asy, base/plain.asy, builtin.cc, doc/asymptote.texi,
	* drawclipbegin.h, drawclipend.h, drawelement.h, drawlabel.cc,
	* picture.cc, psfile.h, runtime.cc, runtime.h, Makefile.in:
	
	Reimplemented picture clipping to fix transformation and layering of
	clipped pictures.

	Use correct font and fontsize for computing label bounding boxes.

	Use -O0 for producing dependency data.

2005-02-12  jcbowman  <jcbowman@wizard>

	* base/featpost3D.asy: Added background variable.

	* base/drawtree.asy, base/graph3d.asy, base/metapost.asy,
	* base/patterns.asy, base/plain.asy, doc/Makefile,
	* doc/asymptote.texi, doc/shadedtiling.asy, doc/tile.asy,
	* examples/ring.asy, examples/treetest.asy, README, builtin.cc,
	* camp.l, camp.y, drawclipbegin.h, drawclipend.h, drawelement.h,
	* drawfill.cc, drawfill.h, drawlabel.cc, drawlabel.h, drawpath.cc,
	* pen.h, psfile.cc, psfile.h, runtime.cc, runtime.h, settings.cc,
	* texfile.cc, types.cc, types.h:
	
	Added drawing, filling, and clipping of compound paths built up
	with a pen lift (moveto) operator ^^ instead of --.

	Added functions to unfill a region to transparent background.

	Added zerowinding and evenodd pen types for filling and clipping.

	Introduced pen types squarecap, roundcap, extendcap, miterjoin,
	roundjoin, beveljoin to replace linecap(Square) calls, etc.

	Added checker pattern.

	Added LaTeX NFSS and TeX fonts and ability to override default
	baselineskip.

	Fixed bug in LaTeX rotation angle output format.

	Added contributed tree drawing script and example.

	Updated documentation.

2005-02-09  jcbowman  <jcbowman@wizard>

	* base/asy-mode.el, base/asy.vim: Editing mode updates.

	* doc/Makefile, base/plain.asy:
	Renamed labelframe to labelBox; added labelbox(frame).

	* base/plain.asy: added labelframe and point(frame,dir) routines.

2005-02-08  hammera  <hammera@wizard>

	* base/asy.vim:
	Changed string highlighting to recognize double \ escapes.

2005-02-05  jcbowman  <jcbowman@wizard>

	* Makefile.in, base/feynman.asy, base/patterns.asy,
	* base/plain.asy, configure.ac, doc/Makefile, doc/asymptote.texi,
	* doc/bigsquare.asy, doc/hatch.asy, doc/quartercircle.asy,
	* doc/tile.asy:
	Updated documentation and pattern examples.

2005-02-05  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/hatch.asy, base/patterns.asy:
	Added brick pattern.

2005-02-04  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, doc/hatch.asy,
	* doc/shadedtiling.asy, doc/tile.asy, base/feynman.asy,
	* base/patterns.asy, base/plain.asy, builtin.cc, drawpath.cc, pen.h,
	* runtime.cc, settings.cc: 
	Added bool option to linetype to disable automatic scaling of linetype
	parameters with pen size. Fixed segmentation fault and floating-point
	exception in adjust_dash in drawpath.cc.

	Added bbox(Background) option for producing a nontransparent
	background. 

	Moved simplified pattern routines and builtin patterns hatch,
	crosshatch, and tile to patterns.asy. Updated examples and
	documentation.

	* interact.cc, interact.h: Fixed recently broken interact mode.

2005-02-03  jcbowman  <jcbowman@wizard>

	* Makefile.in, configure.ac: Moved default CFLAGS into configure.ac

	* Makefile.in: Fixed optimization flags (revert last change).

2005-02-02  rtprince  <rtprince@wizard>

	* Makefile.in: Stanardize CFLAGS handling.

2005-02-02  jcbowman  <jcbowman@wizard>

	* interact.cc, interact.h: Fixed header problems under FreeBSD.

	* configure.ac: Incremented version to 0.61cvs.
	
	* examples/grid.asy, picture.cc:
	Interactive mode automatically restarts ASYMPTOTE_PSVIEWER in case
	it exited.

	* base/math.asy:
	Added picture grid(int Nx, int Ny, pen p=currentpen) function for
	generating square lattices.

	* doc/asymptote.texi:
	Simplified binary installation instructions; updated hatch.asy listing.

2005-02-01  rtprince  <rtprince@wizard>

	* knotlist.cc: Fix path solving. Strange place for a bug.

2005-02-01  jcbowman  <jcbowman@wizard>

	* path.cc: Removed extra newline from diagnostic.

	* runtime.cc, runtime.h, builtin.cc:
	Fixed namespace/function conflicts.

	* builtin.cc, fileio.h, interact.cc, runtime.cc, runtime.h,
	* settings.cc, settings.h, arrayop.h: 
	Fixed interactive mode to suppress standard I/O also from static
	imports.

	* doc/asymptote.texi, runtime.cc:
	Fixed rfind(string s, string t) and update documentation of string
	functions. 

	* doc/asymptote.texi, base/plain.asy, builtin.cc, fileio.h, runtime.cc:
	Added facility for checking to see if a file exists, using
	bool error(file).

2005-01-31  jcbowman  <jcbowman@wizard>

	* base/plain.asy, picture.cc, runtime.cc, runtime.h, interact.cc,
	* builtin.cc:
	Fixed multiple interactive shipouts in graphs with legends.

2005-01-31  jcbowman  <jcbowman@wizard>

	* main.cc, picture.cc:
	Interactive mode now supports inputting files with multiple shipouts.
	Interactive mode disables deconstruction (xasy).

	* base/plain.asy, texfile.h:
	Fixed endl and tab in plain.asy to produce C strings.
	Fixed recently broken include command.
	Renamed internal symbol ASYalign to more meaningful ASYbase in
	baseline.

	* fileio.cc, fileio.h, interact.cc, runtime.cc, runtime.h, arrayop.h:
	Put file back into mempool by making typein and typeout variables
	rather than pointers.

	* examples/cosaddition.asy, examples/sinxlex.asy:
	Updated examples to use math.arc routine.

2005-01-30  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, errormsg.h, interact.cc:
	Allow optional Asymptote commands to be specified on the same line as
	interactive input command.

	* doc/asymptote.texi, Makefile.in, dec.cc, fileio.cc, fileio.h,
	* genv.cc, genv.h, interact.cc, interact.h, main.cc, runtime.cc:
	Buffer stdin in interactive mode.
	Changed Import to input, which includes code directly into
	Asymptote, so that the user has access to the same environment
	that the code sees. Cleaned up fileio and removed it from mempool
	due to conflict with iostream routines.

2005-01-29  jcbowman  <jcbowman@wizard>

	* base/plain.asy, texfile.h:
	Add baseline TeX code back into texfile.h from plain.asy.

2005-01-28  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.60cvs.

	* Makefile.in: Makedepend updates.

	* Makefile.in: More makefile tweaks.

	* doc/Makefile: Final makefile updates.

	* configure.ac, runtime.cc:
	Automatically check for broken rpc/xdr headers.

	* path.cc: Fixed bounds to be consistent with behaviour of new
	quadratic solver.

	* path.cc: Implemented robust, accurate quadratic equation solver
	(used in dirtime).

2005-01-27  jcbowman  <jcbowman@wizard>

	* Makefile.in, configure.ac, doc/Makefile, doc/asymptote.texi,
	* getopt.c, getopt.h, getopt1.c, settings.cc: Added getopt for
	* systems without full GNU getopt support (e.g. cygwin, FreeBSD).

	Use "make all/make install" to produce/install both asy and man
	pages.

2005-01-27  rtprince  <rtprince@wizard>

	* path.cc: Better? quadratic routine.

2005-01-26  rtprince  <rtprince@wizard>

	* path.cc: Use solveQuadratic for path::bounds as well.

	* path.cc: Fix fuzz case in cubic dir.

	* pair.h: Duplicate code.

2005-01-26  jcbowman  <jcbowman@wizard>

	* pair.h, path.cc: Added fuzz to fix dirtime(unitcircle,dir(-45))
	bug under make OPT=-g.

	* doc/asymptote.texi, doc/latexusage.tex,
	* examples/integraltest.asy, examples/lowupint.asy,
	* examples/polararea.asy, examples/sqrtx01.asy, base/babel.asy,
	* base/math.asy, base/plain.asy, exp.cc, camp.l:
	
	Implemented all ANSI C character string escape sequences for C
	strings.  Removed all escape sequences from TeX strings except for
	\", which maps to ".  Added support for LaTeX babel package.

	Improved arc so that it coincides exactly with circle
	approximation for all angles. Added triangle arc routine to
	math.asy.

	Renamed gray to lightgray in the example files.

2005-01-25  jcbowman  <jcbowman@wizard>

	* dec.cc: Fixed explicit keyword (broken in dec.cc 1.8 on
	2005-01-19).

2005-01-22  jcbowman  <jcbowman@wizard>

	* examples/planes.asy, examples/sinxlex.asy,
	examples/unitcircle.asy, base/plain.asy: Renamed gray to
	lightgray; gray now means gray(0.5).  Added colorPens and monoPens
	lists and boolean variable mono.

	* pen.h: TRANSPARENT pen now has higher precedence that DEFCOLOR;
	also output "invisible" for this pen color.

	* runtime.cc: Added checks on string position arguments.

2005-01-21  rtprince  <rtprince@wizard>

	* camp.l: Handle invalid numbers gracefully.

2005-01-21  jcbowman  <jcbowman@wizard>

	* base/plain.asy, camp.l:
	
	Fixed cstring so that '\\' produces a backslash.

2005-01-20  rtprince  <rtprince@wizard>

	* camp.l: Add C-style strings delimited by '. (e.g. '\n' instead
	of "\\n").

2005-01-20  jcbowman  <jcbowman@wizard>

	* base/plain.asy: More arc improvements.

	* examples/fermi.asy, examples/gluon.asy, base/feynman.asy,
	* base/plain.asy, examples/eetomumu.asy, base/featpost3D.asy, TODO,
	* picture.cc: 

	Pdf updates.  Added new arc routine and point/path
	utility functions.  Added new examples and updates to feynman.asy.

2005-01-19  rtprince  <rtprince@wizard>

	* dec.cc, exp.cc, exp.h, types.cc, types.h:

	Get rid of as::defaultExp, and store varinit* in signature instead.

2005-01-19  jcbowman  <jcbowman@wizard>

	* picture.cc, settings.cc, xasy:
	
	Minor bbox fuzz and alignment djustments; fixed xasy alignment.

	* doc/asymptote.texi, TODO, camp.y, dec.cc, dec.h, exp.cc, pen.h,
	* picture.cc, types.cc, types.h:

	Implementation of explicit keyword.

2005-01-19  rtprince  <rtprince@wizard>

	* Compile: Oops.

	* Compile, Makefile.in: Fix makefile breakage.

	* Compile, Makefile.in: Don't rebuild asy if we don't need to.

	* doc/.cvsignore: version.texi is autogenerated.

2005-01-18  rtprince  <rtprince@wizard>

	* camp.y, camp.l: Make explicit a keyword to detect breakage.

2005-01-18  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/asymptote.texi, doc/lineargraph.asy,
	settings.cc, texfile.cc: Inhibit output of null labels.

	* examples/cosaddition.asy, doc/Makefile, picture.cc: Fixed
	antialiasing and gv -watch problems.

2005-01-17  jcbowman  <jcbowman@wizard>

	* configure.ac: Incremented version to 0.59cvs.

2005-01-17  jcbowman  <jcbowman@wizard>

	* examples/circles.asy, examples/geometry.asy: Updated new
	examples.

	* doc/asymptote.texi: Fixed formatting.

	* runtime.cc: Fixed warning message about unused variable.

	* TODO: Added new entry.

	* doc/asymptote.sty, doc/asymptote.texi, base/plain.asy,
	* builtin.cc, cast.cc, drawlabel.cc, drawpath.cc, fileio.h, pen.h,
	* picture.cc, picture.h, psfile.cc, psfile.h, runtime.cc, runtime.h,
	* settings.cc, settings.h, texfile.cc: 
	
	The default linetype, linewidth, fontsize, color, linecap,
	linejoin, and overwrite mode can now all be changed with the
	routine defaultpen(pen).  Removed unused pen defaultpen() in
	favour of void defaultpen(), which resets all pen default
	attributes to their startup values.

2005-01-16  jcbowman  <jcbowman@wizard>

	* base/tree.asy: Added missing == and != operators for struct
	tree.

	* base/plain.asy, doc/asymptote.sty, doc/asymptote.texi,
	doc/mosquito.asy, examples/wheelanimation.asy, builtin.cc,
	main.cc, runtime.cc, runtime.h, settings.cc, settings.h: Replaced
	defaultlinewidth and defaultfontsize commands with
	defaultpen(pen). Moved reset() into plain.asy.

	* fileio.cc, fileio.h, runtime.cc, configure.ac: Added configure
	option to detect xdr/rpc header files.

	* examples/circles.asy, examples/geometry.asy, doc/asymptote.texi,
	doc/datagraph.asy, doc/latexusage.tex, examples/Pythagoras.asy,
	base/graph.asy, base/math.asy, base/plain.asy: Fixed 2d graph bugs
	1102574 and 1102396 and related bugs.  Added XEquals and YEquals
	axis types.  Allow all axis types to optionally extend to
	dimensions of picture; updated documentation.  Simplified routine
	for drawing perpendicular symbols in math.asy.

2005-01-14  rtprince  <rtprince@wizard>

	* coder.h, dec.cc, exp.cc, genv.cc, inst.cc, inst.h, newexp.cc,
	stack.cc, stm.cc, access.cc, coder.cc: Store operands with opcode,
	rather than in the following inst.

2005-01-12  rtprince  <rtprince@wizard>

	* dec.h: markTrans and markTransAsField are utility functions that
	don't need to be redefined.

	* absyn.cc, absyn.h, dec.h, exp.cc, exp.h, name.cc, name.h,
	newexp.cc, stm.cc, stm.h: Clean up header file dependencies.

2005-01-12  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, base/plain.asy: Made currentpen static.

22005-01-12  jcbowman  <jcbowman@wizard>

        * doc/asymptote.texi, base/plain.asy: Made currentpen static.

        * Makefile.in: Use $(MAKE) rather than make everywhere within Makefile.

         * configure.ac: Increment version to 0.58cvs.

	* doc/asymptote.texi, examples/cosaddition.asy, examples/delu.asy,
	examples/exp.asy, examples/fano.asy, examples/phase.asy,
	examples/polararea.asy, examples/polarcircle.asy,
	examples/sinxlex.asy, examples/unitcircle.asy, examples/wedge.asy,
	base/feynman.asy, base/graph.asy, base/plain.asy, builtin.cc:
	Removed direction(path, real) and direction(path, int) in favour
	of dir(path, real t=1) and dir(path, int t=1). Added examples.

2005-01-11  jcbowman  <jcbowman@wizard>

	* doc/diatom.asy, base/plain.asy, doc/asymptote.texi, settings.cc,
	settings.h, builtin.cc, drawlabel.cc, pen.h, runtime.cc,
	runtime.h: Made overwrite mode a pen attribute; updated
	documentation.

2005-01-11  rtprince  <rtprince@wizard>

	* runtime.cc: symbol::trans accepts a std::string not a char*.

	* settings.h: Fix typo in comment.

2005-01-11  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, builtin.cc, drawlabel.cc: Fixed infinite
	loop bug in overwrite mode.  Added synonym dir(path,int) for
	direction(path,int), etc.

	* doc/logo.asy, doc/westnile.asy, base/graph.asy, base/plain.asy,
	doc/asymptote.texi, pen.h, psfile.h, settings.cc, settings.h,
	texfile.cc, texfile.h: Fixed rgb to cmyk routine and added cmyk to
	rgb routine.  Added -cmyk and -rgb command options.  Made labelx
	and labely routines position labels consistently with axis
	routines by default.  Generalized baseline routine and moved from
	texfile.cc into plain.asy.  Adjusted logo for new labeling system.

2005-01-10  jcbowman  <jcbowman@wizard>

	* configure.ac: Increment version to 0.57cvs.

2005-01-09  jcbowman  <jcbowman@wizard>

	* picture.cc: Make PSViewer and PDFViewer search conform to
	documented behaviour.

	* doc/asymptote.texi, doc/shade.asy, base/plain.asy, builtin.cc,
	drawfill.cc, drawfill.h, psfile.h, runtime.cc, settings.cc:
	Implemented radial gradient shading; updated documentation.

	* doc/mosquito.asy, doc/mosquito.csv, doc/secondaryaxis.asy,
	doc/secondaryaxis.csv, doc/westnile.asy, doc/westnile.csv,
	doc/asymptote.texi, base/plain.asy, builtin.cc, drawfill.cc,
	pen.h, runtime.cc, runtime.h, types.h: Make patterns work with
	xasy.  An explicit picture is now required in order to specify
	preamble to shipout.  Added scientific diagram and graphs to
	documentation to illustrate the minipage function, secondary axes,
	and the drawabout function.  The new real[[] colors(pen) function
	returns the color components of a pen.

	* base/plain.asy, doc/asymptote.texi, doc/hatch.asy,
	doc/shadedtiling.asy, builtin.cc, drawelement.h, drawfill.cc,
	drawfill.h, drawpath.cc, drawverbatim.h, pen.h, picture.cc,
	picture.h, psfile.cc, psfile.h, runtime.cc, runtime.h,
	settings.cc, settings.h, texfile.cc: Added tiling patterns and
	gradient shading.  Added linecap and linejoin pen specifiers.
	Updated documentation with examples of new features.

2005-01-09  jcbowman  <jcbowman@wizard>

	* picture.cc: Make PSViewer and PDFViewer search conform to
	documented behaviour.

	* doc/asymptote.texi, doc/shade.asy, base/plain.asy, builtin.cc,
	drawfill.cc, drawfill.h, psfile.h, runtime.cc, settings.cc:
	Implemented radial gradient shading; updated documentation.

	* doc/mosquito.asy, doc/mosquito.csv, doc/secondaryaxis.asy,
	doc/secondaryaxis.csv, doc/westnile.asy, doc/westnile.csv,
	doc/asymptote.texi, base/plain.asy, builtin.cc, drawfill.cc,
	pen.h, runtime.cc, runtime.h, types.h: Make patterns work with
	xasy.  An explicit picture is now required in order to specify
	preamble to shipout.  Added scientific diagram and graphs to
	documentation to illustrate the minipage function, secondary axes,
	and the drawabout function.  The new real[] colors(pen) function
	returns the color components of a pen.

	* base/plain.asy, doc/asymptote.texi, doc/hatch.asy,
	doc/shadedtiling.asy, builtin.cc, drawelement.h, drawfill.cc,
	drawfill.h, drawpath.cc, drawverbatim.h, pen.h, picture.cc,
	picture.h, psfile.cc, psfile.h, runtime.cc, runtime.h,
	settings.cc, settings.h, texfile.cc: Added tiling patterns and
	gradient shading.  Added linecap and linejoin pen specifiers.
	Updated documentation with examples of new features.

2005-01-07  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy: Minor interp and secondary axis
	updates.

2005-01-06  jcbowman  <jcbowman@wizard>

	* examples/equilchord.asy, doc/asymptote.texi, base/graph.asy,
	base/plain.asy: New postscript-coordinate shift option for label
	routines; pictures added to pictures now transform properly;
	updated documentation.

	* base/graph.asy: Added secondary axis facility; fixed scaling
	bug.

	* runtime.h: minor formatting.

	* base/plain.asy, doc/asymptote.texi: Removed unused currentframe
	variable; updated documentation.

2005-01-05  jcbowman  <jcbowman@wizard>

	* fileio.cc, runtime.h: Further csv and linemode updates.

	* fileio.cc: Fixed csv+line mode bugs.

	* examples/lever.asy: label positioning update

	* exp.cc: minor formatting.

	* doc/asymptote.texi: Updated documentation.

	* base/plain.asy, doc/asymptote.texi, examples/venn.asy,
	drawlabel.cc: Fixed "label with arrow" routine. Removed outarrow
	in favour of drawabout.  Updated documentation regarding new
	optional position argument of path labels (draw and drawabout).

	* doc/asymptote.texi, base/plain.asy, drawlabel.cc, drawlabel.h:
	Align labels before adding label bounding box fuzz.

	* base/featpost3D.asy: Use math italic axis labels.

2005-01-04  jcbowman  <jcbowman@wizard>

	* errors: Updated.

	* types.h, exp.cc: Added function name to "cannot call...with"
	error messages.

	* doc/asymptote.texi, doc/latexusage.tex, examples/lever.asy,
	examples/sqrtx01.asy, base/graph.asy, base/math.asy,
	base/plain.asy, drawlabel.cc, drawlabel.h: Improved and tightened
	label bounding box calculation.

	* exp.cc: Made "cannot call type...with" diagnostic easier to
	read.

2004-12-28  jcbowman  <jcbowman@wizard>

	* examples/wheelanimation.asy, base/graph.asy, base/plain.asy:
	label and arrow adjustments

2004-12-27  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Added minipage and outarrow routines.

	* drawlabel.cc, drawverbatim.h, picture.cc, pipestream.h,
	runtime.cc, texfile.h, util.cc, util.h: Fixed TeX pipestream
	embedded newline & diagnostic problems.

2004-12-26  jcbowman  <jcbowman@wizard>

	* base/plain.asy: implement scaling of pic.userMin and
	pic.userMax.

2004-12-23  jcbowman  <jcbowman@wizard>

	* base/plain.asy: Added newpage() command.

	* drawlabel.cc, drawlabel.h, picture.cc, texfile.cc, texfile.h:
	Improved and simplified label code.

2004-12-22  jcbowman  <jcbowman@wizard>

	* base/plain.asy, drawlabel.cc, picture.cc: More label updates.

	* base/plain.asy, picture.cc, drawlabel.cc: Label updates.

2004-12-21  jcbowman  <jcbowman@wizard>

	* picture.cc, drawlabel.cc: Improved label bounding boxes.

2004-12-20  jcbowman  <jcbowman@wizard>

	* drawlabel.cc: Account for depth in label alignment code.

2004-12-17  jcbowman  <jcbowman@wizard>

	* picture.cc, texfile.cc: Fine tuning of label offset (dependent
	on pdf/-B).

	* configure.ac: Increment version to 0.56cvs.

2004-12-16  jcbowman  <jcbowman@wizard>

	* Makefile.in, configure.ac: Force use of bison (not yacc).

	* runtime.cc: Fixed warning messages.

	* doc/asymptote.texi: ispell updates

	* doc/asymptote.texi, TODO: Documentation updates.

	* picture.cc: Improved latex diagnostics.

	* doc/lineargraph.asy, base/feynman.asy, base/graph.asy,
	doc/asymptote.texi, doc/datagraph.asy: Updated documentation.

	* examples/conicurv.asy, examples/gluon.asy,
	examples/near_earth.asy: Contributed examples.

	* base/metapost.asy: Added cuttings global variable.

2004-12-16  jcbowman  <jcbowman@wizard>

	* Makefile.in, configure.ac: Force use of bison (not yacc).

	* runtime.cc: Fixed warning messages.

	* doc/asymptote.texi: ispell updates

	* doc/asymptote.texi, TODO: Documentation updates.

	* picture.cc: Improved latex diagnostics.

	* doc/lineargraph.asy, base/feynman.asy, base/graph.asy,
	doc/asymptote.texi, doc/datagraph.asy: Updated documentation.

	* examples/conicurv.asy, examples/gluon.asy,
	examples/near_earth.asy: Contributed examples.

	* base/metapost.asy: Added cuttings global variable.

	* base/featpost3D.asy, base/metapost.asy, base/plain.asy: Moved
	metapost compatibility routines to separate file.

	* doc/asymptote.texi, base/plain.asy: Perhaps a more sensible
	alternative to Metapost cutbefore/cutafter/cuttings.

2004-12-15  jcbowman  <jcbowman@wizard>

	* doc/latexusage.tex: updated coordinate

	* base/featpost3D.asy: Added translator name.

	* base/plain.asy, doc/asymptote.texi: added before(path,path) and
	after(path,path); documented cutbefore and cutafter and changed
	them to work always according to these specificiations.

	* doc/asymptote.sty: Fixed bug [ 1084667 ] asydef environment.

	* pen.h, psfile.cc, texfile.cc: Fixed bug [ 1084641 ] problem with
	defaultfontsize.

2004-12-14  jcbowman  <jcbowman@wizard>

	* runtime.cc: in texPreamble: replaced newlines with spaces as
	they can break bidirectional TeX pipe.

2004-12-13  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy: Simplified axis capping.

	* examples/equilchord.asy, examples/lever.asy,
	examples/wheelanimation.asy, base/graph.asy: Fix override of axis
	label positioning.

	* path.cc: Fixed bug 1084016: error in bounding box computation.

	* base/featpost3D.asy: Partial port of featpost 3D package for
	MetaPost.

	* base/math.asy, base/plain.asy, doc/asymptote.texi, TODO: Added
	operator == and != for vector classs.  Added interp routine for
	pairs, vectors, and pens.  Added pen background=white, unfill,
	cutbefore, and cutafter.  Documentation updates.

2004-12-12  jcbowman  <jcbowman@wizard>

	* dec.cc: Changed default structure operator == to alias (as with
	arrays) to allow user-defined == operators on structures. Also
	removed != in favour of !alias.

2004-12-11  jcbowman  <jcbowman@wizard>

	* camp.l: Handle invalid operators cleanly.

	* configure.ac: Updated bug report address.

2004-12-10  jcbowman  <jcbowman@wizard>

	* path.cc, path.h: Fixed nullpath bugs.

	* Makefile.in, doc/asymptote.texi: Installation updates

	* Makefile.in: Make info and man directories if missing.

	* picture.cc: Added missing include.

	* doc/Makefile, Makefile.in, configure.ac: Simplified
	configuration.

	* doc/asymptote.texi, base/plain.asy: Documentation updates.

2004-12-09  hammera  <hammera@wizard>

	* knotlist.cc: Fixed tension atleast bug.

2004-12-05  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Improved axis label sizing.

	* main.cc: Remove signal(SIGCHLD, SIG_IGN): there are no remaining
	problems with zombies, and it causes other problems with gv.

	* doc/asymptote.texi: Fixed typo.

	* configure.ac: Increment version to 0.55cvs.

	* base/graph.asy, base/plain.asy, doc/asymptote.sty,
	doc/asymptote.texi, doc/diatom.asy, doc/latexusage.tex: Fixed
	graph sizing routines; added legendsize routine (useful for
	compensating for space taken up by external legend); the default
	width in asymptote.sty is now the full line width.

	* doc/Makefile: Added missing mkdir.

2004-12-04  jcbowman  <jcbowman@wizard>

	* doc/asy.1, doc/asymptote.texi, Makefile.in, picture.cc,
	settings.cc, settings.h: Center EPS figures on page by
	default. Added support for a4 paper as well as letter.

	Default postscript offset is now 0,0.  Option -B (-T) aligns to
	bottom (top) of page.

	* doc/xasy.1x, examples/lowint.asy, examples/upint.asy,
	doc/Makefile, doc/asy.1, doc/asymptote.texi, README, picture.cc,
	settings.cc: Applied Hubert Chan's installation patch for Debian.

	Moved examples, asy.vim, and asy-mode.el to
	/usr/local/share/doc/asymptote/

	asymptote/asymptote.sty is now installed in
	/usr/share/texmf/tex/latex/ (./configure --with-latex=PATH to
	override).

	Fixed typos; updated documentation and changed documentation
	license from GFDL to GPL in view of Debian position statement:
	http://people.debian.org/~srivasta/Position_Statement.xhtml

	Added man pages asy.1 and xasy.1x kindly provided by Hubert.

	* configure.ac: Fixed -with-latex=PATH.

	* Makefile.in, configure.ac: Added --with-latex=PATH configuration
	option.

2004-12-04  jcbowman  <jcbowman@wizard>

	* base/graph.asy, base/plain.asy, doc/diatom.asy, picture.cc:
	Implemented better estimate for graph axis space requirements for
	more accurate graph sizing.

	Added Portrait, Landscape, and Seascape shipout orientations.

2004-12-03  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, picture.cc, pipestream.h, util.cc, util.h:
	Bounding box & diagnostic tweaks.

	* picture.cc, util.h: Added missing header to make cxx compiler
	happy.

	* doc/asymptote.sty, doc/asymptote.texi, doc/diatom.asy, bbox.h,
	drawlabel.cc, pair.h, picture.cc, picture.h, pipestream.h,
	psfile.cc, psfile.h, settings.cc, settings.h: Reworked dvips and
	gs pdfwrite interface: do a post-bbox correction rather than using
	dvips -E (which ignores postscript label rotation).

	Updated documentation.

	* examples/cardiod.asy: Adjusted label alignment.

2004-12-02  jcbowman  <jcbowman@wizard>

	* base/graph.asy: Reinstate label bounding box determination;
	xequals and yequals routines will still work as expected if crop
	is called.

	* doc/asymptote.texi, genv.cc, main.cc, picture.cc, picture.h,
	settings.cc, settings.h, util.cc, util.h: Fix compatibility
	problems in the final postscript output. Made corresponding
	adjustments to printer offset code.

	Added support and documentation for using Postscript viewers other
	than gv.

	Fixed filename extension detection so that filenames containing ./
	and ../ work correctly.

	* cast.cc: Fixed typo.

2004-12-01  jcbowman  <jcbowman@wizard>

	* bison.patch, flex.patch, patches/bison.patch,
	patches/flex.patch, patches/gv-3.5.8-all.patch: Patches for bison,
	flex, and gv-3.5.8 now in patches directory.

	* base/plain.asy: Arrow and bars should always be drawn with solid
	linetype.

	* base/plain.asy, base/graph.asy: Changed dots(pair[]) to
	dot(pair[]); added graph(pair(real),real,real).

2004-11-30  jcbowman  <jcbowman@wizard>

	* BUGS: Fixed typo.

	* base/graph.asy, base/graph3d.asy, base/math.asy, base/plain.asy,
	doc/asymptote.texi, examples/centroidfg.asy, examples/lever.asy,
	examples/triads.asy, examples/wheelanimation.asy, BUGS,
	builtin.cc: Simplified dot drawing function, distinguished it from
	Dot product, and updated documentation and examples.

	* runtime.cc: Added array diagnostics.

2004-11-29  jcbowman  <jcbowman@wizard>

	* BUGS: Added qualifier.

	* BUGS, configure.ac, main.cc, settings.cc, settings.h: Resolved
	infinite import recursion bug [24Nov04] by using libsigsegv to
	distinguish between stack overflows and real segmentation
	violations (due to C++ programming errors).

2004-11-28  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/diatom.asy: Deferred drawing should respect
	clipping bounds.

	* base/graph.asy: Removed obsolete label bbox code from xequals
	and yequals to make them work correctly.

2004-11-28  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, doc/latexusage.tex, base/plain.asy: Updated
	documentation.

	* base/plain.asy, examples/centroidfg.asy,
	examples/integraltest.asy, examples/triads.asy,
	examples/wheelanimation.asy: Improved dot(): if dotsize not
	specified, use linewidth(pen)*dotfactor.

	* cast.cc: Implement implicit cast from real to pen linewidth.

	* builtin.cc, drawlabel.cc, pen.h, psfile.cc, psfile.h,
	runtime.cc, runtime.h, texfile.cc: Cleaned up pen code.

2004-11-27  jcbowman  <jcbowman@wizard>

	* drawlayer.h, drawverbatim.h: tex() not layer() should force
	label processing.

2004-11-27  jcbowman  <jcbowman@wizard>

        * Released Version 0.53.
	
	* doc/asymptote.texi, examples/planes.asy, base/math.asy,
	base/graph3d.asy: Added preliminary 3d graphics routines &
	documentation.

2004-11-26  jcbowman  <jcbowman@wizard>

	* BUGS: Added Bug 24Nov04.

	* psfile.h: Fixed transform bug (yx->xy) reported by Jacques.

	* doc/Makefile, doc/asymptote.texi: Makefile for doc directory.

	* doc/asymptote.texi, base/math.asy, base/plain.asy, BUGS,
	Makefile.in: Math and documentation updates.

	* base/math.asy: Fixed intersect(vector,vector,vector,vector);

2004-11-25  jcbowman  <jcbowman@wizard>

	* ChangeLog, path.h: Handle out of bounds indices properly in
	straight(path,int).

	* base/math.asy: Fixed intersect(vector,vector,vector,vector).

	* env.h, genv.cc: Avoid duplicate import messages when verbose > 1.

2004-11-23  jcbowman  <jcbowman@wizard>

	* drawlayer.h: Make layer() work also when there are no labels.

	* base/graph.asy, base/math.asy, base/plain.asy,
	doc/asymptote.texi, runtime.cc, runtime.h, treetest.asy,
	builtin.cc: Fixed bbox function; added dot product for pairs and
	vectors.

	* builtin.cc, builtin.h, doc/asymptote.texi, runtime.cc,
	runtime.h: Added missing xor boolean binary operator.

	* base/plain.asy: add(picture, picture) now adjusts userMin and
	userMax.

2004-11-21  jcbowman  <jcbowman@wizard>

	* fileio.cc, fileio.h: Ignore attempts to close stdin and stdout.

	* runtime.cc: Fixed nullFile.

	* Makefile.in, configure.ac, settings.cc: Simplified
	configuration; documented GNU_GETOPT_H.

	* arrayop.h, fileio.cc, fileio.h, runtime.cc: renamed camp::stdout
	to camp::Stdout to make FreeBSD happy.

	* README: Added reference to mailing list.

	* doc/asymptote.sty: Removed email addresses.

	* doc/asymptote.texi: Fixed formatting.

	* Makefile.in: updated distclean

	* doc/asymptote.texi, fileio.cc, fileio.h, runtime.cc, arrayop.h:
	Fixed memory leaks.

	* picture.cc: Fixed memory leak.

	* doc/asymptote.texi: Readline library should be reasonably
	up-to-date (Version 4.3 and 5.0 have both been tested; asy won't
	even compile with very old versions).

	* doc/version.texi.in: Template used to extract texinfo version
	from configure.ac.

	* Makefile.in, configure.ac, doc/asymptote.texi, settings.cc: More
	FreeBSD tweaks.

	* arrayop.h, runtime.cc: Revert stdout optimization.

	* README: Fixed typo.

	* Makefile.in: make install-all now depends on all

	* Makefile.in, camp.l, camp.y, configure.ac, doc/asymptote.texi,
	fpu.h, main.cc, settings.cc: Port to FreeBSD 4.10-RELEASE-p2 with
	gcc34.

2004-11-20  jcbowman  <jcbowman@wizard>

	* bison.patch, flex.patch: Patches for clean compilation under CXX
	and other compilers.

	* fpu.h, path.h: include tweaks

	* doc/asymptote.texi: Menu updates.

	* doc/asymptote.texi: Fixed up discussion of static vs. dynamic

	* arrayop.h, fileio.cc, fileio.h, runtime.cc, runtime.h: Check if
	file is closed before doing any reads or writes.

	* doc/asymptote.texi: Added sentence about linetype-adjustment
	based on arclength of path.

2004-11-19  jcbowman  <jcbowman@wizard>

	* doc/latexusage.tex, base/plain.asy, doc/asymptote.sty,
	doc/asymptote.texi: Default width of figures included with
	asymptote.sty is now 0.9\linewidth.

2004-11-19  jcbowman  <jcbowman@wizard>

	* BUGS: Bug 2004-17-11 fixed.

2004-11-19  hammera  <hammera@wizard>

	* coder.cc, coder.h, coenv.cc, coenv.h: New classes from the env
	-> env and coder split.

	* base/plain.asy, base/simplex.asy, Makefile.in, absyn.cc,
	absyn.h, access.cc, access.h, builtin.cc, dec.cc, dec.h,
	drawfill.cc, env.cc, env.h, exp.cc, exp.h, fileio.cc, genv.cc,
	genv.h, import.h, importaccess.h, name.cc, name.h, newexp.cc,
	newexp.h, pathlist.cc, stm.cc, stm.h: Split the env class into env
	and coder, and added coenv.  Added "self-importing".

2004-11-19  jcbowman  <jcbowman@wizard>

	* base/graph.asy, doc/asymptote.sty, doc/asymptote.texi: Figures
	included via asymptote.sty are now fully independent; updated
	documentation.

	* base/math.asy, base/plain.asy, doc/asymptote.texi,
	base/graph.asy, BUGS, builtin.cc, runtime.cc, runtime.h: Remove
	dependency of graph.asy on math.asy; added builtin real abs(pair)
	and int sgn(real) functions.

	* doc/asymptote.texi, base/plain.asy: Renamed includegraphics to
	include.

2004-11-18  jcbowman  <jcbowman@wizard>

	* BUGS: Added BUGS file.

	* drawlayer.h: Added layer function.

	* base/plain.asy, builtin.cc, doc/asymptote.texi, drawelement.h,
	drawverbatim.h, picture.cc, picture.h, runtime.cc, runtime.h,
	settings.cc, texfile.cc, texfile.h: Added layer and
	includegraphics functions.

	* Makefile.in: Added install-all target.

	* types.cc: Fixed typo.

2004-11-17  jcbowman  <jcbowman@wizard>

	* base/math.asy, drawelement.h: Minor optimizations.

	* camp.l, camp.y, dec.cc, doc/asymptote.texi: Removed unused
	dynamic keyword.

2004-11-16  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, guide.cc, path.cc: Fixed bug: (path)
	(nullpath--(0,0)--(100,0)--cycle) was missing final node.

2004-11-15  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, Makefile.in: Switched from jpg to png
	images.

	* base/simplex.asy, doc/asymptote.texi, genv.cc: Make variables in
	file-level modules dynamic by default, like everywhere else.

	* Makefile.in: Support old versions of install-info.

2004-11-15  hammera  <hammera@wizard>

	* examples/dragon.asy, access.cc: Changed error message for static
	vs. dynamic errors.

2004-11-15  jcbowman  <jcbowman@wizard>

	* base/plain.asy, doc/asymptote.sty, doc/asymptote.texi,
	examples/dragon.asy: Moved Legend[] legend inside picture
	structure; shipout(frame) now adds gui() entries and legend;
	shipout always deconstructs its picture argument.

	* runtime.cc: Fixed compiler warning message if HAVE_LIBFFTW3 is
	undefined.

	* stack.h: removed unnecessary vm:: qualifier

2004-11-15  hammera  <hammera@wizard>

	* cast.cc, cast.h, entry.cc, table.h, types.cc, types.h:
	Refactored the equivalent type function.

2004-11-15  jcbowman  <jcbowman@wizard>

	* pipestream.h, util.cc: Added unistd.h include.

2004-11-13  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi, ChangeLog, configure.ac: Increment version.

2004-11-12  jcbowman  <jcbowman@wizard>
	
        * ChangeLog: release: Version 0.52

	* doc/asymptote.texi, doc/latexusage.tex: Made import graph local
	to each figure in latexusage.

	* doc/diatom.asy: added call to crop

	* doc/asymptote.texi: Documentation updates

	* base/graph.asy, base/latin1.asy, doc/asymptote.texi,
	Makefile.in, camp.y: Allow qualification of variables in imported
	modules with (quoted) nonalphanumeric names; added ISO 8859-1
	support (latin1).

	* doc/loggraph.asy, doc/parametricgraph.asy, base/graph.asy,
	doc/asymptote.texi: Improved xlimits, ylimits, limits
	routines. Added crop routine.

	* doc/asymptote.texi, base/graph.asy, base/plain.asy: Fixed
	various graph scaling problems.

2004-11-10  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: minor formatting changes

	* doc/asymptote.texi, doc/diatom.asy, base/plain.asy,
	base/graph.asy: Encapsulated global graph scaling variables within
	picture; updated documentation.

2004-11-09  jcbowman  <jcbowman@wizard>

	* doc/asymptote.texi: fixed missing word on first page

	* base/plain.asy: Added dots(pair); fixed division by zero in
	arrowhead for degenerate paths.

	* doc/asymptote.texi, configure.ac: Increment version.

	* doc/asymptote.texi: Missing description

	* doc/asymptote.texi: fixed missing @code

	* examples/logo.asy: moved to doc/

	* Makefile.in: Fixed problems with installation of base files from
	cvs.

	* doc/.cvsignore, examples/.cvsignore, .cvsignore: updated
	cvsignore entries

	* Makefile.in, doc/asymptote.texi: Added optimization flags.

	* base/asy-mode.el, base/asy.vim, doc/asymptote.texi, Makefile.in,
	asy-mode.el, asy.vim: Added instructions for asy-mode.el and
	asy.vim.

	* doc/asymptote.texi, doc/diatom.asy, doc/diatom.csv,
	base/unicode.asy: unicode updates

2004-11-08  jcbowman  <jcbowman@wizard>

	* Initial public release: Version 0.51
	
	* Makefile.in: Corrected local value of ASYMPTOTE_DIR

	* runtime.cc: Fixed warning messages.

	* configure.ac, doc/asymptote.texi: Update cvs version

	* doc/logo.asy: Asymptote logo

	* README, doc/asymptote.texi: Updated README and URL.

	* doc/latexusage.tex: Example of latex usage.

	* examples/progrid.asy: displayed equation example

	* doc/asymptote.texi: updates to localwords

	* doc/asymptote.texi: typo fixed

	* doc/asymptote.texi: Final documentation updates.

	* Makefile.in: make install-man no longer does a make man

	* examples/diatom.asy, examples/diatom.csv,
	examples/latexusage.tex, doc/asymptote.sty, doc/asymptote.texi,
	doc/diatom.asy, doc/diatom.csv, access.cc, asymptote.sty, dec.cc,
	errors, exp.cc, genv.cc, name.cc, newexp.cc, record.h,
	settings.cc, types.cc, wce, Makefile.in: Final tweaks before
	release.
