Mike Cifelli
|
698305f07f
|
Add the backtick facility
Resolves #20
|
2017-03-11 15:41:07 -05:00 |
Mike Cifelli
|
655f49e612
|
Add DEFMACRO special function
Resolves #16
|
2017-03-10 15:08:42 -05:00 |
Mike Cifelli
|
16b9a4dd30
|
Add a simple GENSYM function
Resolves #18
|
2017-03-10 13:19:09 -05:00 |
Mike Cifelli
|
e78e18df98
|
Add a simple GENSYM function
|
2017-03-10 13:14:16 -05:00 |
Mike Cifelli
|
87eb0204f5
|
Remove SETF function
|
2017-03-07 16:41:26 -05:00 |
Mike Cifelli
|
736e230de9
|
Add LET* special function
|
2017-03-07 13:26:24 -05:00 |
Mike Cifelli
|
d1060a8aad
|
Add aliases for several functions
|
2017-03-07 13:15:40 -05:00 |
Mike Cifelli
|
5f10396af8
|
Use function alias in validation messages
Resolves #9
|
2017-03-07 10:59:51 -05:00 |
Mike Cifelli
|
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 |
Mike Cifelli
|
aa13394548
|
Add ability to run acceptance tests on files
|
2017-03-06 12:44:06 -05:00 |
Mike Cifelli
|
8a719c8e44
|
Add unit test for LOAD
|
2017-03-05 10:41:49 -05:00 |
Mike Cifelli
|
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 |
Mike Cifelli
|
946af24514
|
Minor cleanup of LIST
|
2017-03-03 15:57:16 -05:00 |
Mike Cifelli
|
311a3b4036
|
Cleaned up code and tests
|
2017-03-03 15:06:49 -05:00 |
Mike Cifelli
|
503b19a5e1
|
Resolves #14 - Load now keeps track of directories
|
2017-03-03 12:56:06 -05:00 |
Mike Cifelli
|
0eb8db36a8
|
Acceptance tests now run with JUnit
|
2017-03-02 15:26:21 -05:00 |
Mike Cifelli
|
d55ebdd22f
|
Resolves #13 - Exclusion based on type in ArgumentValidator
|
2017-03-02 11:39:07 -05:00 |
Mike Cifelli
|
ef4c03a672
|
Expanded dlambda example
|
2017-03-02 10:29:59 -05:00 |
Mike Cifelli
|
2bd0c1a674
|
Major Refactor - Static constants and test case names
|
2017-03-02 09:54:23 -05:00 |
Mike Cifelli
|
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 |
Mike Cifelli
|
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 |
Mike Cifelli
|
ab17d4c60e
|
Static method in SET has been refactored
|
2017-02-28 15:04:40 -05:00 |
Mike Cifelli
|
05f75b627b
|
Resolves #11 - The CASE special function has been added
Refactored some unit tests
|
2017-02-28 15:01:05 -05:00 |
Mike Cifelli
|
544df91c27
|
Simplified the EQUAL function logic
|
2017-02-28 12:26:18 -05:00 |
Mike Cifelli
|
d2dfe23083
|
Resolves #10 - The equality predicates have been refactored
|
2017-02-28 11:54:19 -05:00 |
Mike Cifelli
|
50a3f3be67
|
Resolves #6 - PROGN Special Function (Form)
|
2017-02-27 15:36:17 -05:00 |
Mike Cifelli
|
5129f6c17b
|
Minor cleanup in SYMBOL-FUNCTION
|
2017-02-27 14:54:31 -05:00 |
Mike Cifelli
|
d3e3f52e59
|
Altered SYMBOL-FUNCTION behavior and cleaned up some code
|
2017-02-27 14:10:20 -05:00 |
Mike Cifelli
|
bf40feadec
|
User defined functions now set up their scope correctly
|
2017-02-27 12:00:24 -05:00 |
Mike Cifelli
|
462e5ea15e
|
Built-in function names are now defined through annotations
|
2017-02-26 16:47:06 -05:00 |
Mike Cifelli
|
8fdaaeb23d
|
Removed duplicate code in SET and SETF
|
2017-02-26 13:01:47 -05:00 |
Mike Cifelli
|
78c7bf4d9c
|
Added DEFINE-MACRO for user defined special functions (forms)
|
2017-02-25 19:11:31 -05:00 |
Mike Cifelli
|
4f4bc8f71a
|
Added special functions (forms) and refactored internal s-expression predicates
|
2017-02-25 17:29:37 -05:00 |
Mike Cifelli
|
b9466d2c5d
|
Cleaned up a parameter name
|
2017-02-24 16:09:54 -05:00 |
Mike Cifelli
|
c83db3721c
|
Finished changing car/cdr to first/rest in the code
|
2017-02-24 16:00:05 -05:00 |
Mike Cifelli
|
0855789fde
|
Started changing car/cdr to first/rest, modified acceptance test fixture
|
2017-02-24 11:07:06 -05:00 |
Mike Cifelli
|
013707e11a
|
Static import of 'eval'
|
2017-02-21 13:59:56 -05:00 |
Mike Cifelli
|
0c3d3ae024
|
Resolves #1 - Added the IF Special Form
|
2017-02-21 12:35:47 -05:00 |
Mike Cifelli
|
6fa132313d
|
Refactored error severity
|
2017-02-11 10:42:07 -05:00 |
Mike Cifelli
|
bdcb2227c9
|
Removed RuntimeExceptions and associated logic
|
2017-02-09 12:09:51 -05:00 |
Mike Cifelli
|
1a25ddc35f
|
Refactored the lisp interpreter builder and some error handling
|
2017-02-09 11:00:23 -05:00 |
Mike Cifelli
|
b6d717ec1c
|
Formatted several files
|
2017-02-06 13:43:27 -05:00 |
Mike Cifelli
|
913fd031c6
|
Only allow a single interpreter to be built
Renamed Environment to RuntimeEnvironment
|
2017-02-06 13:39:05 -05:00 |
Mike Cifelli
|
c2a373dc85
|
Added the following built-ins: AND & OR
|
2017-02-05 16:00:56 -05:00 |
Mike Cifelli
|
a9a47be6cd
|
Allow DEFUN and LAMBDA with an empty body
|
2017-02-04 15:38:47 -05:00 |
Mike Cifelli
|
0a5228d5a7
|
Update argument validation and added unit tests
Fixed some bugs in LET and LAMBDA
Refactored the code in UserDefinedFunction
|
2017-02-04 13:51:10 -05:00 |
Mike Cifelli
|
d7ca5d09da
|
Added unit tests and refactored the let form
Wrote a lisp program to calculate the number of bi-weekly paydays in a year
|
2017-02-04 12:03:31 -05:00 |
Mike Cifelli
|
db2817f7be
|
Refactored the symbol table code
|
2017-01-30 16:12:38 -05:00 |
Mike Cifelli
|
d3fc8f9812
|
Refactored the function table logic
|
2017-01-29 14:33:46 -05:00 |
Mike Cifelli
|
5351168763
|
Started refactoring UserDefinedFunction
|
2017-01-27 16:19:09 -05:00 |