2010-03-03  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-python.c (python_evaluator_shutdown): Added shutdown
	function.

	* src/muesli-tcl.c (tcl_eval_string): Examine the Tcl result for
	various possible types in turn.
	(muesli_to_tcl_result): Pass back error codes.

2010-02-28  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-python.c (python_eval_string): Use Py_eval_input
	instead of Py_file_input, and it works!

2010-02-27  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-python.c (python_eval_string): Trying various things
	to make the python caller work.  Putting Py_file_input instead of
	0 for the "start" stops the crashing, but there's no useful result
	returned.

2010-02-24  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli.c (muesli_register_evaluators): Add pipe variants,
	for "lisp" and "haskell".

	* src/muesli-tcl.c (tcl_evaluator_init): Move a couple of
	GrEvo-specific things out to GrEvo.

	* src/muesli-lua.c (lua_evaluator_init): Move a couple of
	GrEvo-specific things out to GrEvo.

	* src/muesli-javascript.c (muesli_to_javascript): General tidying
	up, and added a return type converter function.

2010-02-22  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-demo.c (main): Split main, as needed for Guile.

	* config.h.in: Add flag for Guile.

	* src/muesli-ulsiod.c (siod_evaluator_init): Add extensions conditionally.

	* src/muesli.c (muesli_register_evaluators): Pass in flags word
	for which extensions to add.

	* src/muesli.h (MUESLI_EXTENSION_PARAMETER_BLOCK): Define some bit
	fields for which extensions to add.

	* src/muesli-tcl.c (tcl_evaluator_init): Allow for being passed no
	options.

	* src/muesli-tcc.c (begin_tcc_instance): Allow for being passed no
	options.

	* src/muesli-slang.c (slang_evaluator_init): Allow for being
	passed no options.

	* src/muesli-siod.c (siod_app_init): Allow for being
	passed no options.

	* src/muesli-python.c (python_evaluator_init): Allow for being
	passed no options.

	* src/muesli-perl.c (perl_load_file): Allow for being passed no
	options.

	* src/muesli-octave.cpp (octave_evaluator_init): Allow for being
	passed no options.

	* src/muesli-lua.c (lua_evaluator_init): Allow for being
	passed no options.

	* src/muesli-javascript.c (javascript_evaluator_init): Allow for
	being passed no options.

	* src/muesli-custom.c (custom_evaluator_init): Allow for being
	passed no options.

	* src/muesli-ulsiod.c (siod_evaluator_init): Allow for being
	passed no options.

	* Makefile.am (AM_CFLAGS): Found I was using the wrong variable
	for flags -- CPPFLAGS are for the preprocessor.  Since it's run as
	part of the same program, it worked anyway.

2010-02-21  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-demo.c (main): Add REPL command to load a file.
	(parse_args): Add command-line command to load a file.

2010-02-15  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli.h (muesli_value_t): Define a type containing a value
	and its type, and use this throughout.

2010-02-14  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-tests.c (muesli_test_evaluators): Separate out into a
	new source file.

	* src/muesli.c (muesli_split_args): bug fixes: was overwriting
	first argv slot with second, and ending with rubbish in the last;
	and wasn't writing the final null of the final arg.

	* src/muesli-demo.c (muesli_internal_tests): Added function for
	internal (non-language) tests.

	* src/muesli-exec.c (exec_eval_string): Pass in the
	underlying_program to the argv preparation function.

	* src/muesli.c (muesli_split_args): Added an extra arg to allow
	the first element to be passed in separately, so that the program
	name for exec can come either from the evaluand string or from the
	underlying_program slot in the evaluator structure.

	* src/muesli.h (evaluator_interface): Added function for shutting
	an evaluator down.

	* src/muesli-javascript.c (javascript_evaluator_init): Added
	native functions in initializer.

2010-02-13  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-lua.c (muesli_lua_custom_eval_function): Sort out
	some return types.

	* src/muesli.c (muesli_malloc_copy_string): Function to take a
	copy of a string; use this throughout where appropriate.

2010-02-11  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-octave.cpp: Completed interface to Octave.

2010-02-07  John C G Sturdy  <john.sturdy@ul.ie>

	* src/muesli-octave.cpp (octave_eval_string): Attempt at filling
	in the Octave interface.

2010-02-04  John C G Sturdy  <john.sturdy@ul.ie>

	* doc/muesli.texi (Installation): Explained some fixes that you
	may need to do in your installed library directories to get the
	configure script to detect all the installed languages.

2010-02-01  John C G Sturdy  <john.sturdy@ul.ie>

	* src/muesli-slang.c (slang_setup): New file.

	* src/muesli-demo.c (long_options_data): New program, new file.

	* src/muesli.h (evaluator_interface): Rename "pipe" things to
	"underlying" as they might be useful for other evaluators later.

	* src/muesli.c (muesli_get_evaluator_by_extension): Initialize
	evaluator before returning it.

2010-01-29  John C G Sturdy  <john.sturdy@ul.ie>

	* src/muesli.c (muesli_set_parameter): Pass in calling language
	name as a parameter, so that if setting a code fragment parameter,
	the application parameter mechanism can arrange for it to be
	interpreted in the language from which it was set.

2010-01-25  John Sturdy  <john.sturdy@ul.ie>

	* src/muesli-python.c: New file.

2009-12-30  John C G Sturdy  <john.sturdy@ul.ie>

	* src/muesli.h (evaluator_interface): Added array_separator field,
	containing the element separator for array literals.

2009-12-10  John C G Sturdy  <john.sturdy@ul.ie>

	* src/muesli-lua.c (lua_eval_bytecode_string): New function, based
	on the corresponding one in muesli-ulsiod.c.
	(lua_eval_in_language): New function, based on the corresponding
	one in muesli-ulsiod.c.

2009-10-30  John C G Sturdy  <john.sturdy@ul.ie>

	* src/minti-custom.c (custom_eval_0): Added eval_0 function.

2009-09-29  John C G Sturdy  <john.sturdy@ul.ie>

	* src/minti-ulsiod.c (siod_evaluator_init): Tidy up use of argv,
	and allow heap size to be specified as a number.

2009-09-04  John C G Sturdy  <john.sturdy@ul.ie>

	* src/minti.c (evaluator_repl): Added makeshift REPL for languages
	that don't provide one.
	(print_interpreter_names): Provided version number as possible
	printf arg.

2009-09-03  John Sturdy  <john.sturdy@ul.ie>

	* src/minti-lua.c (custom_eval_function_lua): Check custom
	evaluator was found; correct number of results returned in case of
	error.

	* src/minti.c (get_named_evaluator): Correct call to initializer.
	(get_named_evaluator): Add option to exit if evaluator not found,
	as applications will probably often want to do this.

2009-08-27  John C G Sturdy  <john.sturdy@ul.ie>

	* src/mint-stack-bytecode.cpp (stack_bytecode_eval): Write back
	the latest sp into the state at any kind of return.
	(stack_bytecode_eval): A couple more uses of a temporary variable
	to convince the compiler of what I mean about sequencing.

	* src/mint-exec.cpp (exec_eval_string): Closed some more fds, as
	it was leaking them.

2009-08-26  John C G Sturdy  <john.sturdy@ul.ie>

	* src/mint-int.cpp (test_evaluator): extended the evaluator test
	system to time them as well; and also re-arranged the test system
	to be data-driven.

2009-08-25  John C G Sturdy  <john.sturdy@ul.ie>

	* src/mint-int.h: Project created, by splitting out the
	interpreter interface from GrEvo.


