You will find here all changes that have been made for each version of RPNEnh.

New feature, new function and bug are present in this page.

- unknowndate version 0.58 - Release Candidate to 1.0
- fixed internal bug with unserialize and \n...
- unknowndate version 0.57
- fixed bug while editing an apn
- apn resolution with "tag"
- wider user interface (36 to 44 char)
- changed menu "lstarg".
- a bouton "edit" to edit TOS
- 2 new contextual menus for prog and apn
- newgui : keep selection in multiline mode
- newui : new background color.
- fix a bug with empty string in programs
- new function
`KeyProg`. to makes easier interactives programs - new functions :
`r1++``r1--``r2++`and`r2--` - new function
`bench` - new function
`sleep` - fixeda bug with << << "\n\rxx" >> >> (unserialize)
- unknowndate version 0.56
- now support display of pi*sqr(n/d) and sqr(pi*n/d)
- fixed a bug for
`ASIN`and`ACOS`for 1 and -1 values - added a menu "prog"
- fixed a bug for TAG
- unknowndate version 0.55
- new GUI : a lot better !!!
- first version of new entry field
- fixed a bug in recongizing 5:30:zz et 5:zz
- new function
`TAG->`et`->TAG`(and implicitly use it in`PEval`...) - unknowndate version 0.54
- better recon of complex (allow ',' and '.' as comma separator)
- now support empty string in list and programs
- fixed the zoom on gfx screen
- function
`PolyDraw`is now replaced by`Draw` - function
`Draw`now support complex and list of complex (draw complex circle) - unknowndate version 0.53
- bug fix in entry field with hexa
- bug fix : better reconization of list of hexa
- 2004 May the 26th version 0.52
- rebuilt
`WAIT`function. (affect also`InputLCD`) - function
`inputLCD`now accept lowercase, bug fixed with keyboard. - new function
`DayYear`to get the day number of a year - new
*killer*function`STrans`to deals with mass changes in strings (see here) - Now you can use F1~F4 from your keyboard to get
`r1=>`~`r4=>`, and combine with SHIFT to store int r1~r4 - 2004 March the 30th version 0.51
- New function
`DispXY`to display strings at row Y and col X. works also for multilines strings. - New function
`inputLCD`to request user entry (without the`input`popup screen) - function
`convert`now accept few new string format :`"""`

,`"\"`

,`"/"`

,`"#"`

and`"'"`

- Impoved
`FileREAD`: removed file size limitation (side effect, if you try to open huge file i.e 100MB it may take hours.. or crash) - 2004 March the 22th version 0.50
**Major version** - new function
`CLLCD` - new interactive function
`WAIT`, to wait user keystroke - new function
`DTFormat`to format a date - new function
`convert`to convert string - new program statement :
`WHILE`..`ENDWHILE`to perform conditional loops. - new keybinding F9 to F12 to launch a program quickly !
- Fixed a bug in binary system
*apn*now work embeded into lists- new entry field (bigger) and remind the 4 last entry
- new string function
`ROT13`and`ROT39` - Fixed a bug in
`WeekNr`(now ISO8601 compliant!) - Now you can enter directly a date in
`<GR ... >`

format - new register r1 to r4. to store
`=>r1`, to restore`r1=>`.. same with r2,r3 and r4 - built-in help now translated in english, some function name have been changed to reflect common name usage in english

PGCD is now`GCD`, PPCM is now`LCM`,

COMAT is now`Adjug`, PrdVect is now`CROSS`and PrdScal is now`DOT`. - 2004 Januray the 1st version 0.49
*happy new year* - New
`ABS`now support matrix as the*Frobenius norm* `^2`now support poly- APN (Arbitrary Precision Numbers) : Beta, implements
`+``-``*``/``Sqr``INV``^2` - Fix negative date bug (JU)
- Fix
`DayWeek`bug - New Date function : proleptic julian
`>JUL``ListJ->DT`and`DT->ListJU` - New numbers functions :
`IP``FP``FLOOR``CEIL` - Allow negative incrementation in
`FOR/NEXT`statments - Fixed a bug in DMS support for programs
- 2003 December 14th. version 0.48
- Date Support !
- JD : Julian Day
- JU : Julian Calandar
- GR : Gregorian Calandar

- Change Date display mode JD to Calandar with
`>JD`and`>CAL` - Convert a number into a Julian Day by
`>JD` - Basic operation between date with
`+`and`-` - Date Conversion :
`List->DT`and`DT->List`(from and to list) - New date function :
`WeekNr`and`DayWeek` - A big thank to André M. for time passed to test Leap year... and to learn me everything about dates.
- 2003 November 11th. version 0.47
- QA processing :
- review code to clean unused parts
- optimization and file size reduction (444kb to 400kb)
- fixed few small bugs

