Commit Graph

30 Commits

Author SHA1 Message Date
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 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 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 31ca72e534 Add a crude interactive terminal implementation 2017-03-18 16:49:46 -04:00
Mike Cifelli c533b7c1d9 Start experimenting with lanterna 2017-03-17 16:07:25 -04:00
Mike Cifelli e51d275b76 Started added unit tests for the interpreter and main packages 2017-02-26 12:31:27 -05:00
Mike Cifelli b3ae5c9122 Added decorators for output text 2017-02-11 13:33:34 -05:00
Mike Cifelli 1a25ddc35f Refactored the lisp interpreter builder and some error handling 2017-02-09 11:00:23 -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 ea8acd423f Refactored some code and added unit tests 2017-01-18 16:25:09 -05:00
Mike Cifelli a4cb521c7d Introduced global abstractions of input, output, and termination 2017-01-17 13:54:21 -05:00
Mike Cifelli fbd2b3207c Added an argument validator and unit tests 2016-12-19 11:38:14 -05:00
Mike Cifelli 5f2c3dc469 Refactored the interpreter and updated the build file 2016-12-17 10:19:18 -05:00
Mike Cifelli 25c0b5813b Refactored the ErrorManager and added unit tests 2016-12-16 12:31:16 -05:00
Mike Cifelli 7b7556cc65 Started refactoring the sexpression package and cleaned up some unit test code 2016-12-15 11:19:03 -05:00
Mike Cifelli c4e3740dfb Refactored some of the error management code 2016-12-14 14:55:54 -05:00
Mike Cifelli 930c8137df Created a package for s-expressions and continued refactoring the parser 2016-12-14 13:09:41 -05:00
Mike Cifelli c02ef37f64 Added unit tests, refactored some code, and removed IOException references 2016-12-11 15:09:48 -05:00
Mike Cifelli daf35a72fa Refactored and added unit tests for LispFilterInputStream 2016-12-08 10:59:02 -05:00
Mike Cifelli 861d24ac7f Updated the ant build to create the output directory 2016-12-08 10:01:54 -05:00
Mike Cifelli f71a9905da Fixed the ant build's output directory 2016-12-08 09:11:12 -05:00
Mike Cifelli b875727361 Refactored code for eclipse 2016-12-07 16:38:26 -05:00