David A. Wheeler
4b7920dcff
tests/full-test-cl: Tweak so Windows SBCL works
2015-01-04 09:22:50 -05:00
David A. Wheeler
04eaf2eb74
Enable Common Lisp testing with either sbcl or clisp (prefer sbcl)
2015-01-03 21:38:32 -05:00
David A. Wheeler
328c51ca9b
Expose *original-readtable* in Common Lisp interface, and use in tests.
2014-12-09 23:00:45 -05:00
David A. Wheeler
bed60b82e5
Begin switching Common Lisp tests to use lowercase + :invert
2014-12-08 23:09:26 -05:00
David A. Wheeler
2b4c59967a
Update correct test results for math.slisp
2014-11-13 18:32:44 -05:00
David A. Wheeler
a0c3cfc663
math.slisp: Various improvements. Add abs(), shorten rewrite-match-pattern
2014-11-13 18:31:34 -05:00
David A. Wheeler
07294e9bec
math.slisp: Memoize the primary simplification routine.
2014-11-11 18:36:55 -05:00
David A. Wheeler
ade251f005
Simplify if(if...)) and shorten some "or" and "and" rules
2014-11-11 12:10:36 -05:00
David A. Wheeler
9dda114cc9
math.slisp: Simplify division by negative number or sqrt(-1).
2014-11-10 19:17:02 -05:00
David A. Wheeler
2e69e7386f
math.slisp: Add rule for 1/(a/b) and derivative of tangent.
2014-11-10 18:46:25 -05:00
David A. Wheeler
559b3b9ef9
math.slisp: Improve simplification for multiple arguments of "-"
2014-11-10 18:26:31 -05:00
David A. Wheeler
7d288d6591
math.slisp: Improve patterns, in particular, flatten *-in-* and +-in-+
2014-11-10 18:10:40 -05:00
David A. Wheeler
b1d5717d5f
math.slisp: More simplification rules, e.g., more complex or, ->, log.
2014-11-09 22:38:50 -05:00
David A. Wheeler
758346f9c8
math.slisp: Add basic distribution rule
2014-11-09 21:02:30 -05:00
David A. Wheeler
118734df1d
math.slisp: Add simplification rules for = and <>, tweak + in + and * in *.
2014-11-09 17:11:25 -05:00
David A. Wheeler
7cd48339b7
math.slisp: General + and - order, add derivative rules for cos, sin, log.
2014-11-09 15:17:45 -05:00
David A. Wheeler
3f5914d5d2
math.slisp: Generalize derivative power rule.
2014-11-09 14:24:52 -05:00
David A. Wheeler
0da09d06c0
math.slisp: Change notation (d expr / d var) to deriv(expr var) - cleaner.
2014-11-09 14:05:03 -05:00
David A. Wheeler
f8519c7539
Division by self is 1, UNLESS self can be 0; cover both cases
2014-11-08 11:30:42 -05:00
David A. Wheeler
4dbe370fe8
math.slisp: Add power rule
2014-11-08 11:21:15 -05:00
David A. Wheeler
05448e2d3a
math.slisp: Improve derivative calculation and +/* ordering
2014-11-08 11:10:54 -05:00
David A. Wheeler
cd76bade1b
Update tests for math.slisp - division can return if(...).
2014-11-08 07:36:20 -05:00
David A. Wheeler
dc758b448a
Modify Common Lisp test to check that *(4 5) works correctly.
2014-11-07 17:28:33 -05:00
David A. Wheeler
cc4c5fee79
Test comparisons and correct bugs found
2014-11-05 00:11:50 -05:00
David A. Wheeler
cddac69cce
Add math test cases, fix some bugs they reveal
2014-11-05 00:05:35 -05:00
David A. Wheeler
f154649912
math.slisp: Simplify if >1 number in mixed * or + expression
2014-11-02 19:26:36 -05:00
David A. Wheeler
48f40f25fc
Expand test suite for math.slisp
2014-11-02 18:54:19 -05:00
David A. Wheeler
8e64af1e4b
Add simple test suite for math.slisp.
2014-11-02 18:28:12 -05:00
David A. Wheeler
b453a969eb
Extend Common Lisp test suite to test writing routines
2014-10-15 18:29:19 -04:00
David A. Wheeler
95d351700a
On line continuation allow further indents
2014-07-05 21:52:37 -04:00
David A. Wheeler
0e46078dc5
sweet.lisp: Improve local extension (\\ as line continuation)
...
- Modify so that singletons in later lines work as expected.
2014-07-05 10:37:51 -04:00
David A. Wheeler
d07487b2d7
src/kernel.scm: Improve local extension (\\ as line continuation)
2014-07-05 10:21:52 -04:00
David A. Wheeler
5a5b149e2e
Add local extension (\\ as line-continuation) for Common Lisp compatibility
...
- As a local extension, allow \\ as line-continuation for
compatibility with the Common Lisp implementation.
This is *NOT* a SRFI-110 requirement.
2014-07-04 11:27:06 -04:00
David A. Wheeler
8cf53c269f
tests/fact9: #! requires env to use PATH on some systems
2014-06-30 18:18:58 -04:00
David A. Wheeler
a3b158018b
Modify sweet-run so it returns exit code, add test of sweet-run
2014-06-14 17:56:45 -04:00
David A. Wheeler
010abae29d
Improve Scheme error reporting when given "Unexpected text after n-expression"
...
- Now we report the next (peeked) character when we have
unexpected text. This should make it easier for developers to figure
out what the problem is.
2013-12-06 23:14:38 -05:00
David A. Wheeler
9cdee3cd60
Add tests for numeric fraction
...
- In both Common Lisp and guile scheme you can enter numeric
fractions, such as "{11/13 + 7/8}".
Evaluation will produce 179/104. Test this.
2013-08-19 18:44:12 -04:00
David A. Wheeler
c01a16df88
Add test for invalid character name
2013-08-07 08:11:02 -04:00
David A. Wheeler
deee737f59
Modify Scheme tests to test error messages (make sure it detects errors!)
2013-08-06 18:24:02 -04:00
David A. Wheeler
a6b0b6f207
Add Scheme tests for initial-indent with unspaced scomments
2013-08-01 12:12:38 -04:00
David A. Wheeler
f8e914ead9
src/kernel.scm: Fix handling datum-commentw inside initial indent.
2013-08-01 08:20:21 -04:00
David A. Wheeler
bfaa8e4308
tests/full-test-cl: Add some Common Lisp collecting list + #;+ws tests
2013-07-31 01:02:01 -04:00
David A. Wheeler
7d1b144278
tests/sweet-testsuite: Add more #; + collecting list tests
2013-07-31 00:40:03 -04:00
David A. Wheeler
3703cd5a59
Fix subtle bug in <* #;+whitespace sequence implementation.
2013-07-30 23:45:20 -04:00
David A. Wheeler
f7532d4057
Grammar tweak: Permit GROUP-SPLIT EOL DEDENT
...
- Previously, GROUP-SPLIT EOL DEDENT wasn't allowed, since there
was no way to return an "empty" value. Now that we CAN return
an empty value, there's no particular reason to forbid it.
- This changes the grammar and implementations, simplifying them slightly.
2013-07-30 20:07:36 -04:00
David A. Wheeler
9c90d39f1c
tests/sweet-testsuite: Add another test for collecting lists
2013-07-30 01:18:06 -04:00
David A. Wheeler
f4358d9600
tests/sweet-testsuite: Add tests for leading "!"
2013-07-29 18:23:32 -04:00
David A. Wheeler
a21a329069
Change Common Lisp "hspaces" implementation to use loop, not tail recursion.
...
- The Common Lisp specification doesn't guarantee that tail recursion
will be optimized. This rewrites the "hspaces" implementation to
use a direct "loop" instead, for efficiency, and adds a test
to check it.
2013-07-28 18:48:55 -04:00
David A. Wheeler
9f195fc67c
Modify Scheme implementation to use modified "ignorable" grammar
2013-07-27 20:33:35 -04:00
David A. Wheeler
e68d6dbc43
tests/full-test-cl: Add "empty body" test of #;+whitespace
2013-07-26 10:32:20 -04:00