Mike Cifelli
63fd890ac6
Add history feature to the terminal
...
The history is accessed through the up/down arrow keys.
Resolves #8
2017-04-04 15:37:57 -04:00
Mike Cifelli
243f8a83ac
Add terminal history class
2017-04-04 07:56:35 -04:00
Mike Cifelli
2de2e3947a
Increase test coverage
...
Fixed an intermittent deadlock in MainTest:
FlushListener could receive more than the expected number of flushes
before the VirtualTerminalInteractor was given control. So by setting
the flush count to zero in waitForFlushes(), flushes could be lost. Now
it only reduces the number of flushes by the expected number.
2017-03-24 11:53:33 -04:00
Mike Cifelli
a8620307c9
Clean up code
2017-03-24 09:36:44 -04:00
Mike Cifelli
eb82a25f64
Increase test coverage
2017-03-24 09:29:19 -04:00
Mike Cifelli
111dd06d6f
Add unit tests
2017-03-23 18:48:37 -04:00
Mike Cifelli
52762a6152
Add and refactor unit tests
2017-03-23 16:14:26 -04:00
Mike Cifelli
23dd1c0654
Increase test coverage and refactor code
2017-03-23 12:14:44 -04:00
Mike Cifelli
79fb8b633b
Fix output interfering with input
...
Refactored some code
2017-03-22 15:26:00 -04:00
Mike Cifelli
228b4b1793
Refactor stream code and add unit tests
2017-03-22 14:08:22 -04:00
Mike Cifelli
b298e118e3
Add colors to the interactive interpreter
2017-03-22 11:26:53 -04:00
Mike Cifelli
058e937c3e
Refactor main interpreter code
...
Fixed several minor issues
Only print the last value when interpreting a file
Resolves #4
2017-03-21 15:03:16 -04:00
Mike Cifelli
5cb6212d2a
Fix terminal resize issues
2017-03-21 12:07:22 -04:00
Mike Cifelli
a8eff1ad70
Clean up terminal code
2017-03-21 09:25:40 -04:00
Mike Cifelli
fc96894d14
Fix text insertion at the end of the buffer
2017-03-20 16:20:28 -04:00
Mike Cifelli
38710e21bf
Improve terminal performance
2017-03-20 11:18:36 -04:00
Mike Cifelli
cef7be6c25
Add comments to broken code
2017-03-19 17:32:44 -04:00
Mike Cifelli
ad173d06a9
Fix issues when input pushes past end of buffer
...
A few issues still remain:
- Inserting text pushes the remainder of the input to a new line
at the end of the buffer.
- Resizing the terminal height causes numerous issues.
2017-03-19 17:17:34 -04:00
Mike Cifelli
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
Mike Cifelli
072a432026
Hide cursor when printing output
2017-03-18 16:55:35 -04:00
Mike Cifelli
31ca72e534
Add a crude interactive terminal implementation
2017-03-18 16:49:46 -04:00
Mike Cifelli
462673ba64
Add line wrapping support to the terminal
2017-03-17 19:40:56 -04:00
Mike Cifelli
ac349c94cb
Fix problems with FitNesse
2017-03-17 16:17:44 -04:00
Mike Cifelli
c533b7c1d9
Start experimenting with lanterna
2017-03-17 16:07:25 -04:00
Mike Cifelli
0388f71a8b
Add lanterna to the project
2017-03-15 13:52:20 -04:00
Mike Cifelli
a86832f9cb
Switch from ant to maven
2017-03-15 13:37:39 -04:00
Mike Cifelli
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
Mike Cifelli
b2d6f21f88
Add tests for macros
2017-03-13 10:15:05 -04:00
Mike Cifelli
f2a481952d
Add @Override annotations and clean up code
2017-03-13 09:58:30 -04:00
Mike Cifelli
c2d722d5ab
Fix nested comma handling in a backquote
2017-03-12 14:18:37 -04:00
Mike Cifelli
e89a6f2dde
Add unit tests for the backquote facility
...
Renamed BackTick to Backquote globally.
2017-03-12 12:19:45 -04:00
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
8aa00fea27
Add a dynamic data structure example
2017-03-09 14:14:54 -05:00
Mike Cifelli
d423fe9958
Convert the lisp unit tester into a class
2017-03-09 11:19:15 -05:00
Mike Cifelli
b47abbaad5
Give assert a better failure message
2017-03-08 14:48:40 -05:00
Mike Cifelli
c596d6868d
Refactor some lisp code and tests
2017-03-08 11:14:44 -05:00
Mike Cifelli
87eb0204f5
Remove SETF function
2017-03-07 16:41:26 -05:00
Mike Cifelli
6cf45219f1
Refactor some lisp code
2017-03-07 16:27:11 -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
e9fead08c2
Add function to interest-compounder
2017-03-07 11:37:27 -05:00
Mike Cifelli
5f10396af8
Use function alias in validation messages
...
Resolves #9
2017-03-07 10:59:51 -05:00
Mike Cifelli
368f22a02b
Rename the project
2017-03-07 10:20:22 -05:00
Mike Cifelli
9e15d55b4c
README.md edited online with Bitbucket
2017-03-07 14:57:13 +00:00
Mike Cifelli
31105b4299
README.md edited online with Bitbucket
2017-03-07 14:56:36 +00:00
Mike Cifelli
1acfad31ca
README.md edited online with Bitbucket
2017-03-07 13:47:05 +00: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