1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-12-25 08:42:40 -08:00
Commit Graph

170 Commits

Author SHA1 Message Date
Arthur Drobot
f68f184945 Separate power and factorial calculations to fix large precision loss in exp. 2017-07-31 22:56:55 -07:00
Arthur Drobot
87f98228d0 Remove unused code and functions in StandardPlugin. 2017-07-31 14:53:41 -07:00
Arthur Drobot
68155446b6 Rewrite exp. (Now works faster.) Add private factorial function to StandardPlugin as well. 2017-07-31 14:49:25 -07:00
Arthur Drobot
afb57cf69b Add ceiling to NumberInterface and the two numbers that implement it. 2017-07-31 13:25:23 -07:00
Arthur Drobot
9a6b695f97 Merge branch 'master' of https://github.com/DanilaFe/abacus 2017-07-31 12:40:19 -07:00
Arthur Drobot
0172b178de Optimize log. 2017-07-31 12:39:56 -07:00
2aa479a971 Merge branch 'master' of github.com:DanilaFe/abacus 2017-07-31 11:54:25 -07:00
Arthur Drobot
5bb7c1dc6b Fix comment. 2017-07-31 10:28:39 -07:00
cb787c7e25 Focus on the text field on startup. 2017-07-30 21:25:21 -07:00
f400f9f464 Add comments to the newly defined static functions. 2017-07-30 21:15:01 -07:00
e7ad733c81 Move OP_CARET back into place. 2017-07-30 21:12:50 -07:00
a278e5bb9a Format code. 2017-07-30 21:11:32 -07:00
03eb669eb3 Move all functions to a static context, stopping unnecessary lookups. 2017-07-30 21:10:11 -07:00
6b8d8497e2 Write tests involving plugin loading, and generalize token testing code. 2017-07-30 19:21:26 -07:00
b35d3a3cd4 Remove the window as a part of the Abacus class. 2017-07-30 15:00:08 -07:00
5e8afd54e0 Add some comments. 2017-07-30 14:59:20 -07:00
b553c05f49 Write basic tokenizer tests. 2017-07-30 14:52:10 -07:00
127644ea46 Remove abacus dependency from PluginManager. 2017-07-30 14:42:06 -07:00
1c31efa577 Write more tests for the Lexer. 2017-07-30 14:12:17 -07:00
0f21526ec8 Write tests for special cases. 2017-07-30 00:46:42 -07:00
f28f56b5f0 Write basic tests for string matching. 2017-07-29 23:48:01 -07:00
bce469ec8d Move the source files into a new default directory. 2017-07-29 23:44:21 -07:00
92443bf0cf Merge branch 'new-parser-prep' into unit-tests 2017-07-29 23:42:23 -07:00
c21aabc7ed Create empty class, getting ready to write tests. 2017-07-29 21:49:36 -07:00
6337c74e63 Replace the old TreeBuilder with the new TreeBuilder. 2017-07-29 21:37:55 -07:00
e61e2b07b2 Implement a LexerTokenizer and a ShuntingYard parser.
These are basically two pieces of the old TreeBuilder, but decoupled
and reimplemented conventionally.
2017-07-29 21:37:32 -07:00
dcbda5b255 Add comments to the two parsing interfaces. 2017-07-29 21:36:39 -07:00
65e8b7d15e Change matches to store the string they matched. 2017-07-29 21:20:11 -07:00
7b1b9aa01c Implement the components of a new tree builder. 2017-07-29 21:02:41 -07:00
768b9b0e8f Remove precision specification as it seems detrimental. 2017-07-28 22:51:59 -07:00
c66f36c77a Allow plugins to register number implementations and use user's choice. 2017-07-28 22:17:22 -07:00
28b9e15fc8 Add configuration object to Abacus. 2017-07-28 21:37:47 -07:00
451931da6c Merge branch 'configuration' into architecture 2017-07-28 21:31:45 -07:00
a16e85dfcd Rewrite Abacus to be the central class of the application. 2017-07-28 21:25:02 -07:00
90f04a20ad Change precision to getMaxPrecision, as precision can be configured. 2017-07-28 20:04:13 -07:00
a0bc85a899 Create a ConfigurationObject class. 2017-07-28 20:03:50 -07:00
a63a3b6bae Make ClassFinder return generic List objects. 2017-07-28 19:36:34 -07:00
0300bece46 Load default plugin without jars. 2017-07-28 15:22:38 -07:00
ce9e32b08f Add a toString for UnaryPrefixNode 2017-07-28 14:57:11 -07:00
f4508a8c5a Remove unused default value from PreciseNumber 2017-07-28 14:55:01 -07:00
eac4ce8600 Change the constructor for NumberNode 2017-07-28 14:47:34 -07:00
9e3b550a15 Add a promotion priority to PerciseNumber 2017-07-28 14:39:37 -07:00
6aa9225eee Comment class finder. 2017-07-28 14:32:27 -07:00
0592200961 Change ClassFinder code to be static. 2017-07-28 14:21:43 -07:00
5a8e13fbef Merge branch 'unary' 2017-07-28 13:28:59 -07:00
317c214ef3 Merge branch 'big-decimal' 2017-07-28 13:18:44 -07:00
Arthur Drobot
851c63115f Implement preciseNumber for arbitrary precision. 2017-07-28 11:38:22 -07:00
701de050fd Remove old ClassFinder and hardcoded folder names, and fix class filter. 2017-07-28 11:35:23 -07:00
53065f8374 Remove unneeded files from git. 2017-07-28 11:23:25 -07:00
2fa51fc997 Fix null pointer exceptions associated with turning ! into an operator. 2017-07-28 11:19:41 -07:00