- 2003 November 2nd. version 0.46NS : New Stack version
- no new feature, just totaly rebuild the stack display to have it
__right-justified__, it was not easy.. - 2003 October 31th. version 0.46
- new
**poly**menu. - fixed a
`ForEach`to works also with programs - better reconization on embeded poly (in list/array), also for
`str->` - "lock-contect menu" feature : display changed. (double click on cplx menu to see for example)
- 2003 October 27th. version 0.45
- new function
`PEval`to valuate a polynomial. - RPN-enh now supports
**programs**!!!- new object :
`« »`: programs - new function
`run`to run a program from stack - modified behavior of
`STO`and`RCL`to support programs - use
`exec`to run a program by his name (from VAR) - new internal function
`Pgm->Qle`to convert a prog into a QLE list - fixed a bug in
`list->script`to handle multi-line strings (internaly used to run a program)

- new object :
- new comparators :
`?=`,`?<`and`?>`to works with IF/THEN statment. - D:M:S are now displayed with a fixed number of digit (seconds) , depends on the current mode.
- new matrix function :
`trace`compute the trace - new matrix function :
`egvl`gives a list of eigen values - user interface change : now you can switch to multi-line (entry field)
- 2003 October 12th. version 0.44
- new function
`rnd`gives a random number. - new feature : DEG/RAD mode for trigonometrics function, plus new functions :
`TrigDEG`and`TrigRAD`to switch between mode from scripts - bug fix in
`FOR..NEXT`functions. - bug fix, DMS gave error when typed from list. (this error apeared in 0.43)
- new script functions :
`IF``THEN``ELSE``ENDIF` - fixed a bug in
`->list`that crashed when improper used - now function
`str->`works better, can recognize any item - 2003 September 11th. version 0.43
- new function
`Round`to round numbers. works also with lists - new feature : now
`min`and`max`works also with lists - new function
`concat`to concatenate a liste into a string. - bug fix, the old limit of 130 functions max is now over.
- new script function
`input`to request user entry

any kind of objet can be filled in, RPNE can recognize it. - 2003 August 31th. version 0.42 -
**Major version** - new function
`fill`to fill a string with a patern - new
`repl`to replace strings into a string - new
`head`to extract first item of a list / first char of a string - new numeric functions
`min`and`max` - system accept now empty strings
- fixed bug with
`reverse`and`sort`that may occurs for improprer used (when used with empty stack) - New menu :
**VAR**to store objects with new functions`STO`and`RCL` - you can now script your RPNE (makes programs) : see tutorial for scripting
- new function
`Exec`to run a script by name (from VAR) - function
`unserialize`execute script directly from stack. - new
`STOScript`to save script into**VAR** - you can execute a script from
**VAR**directly - new
`ForEach`compute a script on each item of a list - 2003 August 1st. version 0.41 -
- fixed a bug in
`STO_C` `x^y`now can compute*complx ^ real*ex :`(1;1) 2.58 x^y`gives*(-1.07577 ; 2.19559 )*- 2003 July 11th. version 0.40 -
`STO_C`and`RCL_C``hexa->str`and`str->hexa`implemented`size`function returns the number of item of a list`sort`perform a sort on a list`md5`totaly implementation rebuild- fixed a bug in some case
- unfortunatly this implementation is slower and does not accept too long string
- Created
`md5f`to fix this problem : it compute md5 hash directly from a file (quite slow) - Script
- Improved
`unSerialize`function to support more flexible notations - new function
`list->script`help you to create scripts (type them as a list) - loop implementation : FOR INDEX NEXT
`type`function returns type of an object- fixed a bug when dividing two hexa numbers
- 2003 June 26th. version 0.39 -
**major version** `STO_A`and`STO_B`now store data persistantly- new
`LASTSTACK`is defined on home key - fix a bug, negative values were wrongly displayed in D:M:S mode
- Now you can type number with exponents directly ex:
**1.45E-6** - new
`Time`function give system time (can be used for bench) - some internal functions
`Serialize`used to store data as a string (scripting)`UnSerialize``SendKeys`- Scripting system : first implementation. (you can execute script/program from file)
- new
`ROLLD`function - you can roll the whole stack up and down with CTRL-Pg.UP and CTRL-Pg.Down (functions
`STKUP`and`STKDWN`) - 2003 June 9th. version 0.38
- fix
`Roots`to gives more roots of polynomial (serveral methods : slope analysis, sign changing...) - in the
**drawing form**compute now poly value under cursor.. - 2003 June 3rd. version 0.37
- new
`polyDraw`: draw a polynomial - in the
**drawing form**: navigation system with arrow , + and - for zoom - 2003 Mai 23. version 0.36
- New Object : POLYNOMIAL
*beta*: few operation supported : +,-,*,/ - new
`ID`: built an indentity matrix - new
`PCAR`: built the caracteristic polynomial of a matrix - new
`Roots`: gives roots of a polynomial*highly bugged beta* - function
`{}->poly`and`poly->{}`convert poly from/to a list : that's the only way to build a poly with this version. - 2003 Mai 09. version 0.35
- fixed a bug in
`ABS`with vectors - new
`VectAngle`compute angle between 2 vectors - new
`FileReadCVS`*beta*read CVS file into a matrix - 2003 April23. version 0.34
- new function :
`PrdVect`compute vector-product (cross) - now
`ABS`support vector, it compute norm of vector. - 2003 April 20. version 0.33 :
**Major version** - A lot of mathematical enhancement have been made :
`x^y`now support complex numbers also in exponant : (1;2)^(2;4)`e`is more accurate for complex numbers. and is faster.(thank to the formula :*exp(iz)=cos(z) +i sin(z)*)`sin`and`cos`now are quicker for complex numbers (no more iterative calculations)- fixed a bug when dividing by a complex, ex : 3/(1;2).
`^2`supports now matrix (square)- new functions :
`[]->{}`and`{}->[]`to convert list from/to matrix - new function :
`PrdScal`to compute Scalar Product of two vectors. - now RPNE window is
__always-on-top__, you can still iconize it if you want. - fixed a bug in
`tr`(transpose) - new : function
`get`now work also for matrix.

