my-basic/HISTORY

241 lines
6.8 KiB
Plaintext
Executable File

Sep. 11 2015
Added a duplicate sub routine error handling
Added optional argument support for INPUT statement
Fixed a variable multiple freeing bug in sub routine
Polished document
Sep. 8 2015
Fixed a type parsing of sub routine bug
Fixed a scope processing bug
Fixed a sub routine invoking bug without leading CALL statement or result receiver
Added a makefile
Sep. 6 2015
Improved sub routine
Sep. 2 2015
Added sub routine type insurance
Prompted more friendly dummy function message
Polished code and document
Sep. 1 2015
Added support for user customized sub routine by DEF/ENDDEF
Aug. 26 2015
Added a memory pool to interpreter shell in main.c
Aug. 25 2015
Allowed a user to define the memory tag data type, unsigned short as default
Added an mb_set_memory_manager function, allows user defined memory management
Added referencable data type size constants
Aug. 11 2015
Fixed a wrong IF trunk processing bug, thanks to irony for pointing it out
Fixed a crash bug with an invalid IF statement
Jul. 27 2015
Fixed a memory leak with mb_pop_xxx, thanks to Daniel Haensse for pointing it out
Jul. 20 2015
Fixed a string manipulation bug
Jul. 12 2015
Added array manipulation functions
Jun. 19 2015
Added an mb_schedule_suspend interface to schedule to suspend the execution
Jun. 15 2015
Fixed a wrong token position marking issue with interactive mode, thanks to Daniel Haensse for pointing it out
May. 6 2015
Removed redundant EOS tokens
Polished data precision related macros
May. 5 2015
Added string type support for non-simple array
Fixed a memory leak when storing strings to a non-string array
Polished data precision related macros
Apr. 27 2015
Added code line inserting/removing to interpreter shell
Changed mb_dispose_value as public
Apr. 23 2015 Version 1.1
Added debug APIs
Added (nestable) multiple line IF statement support
Apr. 15 2015
Added mb_pop_usertype, mb_push_usertype to support user defined type
Polished code
Polished document
Apr. 13 2015
Added mixed integer/float array support
Added warning prompt when passing strings to maths functions
Fixed a memory leak when storing strings in an array
Polished the interpreter commands
Apr. 11 2015
Moved struct mb_interpreter_t from my_basic.h to my_basic.c
Added an mb_has_arg interface to tell whether there is any more argument
Added an MB_ENABLE_SOURCE_TRACE macro to enable or disable source tracing
Disposed parsing context at runtime to reduce memory occupation
Apr. 10 2015
Improved compatibility with PellesC
Fixed a double precision float parsing bug on all 32bit systems, thanks to Pito for pointing it out
Fixed an exponential number parsing bug, thanks to Pito for pointing it out
Fixed a crash bug when a script begins with a meaningless negtive number
Mar. 25 2015
Changed _strupr macro to mb_strupr function
Added an mb_memdup function
Fixed an intermediate value disposing more than once bug
Dec. 17 2014
Fixed a calculation crash bug
Fixed a memory leak with intermediate value
Dec. 16 2014
Fixed a negative calculation bug in a function argument
Dec. 9 2014
Improved compatibility with BCB
May. 25 2014
Added an mb_set_inputer function which allows a user to specify an INPUT reader, thanks to Michael P. Welch for suggestion
Added an mb_remove_reserved_func function which allows a user to disable/remove a reserved statement
May. 22 2014
Fixed a crash bug when missing colon in a combined line, thanks to Michael P. Welch for pointing it out
Fixed a missing lexical cursor stepping bug in INPUT statement
Mar. 17 2014
Added an XCode project
Added a safe stdin reader function mb_gets
Fixed a crash bug in INPUT statement
Feb. 17 2014
Added mod by zero processing
Feb. 16 2014
Fixed a crash bug in _core_for, thanks to mummylauncher for pointing it out
Jul. 19 2013
Fixed a crash bug in _execute_statement, thanks to Jon Mayo for pointing it out
Feb. 25 2013
Fixed a cross routine multiple statement execution bug, thanks to Bruce Kendall for pointing it out
Fixed a memory corruption bug when loading a script file
Jan. 9 2013
Fixed a crash bug when using EDIT command
Dec. 14 2012
Added an invalid expression error handling
Added an out of memory error handling
Dec. 5 2012
Fixed a minus calculation bug, thanks to Bill Walker for pointing it out
Nov. 14 2012
Fixed a cross routine RETURN bug, thanks to Bruce Kendall for pointing it out
Sep. 12 2012
Fixed a bug in ASC
Fixed a label parsing, jumping bug, thanks to Ahmad Hawwash for pointing above two issues out
Fixed a crash bug in IF statement
Added divide by zero processing
Added calculation error raising
Sep. 1 2012
Fixed a redisposing bug when retrieving a string argument, thanks to Ahmad Hawwash for pointing it out
Fixed a memory leak after retrieving a composited string argument
Aug. 29 2012
Modified an odd string comparison behavior, thanks to Matthias Nott for testing it out
Added a warning system, disabled warning as default
Improved compatibility with GCC
Aug. 3 2012
Implemented memory occupation statistics
Improved compatibility on 64bit systems
Fixed some warnings under a stricter mode
Jul. 21 2012
Added a compatibility macro for PRINT a newline
Added an mb_attempt_func_end C API
Fixed a unary minus symbol parsing bug
Jul. 19 2012
Fixed a crash bug caused by a mistake in calculation priority table, thanks to Bruce Kendall for pointing it out
Jul. 10 2012
Implemented KILL command
Fixed a negative calculation bug
Added an invalid identifier usage error handling
Avoided some warnings on gcc
Jul. 5 2012
Implemented LIST, EDIT, LOAD, SAVE commands
Jul. 4 2012
Fixed some crash bugs
Fixed some memory leaks
Jul. 3 2012
Modified/added math functions: FLOOR, CEIL, FIX
Fixed an INPUT type issue
Changed float number formatting from using "%f" to "%g" in PRINT, thanks to Bruce Kendall for pointing above three issues out
Refactored the way to load a script file
Done several small improvements
Jun. 29 2012
Fixed a newline mistake in PRINT
Jun. 29 2012
Implemented customizable print functor
Improved PRINT statement
Fixed an infinity loop bug in RND function
Fixed some crash bugs
Jun. 28 2012
Fixed a cross routine RETURN bug, thanks to Bruce Kendall for pointing it out
Fixed some memory leaks
Refactored error position informing
Jun. 18 2012
Implemented user extended abort, thanks to Bruce Kendall for giving suggestion
Apr. 30 2012
Compress number to integer if necessary
Apr. 27 2012
Fixed a string connecting crash bug, thanks to Ahmad Hawwash for pointing it out
Improved portability on gcc
Aug. 3 2011
Fixed hashtable removing bug
Jun. 18 2011
Fixed some mistakes
Allowed underline character appear in an identifier
Apr. 15 2011
Fixed garbage collection and _label_t disposing bugs
Apr. 14 2011
Fixed some list/comparison operator bugs
Feb. 15 2011
Improved portability on Cocoa
Improved portability on VC++ 6.0
Fixed a suspend/resume bug
Feb. 9 2011
Fixed struct mb_interpreter_t declaration warnings on gcc
Feb. 1 2011 Version 1.0
First release.