Daniel Ehrenberg
f536b4c057
Merge branch 'trees'
2007-12-27 20:17:08 -05:00
Daniel Ehrenberg
8a562bc81f
Trees on the assoc protocol
2007-12-27 20:16:55 -05:00
Doug Coleman
c1c9f5eddd
Merge git://spitspat.com/git/factor
2007-12-27 16:39:33 -06:00
Doug Coleman
c6ce216e03
Add ?first .. ?fourth to sequences.lib
2007-12-27 16:38:54 -06:00
Slava Pestov
9c1454ef68
Rename real/imaginary slots of complex to real-part/imaginary-part to avoid clashing with the real class word; fix bug where redefining a generic as a class leaves the word in a weird state
2007-12-27 17:26:39 -05:00
Daniel Ehrenberg
05b76f181f
Extra/trees changes
2007-12-27 13:56:03 -05:00
Samuel Tardieu
caa2a606c2
Use math.primes in project Euler problems
2007-12-27 16:52:19 +01:00
Samuel Tardieu
e17a77f5cd
New module math.primes.factors
2007-12-27 16:52:18 +01:00
Samuel Tardieu
694dd297ad
New module math.primes
2007-12-27 16:52:16 +01:00
Samuel Tardieu
db6dbc5f16
Implement lreduce in lazy-lists
2007-12-27 16:01:28 +01:00
Samuel Tardieu
779f1ba01d
Use related-words in lazy-lists documentation
2007-12-27 16:01:27 +01:00
Samuel Tardieu
3662ed8f0b
Use s> and >s instead of r> and >r to avoid confusion
2007-12-27 15:17:34 +01:00
Slava Pestov
318b5f40c8
Update unit tests to use must-infer
2007-12-26 22:16:14 -05:00
Samuel Tardieu
76c76b81ed
Simplify lazy-append nil? word
...
lazy-append tuples are always built using lappend. If list1 is nil, then
list2 is returned, hence nil? on a lazy-append object is always false.
2007-12-27 03:42:19 +01:00
Slava Pestov
58b2599593
Fix compiler
2007-12-26 21:37:18 -05:00
Samuel Tardieu
0bf5c6bf0f
Simplify lazy-while and lazy-until constructs
2007-12-27 03:36:38 +01:00
Slava Pestov
b810e92456
Move optimizer to extra/
2007-12-26 21:21:12 -05:00
Slava Pestov
f53fa196ac
New must-infer word; \ foo must-infer asserts that foo's declared effect matches its inferred effect, put this in your unit tests
2007-12-26 20:54:38 -05:00
Slava Pestov
612b2bf78c
Removed <uninterned>
2007-12-26 20:41:02 -05:00
Slava Pestov
c5d91d12df
Fix implementation of deferred words
2007-12-26 20:40:46 -05:00
Slava Pestov
2a24567546
Work in progress
2007-12-26 20:21:46 -05:00
Slava Pestov
f624726e8e
Fix bootstrap
2007-12-26 20:21:18 -05:00
Slava Pestov
9de32c7b2d
Remove temporary hack now that new JIT works
2007-12-26 20:20:49 -05:00
Slava Pestov
93e1bdfcd7
Simplify JIT, fix tuples unit tests
2007-12-26 20:02:41 -05:00
Slava Pestov
1b9e04fdc5
Deferred words are now compound words
2007-12-26 17:28:34 -05:00
Slava Pestov
c9a7138b76
Remove unused symbols
2007-12-26 17:17:39 -05:00
Slava Pestov
f91ec96425
Fix code heap compaction and clean up VM a bit
2007-12-26 17:14:33 -05:00
Samuel Tardieu
4eb7aad50b
Use math.algebra to solve project Euler problem 134
2007-12-26 23:08:43 +01:00
Samuel Tardieu
c4529fb557
Add math.algebra module with some useful words.
...
- ext-euclidian implements the extended Euclidian algorithm
- ring-inverse computes an inverse in a Z/nZ ring
- chinese-remainder solves a multi-constraints modular equation
2007-12-26 23:08:15 +01:00
Samuel Tardieu
9f0fb715ab
Factor solution to project Euler problem 134
2007-12-26 21:44:22 +01:00
Samuel Tardieu
aaa4b2a62f
Do not use Eratosthene sieve if n < 1e6 since we have a static primes list
2007-12-26 20:35:35 +01:00
Aaron Schaefer
0dfddab0f6
Remove unnecessarily complicated PE022 solution
2007-12-26 09:06:52 -05:00
Slava Pestov
4bb2a43a10
Early binding JIT work in progress
2007-12-26 02:33:49 -05:00
Aaron Schaefer
994fe7c142
Solution to Project Euler problem 22
2007-12-26 02:25:10 -05:00
Slava Pestov
c09af2f2c6
Improved JIT compiler design; better REGISTER_ROOT/UNREGISTER_ROOT stuff
2007-12-26 01:45:16 -05:00
Slava Pestov
500ec89b56
Remove useless <quotation> word
2007-12-25 23:45:04 -05:00
Slava Pestov
3d784c7927
Simplify quotation calling convention: no need to pass XT
2007-12-25 23:40:36 -05:00
Slava Pestov
423c22e4ef
Symbols are compound defs now; SYMBOL: foo == : foo \ foo ;
2007-12-25 22:55:17 -05:00
Slava Pestov
73053ef230
Add failing unit test
2007-12-25 18:11:56 -05:00
Slava Pestov
32641f04e7
Remove intern-symbol
2007-12-25 18:10:05 -05:00
Aaron Schaefer
2ab01a8f25
Fix amicable-pair? false positives
2007-12-25 15:08:37 -05:00
Daniel Ehrenberg
d5baea215d
Splay tree fixes
2007-12-25 02:28:55 -05:00
Aaron Schaefer
f2cf2bc158
Solution to Project Euler problem 21
2007-12-25 00:13:01 -05:00
Slava Pestov
28d6fec557
Getting compiler unit tests to pass
2007-12-24 21:54:45 -05:00
Aaron Schaefer
5b87577f91
Solution for Project Euler problem 20
2007-12-24 21:54:39 -05:00
Slava Pestov
bbb89af5a6
Get compiler going again, start re-doing redefine tests
2007-12-24 21:41:46 -05:00
Daniel Ehrenberg
2bbf9f3297
Merge branch 'for-slava' of git://www.rfc1149.net/factor
2007-12-24 21:07:50 -05:00
Daniel Ehrenberg
18f85fbaf3
Merge branch 'master' into trees
2007-12-24 21:04:59 -05:00
Slava Pestov
7c75697ff3
Assorted fixes
2007-12-24 20:56:23 -05:00
Daniel Ehrenberg
5917e58c86
Fixed XML bug which made everything stop compiling
2007-12-24 20:48:29 -05:00