you can extract one row/one col/one item. ex :- [[1 2][3 4]] {
**2 2**}`get`return 4.*the item at x=2,y=2* - [[1 2][3 4]] {
**2 0**}`get`return [[2][4]].*2*^{nd}col - [[1 2][3 4]] {
**0 2**}`get`return [[3 4]].*2*^{nd}row

- [[1 2][3 4]] {
- New option : LockContextMenu. Double-click on a context menu to lock it (see the lock :)
- Better support for
__empty lists__. {}`list->`returns {0} and {}`sum`returns 0 now. - update function :
`->[]`support now {c r} to build a complete matrix c:nb of cols and r:nb of rows - 2003 April 18. version 0.32
- you can now popup menu by pressing the "windows menu" key.
- you can now change menu by PageDown and PageUp keys...
- bug fix : edition of matrix/lists/strings/bin/dms now better supported (no more extra carriage return)
- 2003 April 16. version 0.31
- User Interface : add a list of all functions. To popup the list, press the TAB key
- add new functions :
`ASIN`,`ACOS`,`ATAN`,`D->R`,`R->D` - 2003 April 7. version 0.30
- User Interface : you can now edit value by pressing the
*arrow down*key (works with string, lists, cplx, array) - User Interface : international keyboard handled : press
`"`key to enter a string,`(`for complex,`[`for array,`:`for DMS, and`{`for lists - add new function : linear system
`ax˛+bx+c`=0 - 2003 March 17. version 0.29
- add Statistical functions :
`d%``y%x``x+y%``x-y%``x%+y%``S+x%n` - add new function :
`TAN`for real and complex - add new function :
`Stdev`and`mean` - 2003 March 11. version 0.28
- fixed important bug in complex numbers : a b - was given (b-a) instead of (a-b)
- add new function :
`MOD` - add new function :
`ABS`. works also with complex (gives module) - implemetation of
`ln`(z) complex. same for`log`(z) - Thank to Willam. - add new function :
`10^x`(also for complex) - fixed a bug in sqr with negative real arg. now gives "(nan)"

if you use complex i.e (-5;0), it still gives the two complex roots instead of (nan). - add new stack functions :
`ROT`,`AROT` - 2003 March 06. version 0.27
- add new function :
`rndMX`generate a random matrix - fixed a bug into
`->[]`, works now - fixed a bug
`INV`(1/x) on "DET=0" matrix used to crash (ex. [[1 2 3][4 5 6][7 8 9]]), fixed. now return "(nan)" - fixed a bug in multiply when one of arg was a "(nan)", now gives "(nan)" as result
- 2003 March 03. version 0.26 -
**major version** - UserInterface : now use 10 buttons for menu (was 8)
- Fixed a bug rational mode
- New function
`SIN`,`COS`for real number and complex - New implemtation of
`EXP`to works with complexs - New feature : key binding, '
`[`' key open dialog for matrix entry, and '`"`' for string. (us keyboard) - New Feature : drag and drop a file from explorer to put filename on stack
- New Feature : drag and drop a text to put it on stack.
- New Feature : new inline help system with an external file (can be customized by user)
- a lot of bugfixes