Commit Graph

121 Commits

Author SHA1 Message Date
38ab1144fb Clean up terminal code and unit tests
The terminal unit tests were updated so that they don't rely on an
arbitrary delay.
2017-03-19 12:54:35 -04:00
31ca72e534 Add a crude interactive terminal implementation 2017-03-18 16:49:46 -04:00
a86832f9cb Switch from ant to maven 2017-03-15 13:37:39 -04:00
a21114ac7c Add a GENSYM-EQUAL function for unit testing macros
Some macro definitions were refactored along with their associated
unit tests.
2017-03-13 14:43:31 -04:00
b2d6f21f88 Add tests for macros 2017-03-13 10:15:05 -04:00
f2a481952d Add @Override annotations and clean up code 2017-03-13 09:58:30 -04:00
c2d722d5ab Fix nested comma handling in a backquote 2017-03-12 14:18:37 -04:00
e89a6f2dde Add unit tests for the backquote facility
Renamed BackTick to Backquote globally.
2017-03-12 12:19:45 -04:00
698305f07f Add the backtick facility
Resolves #20
2017-03-11 15:41:07 -05:00
655f49e612 Add DEFMACRO special function
Resolves #16
2017-03-10 15:08:42 -05:00
e78e18df98 Add a simple GENSYM function 2017-03-10 13:14:16 -05:00
87eb0204f5 Remove SETF function 2017-03-07 16:41:26 -05:00
736e230de9 Add LET* special function 2017-03-07 13:26:24 -05:00
d1060a8aad Add aliases for several functions 2017-03-07 13:15:40 -05:00
5f10396af8 Use function alias in validation messages
Resolves #9
2017-03-07 10:59:51 -05:00
368f22a02b Rename the project 2017-03-07 10:20:22 -05:00
77a341a1a7 Add more advanced lisp objects
Added a class to compute compound interest.

An alias for FUNCALL has been added: CALL

Refactored some acceptance tests to load code from files.
2017-03-06 16:52:06 -05:00
aa13394548 Add ability to run acceptance tests on files 2017-03-06 12:44:06 -05:00
8a719c8e44 Add unit test for LOAD 2017-03-05 10:41:49 -05:00
04cb46e94d Store the base directory for an interpreted files
A bug was resolved where some functions were getting a null
ErrorManager.

A reset funtion was added to RuntimeEnvironment.

Resolves #15
2017-03-05 10:20:31 -05:00
311a3b4036 Cleaned up code and tests 2017-03-03 15:06:49 -05:00
503b19a5e1 Resolves #14 - Load now keeps track of directories 2017-03-03 12:56:06 -05:00
ba53448c9d Exception checking unit tests were refactored 2017-03-03 12:07:23 -05:00
86def27f5c Acceptance tests have been refactored 2017-03-02 16:36:23 -05:00
0eb8db36a8 Acceptance tests now run with JUnit 2017-03-02 15:26:21 -05:00
d55ebdd22f Resolves #13 - Exclusion based on type in ArgumentValidator 2017-03-02 11:39:07 -05:00
2bd0c1a674 Major Refactor - Static constants and test case names 2017-03-02 09:54:23 -05:00
ba203d34b9 dlambda was converted for multiple method classes
Added several unit tests, including a failing one for CASE
Added an acceptance test for dlambda
2017-03-01 16:33:06 -05:00
64e18fe076 Resolves #12 - &rest keyword added to lambda lists
Added unit tests and cleaned up some code
The setup for acceptance tests now cleans up the environment
2017-03-01 11:11:59 -05:00
42191ec69d Parts of CASE and COND were refactored
Updated the terminology used in the code
Added test cases
Changed the format of error/warning messages
2017-02-28 16:16:43 -05:00
4253145383 A few test cases were added for CASE 2017-02-28 15:07:37 -05:00
05f75b627b Resolves #11 - The CASE special function has been added
Refactored some unit tests
2017-02-28 15:01:05 -05:00
d2dfe23083 Resolves #10 - The equality predicates have been refactored 2017-02-28 11:54:19 -05:00
50a3f3be67 Resolves #6 - PROGN Special Function (Form) 2017-02-27 15:36:17 -05:00
d3e3f52e59 Altered SYMBOL-FUNCTION behavior and cleaned up some code 2017-02-27 14:10:20 -05:00
2ef285e45c Added a few extra unit tests for number prefixes 2017-02-27 13:37:56 -05:00
fb35884479 Resolves #7 - Allow prefixing of numbers 2017-02-27 13:34:04 -05:00
bf40feadec User defined functions now set up their scope correctly 2017-02-27 12:00:24 -05:00
462e5ea15e Built-in function names are now defined through annotations 2017-02-26 16:47:06 -05:00
49e145d098 Cleaned up some code 2017-02-26 12:39:08 -05:00
e51d275b76 Started added unit tests for the interpreter and main packages 2017-02-26 12:31:27 -05:00
1fed0433e5 Formatted a source file 2017-02-25 19:12:34 -05:00
78c7bf4d9c Added DEFINE-MACRO for user defined special functions (forms) 2017-02-25 19:11:31 -05:00
4f4bc8f71a Added special functions (forms) and refactored internal s-expression predicates 2017-02-25 17:29:37 -05:00
c83db3721c Finished changing car/cdr to first/rest in the code 2017-02-24 16:00:05 -05:00
0855789fde Started changing car/cdr to first/rest, modified acceptance test fixture 2017-02-24 11:07:06 -05:00
013707e11a Static import of 'eval' 2017-02-21 13:59:56 -05:00
0c3d3ae024 Resolves #1 - Added the IF Special Form 2017-02-21 12:35:47 -05:00
ea57fc8bae Added unit tests for RuntimeEnvironment 2017-02-14 14:28:47 -05:00
b3ae5c9122 Added decorators for output text 2017-02-11 13:33:34 -05:00