-
Notifications
You must be signed in to change notification settings - Fork 3
/
CHANGES.txt
244 lines (176 loc) · 11.2 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
== org.nfunk.* =======================================================
Jul 23 06 rjm - Added methods to VariableFactory to allow a default value to be set.
Jul 16 06 rjm - Reworked interface to EvaluationVisitor.
Jep.getEvaluationVisitor() noew returns a type of EvaluationI.
Constructor now requires a SymbolTable as argument.
Jul 16 06 rjm - Speed up the Power function when power is an integer.
---- 2.4.0 release (Jun 8, 2006) ------------------------------------
Jun 8 06 njf - Revisions to the documentation
Jun 6 06 njf - Added a COPYRIGHT.txt file including copyright and license
information
- Enabled deprecation output while compiling with build.xml
May 26 06 njf - Switched back to JavaCC 3.2 to maintain compatibility with
Java 1.2
May 20 06 rjm - Added a ElementComparative function, changed visability of field
in Comparative.
May 18 06 rjm - Changes to allow the a[5] syntax for access to array elements
- Changed parser to handle the a[5] syntax
- Added an LValueI interface for functions which can be used on
lhs of an asignment,
- Change Assign to work with LValueI.
- Added new OP_ELEMENT to OperatorSet
May 12 06 njf - Changed GraphCanvas to use Java2D anti aliasing for prettier
curve drawing in function plotter applet
Apr 27 06 njf - changed build.xml to rely on setting a JRE instead of a JDK
enviroment variable
- changed build.xml to allow compiling without having a 1.2 JRE
env. var. set (doesn't ensure compatibility to old version then)
Apr 26 06 njf - switched to JavaCC 4.0. Needed to regenerated
JavaCharStream.java.
Mar 11 06 rjm - Added serial version tags where needed
Feb 18 06 njf - removed creative commons references from all source files
Feb 15 06 njf - updated documentation by fixing some broken links and
reapplying the dreamweaver template to all files
- merged new tests from version 2.3.1 into JEPTestExpressions.txt
Jan 06 njf - Created a new branch "v230-patches" on which version 2.3.1
was developed.
Dec 16 05 rjm - Added a checkNumberofParameters method to PostfixMathCommandI,
and a default method to PostfixMathCommand and implementations for necessary functions.
May 02 05 rjm - Added more functionality to NumberFactory.
CreateNumber(double) etc. and getZero() etc.
May 02 05 rjm - Changed error behaviour for addVariable and setVarValue.
These now throw IllegalStateExceptions.
Apr 24 05 rjm - Created a CallbackEvaluationI interface which
replaces SpecialEvaluationI. This facilitates functions
which need access to the node tree.
Apr 01 05 rjm - Variable: Fixed setting validValue for constants.
Passes value to observers on setValue.
Apr 01 05 rjm - SymbolTable can now have observes passed to it.
Added a clearNoConstants method.
Apr 01 05 rjm - Changed behaviour on errors. Removed references to
Error list in EvaluationVisitor. ParseExceptions are thrown instead.
getValueAsObject() traps all errors including RuntimeExceptions.
evaluate() now only throws ParseException.
Apr 01 05 rjm - trapNulls flag in evaluation visitor. Switchable to trap null nulles or not.
Apr 01 05 rjm - Jep copy constructor fixed.
Apr 01 05 rjm - If now works with Numbers
Feb 13 05 rjm - Added binom, conj functions.
Dec 19 njf - figured out documentation linking issues. Leaving docs as they were
before Nov 1 (no frames, javadoc at /doc/javadoc)
Dec 10 rjm - nodeAccept method added to jep.EvaluationVisitor so that it
can be easier for sub classes to use visitor pattern.
- Improved printing facilities for complex numbers.
Nov 6 njf - Merged JEPTester and JEPTest into JEPTest, now in the JUnit framework
Nov 3 rjm - JEP.evaluate() method will throw an exception if this.hasErrors() is true.
Nov 1 njf - changed documentation to frames
- added new FAQ item
Oct 23 njf - added source="1.2" to javac options in build.xml
avoids compile time error with 1.5 compiler by ensuring
1.2 source compatibility
njf - fixed [ 1046349 ] bug in sum()
njf - fixed [ 1051988 ] JEPTester falsely reports "No errors"
njf - improved value comparison and error reporting in JEPTester
njf - reformated Comparative.java, added comments
Oct 22 njf - added simple sum test to JEPTesterExpressions.txt
Oct 4 rjm - Changes the SpecialEvaluationI interface to include a
SymbolTable parameter.
rjm - Added rules to differentiate atan2 removed support for angle
rjm - Doc update for GroupJep, improved consol and unit test or
---- 2.3.0 release (Oct 3, 2004) ------------------------------------
Oct 3 njf - created new features document for the core JEP and moved
appropriate text from DJEP index.html there
njf - changed "jar" and "dist" targets to create a separate djep
jar without examples and test cases, then include both jars
in a jep-djep-2.3.0.zip file
njf - new jjdoc target in build.xml to generate grammar documentation
njf - removed compile.bat and grammardoc.bat
Oct 2 njf - build.xml now creates javadoc using new breakiterator
(gets rid of all the "helpful" output when running javadoc)
njf - added package.html files to package directories
njf - updated details in documentation
njf - documented error handling using hasError() and getErrorInfo()
njf - added 1.2 compatibility checking in build.xml
Oct 1 njf - removed org.lsmp.* from compile in build.xml
njf - commented out addToErrorList("No expression entered"); from
Start() in Parser.jjt
njf - added getTraverse() method
njf - changed @since version names in org.nfunk.* according to:
2.3.0 -> 2.3.0 alpha
2.3.1 -> 2.3.0 beta 1
2.3.2 -> 2.3.0 beta 2
2.3.3 -> 2.3.0 beta 2
2.3.0.1 -> 2.3.0 alpha
---- 2.3.0 beta 2 ---------------------------------------------------
---- 2.3.0 beta 1 ---------------------------------------------------
---- 2.3.0 alpha ----------------------------------------------------
? njf - NumberFactory has been changed to create the number from a String
representation (in order to allow creation of arbitrary precision
numbers without the limitations of double)
Many previous changes not included here. See the documentation for details.
== org.lsmp.* =======================================================
Jul 22 06 rjm - Added routines for multiplying [1,2,3]*[1,2,3] in MRpe
Jul 16 06 rjm - Changes to reflect changes in EvaluationVisitor.
Jul 16 06 rjm - Way NodeFactory treats building a constant node from a function with constant arguments changed.
Jul 16 06 rjm - Above fixes bug with simplifying if(1,2,3). Unit test included.
Jul 16 06 rjm - Speed up calculation of integer powers in rpe and mrpe.
Jul 16 06 rjm - Added support for atan2 and if in rpe and mrpe.
Jul 16 06 rjm - New colsole applications for rpe and mrpe.
Jul 16 06 rjm - Documentation for rpe and mrpe added.
Jul 16 06 rjm - MRpRes now has a doubleValue function for quick access to Scaler values.
Jul 16 06 rjm - MRpCommandList now has method to get the Dimension of the result.
Jul 16 06 rjm - Fixed non critical bug with superflious command being added to command list.
Jul 15 06 rjm - Added methods to rpe to allow quicker setting of variables, new speed test.
Jul 07 06 rjm - Added interegation functions to allow the sjep representation to be interegated.
Jun 14 06 rjm - Fixed bug with multi-arg macro functions.
Jun 14 06 rjm - Added sample application illustrating nested block control stucture.
-- 1.1.0 (Jun 9, 2006) --------------------------------------------
May 20 06 rjm - Fixed bug with differentation visitor. isConstant method returned true for b=a; a=x; when differentiating wrt x.
May 20 06 rjm - Added a ElementComparative function, changed visability of field in Comparative.
May 18 06 rjm - Changes to allow the a[5] syntax for access to array elements
- Created a ArrayAccess function
- Modified OperatorSets
- Print rule for array access in MatrixJep.
Apr 07 06 rjm - Added several functions to allow interegation of command lists
Apr 04 06 rjm - Fixed bug with conversion of (a b)-(c d) to polynomial in sjep.
Mar 11 06 rjm - Added serial version tags where needed
Mar 4 06 rjm - fixed bug in SJep 2x x now correctly simplifies to 3x.
Dec 16 05 rjm - Added implementations of checkNumberOfParameters
for necessary functions.
Dec 08 05 rjm - Added MDivide function
- Fixed bug in MMultiply dividing Tensor by a scaler.
July 28 05 rjm - Added a Define function
- NodeFactory now calls the jep evaluator in buildConstantNode.
- SimplificationVisitor returns now returns null if null is parsed
rather than throwing an error.
- added exp() function to XJep
- added macrocomplex to xjep (Why?)
July 14 05 rjm - Restructured DJep so standard diffrules in DJep rather than DiffVisitor
June 07 05 rjm - Fixed bug in ele which only accepted Double arguments.
May 02 05 rjm - added toBase pfmc and a BaseFormat NumberFormat object.
Apr 24 05 rjm - Reworked junit tests using inheretance.
Apr 24 05 rjm - Simpson and Trapesium functionsa added to XJep.
Apr 03 05 rjm - DifferentationVisitor is now smarter when calculating zero derivatives
- PrintVisitor.getMode(int testmode) added.
Apr 01 05 rjm - MVector, Matrix, Tensor no longer extend number.
Apr 01 05 rjm - Added det(), trace(), vsum(), trans(), getDiag(), diag(), id(),
GenMat, Map function to vectorJep. Need to check diff and matrixJep functionality.
Apr 01 05 rjm - added SpecialPreprocessorI interface for matrixJep functions.
Feb 13 05 rjm - added len() and size() functions
- added Scaler.getInstance() and Vector.getInstance() methods.
Dec 21 rjm - xjep.PrintVisitor can now work with three or more arguments to and *.
Dec 10 rjm - Implemented element by element multiplication in VectorJep
nodeAccept method added to jep.EvaluationVisitor so that it
can be easier for sub classes to use visitor pattern.
- Improved printing facilities for complex numbers.
- xjep.PrintVisitor now allows a NumberFormat object to be specified to control
the printing of double values.
- ExtendedFreeGroup added to GroupJep this allows a limited
use of ^ and / for polynomials. Polynomials can be raised to
positive integer powers and divided by constants.
Oct 4 rjm - Added rules to differentiate atan2 removed support for angle
rjm - Doc update for GroupJep, improved consol and unit test or working with polynomials over the reals (Doubles).
Oct 1 rjm - RewriteRulesI interface added and RewriteVisitor added.
Begining of an improved simplification algorithm.
Sept rjm - added SumType functions equivilent to sigma notation.
-- 1.0.0 (Oct 3rd, 2004) --------------------------------------------
Many previous changes not included here. See the documentation for details.