Commit graph

424 commits

Author SHA1 Message Date
Simon Cruanes
90239f2c3e CCArray.Sub.of_slice; bugfix in reverse_in_place 2014-06-15 19:35:47 +02:00
Simon Cruanes
4d2fa4ea4c small bugfix in CCArray.Sub: bound checking 2014-06-15 19:13:42 +02:00
Simon Cruanes
9a9954c420 Array.Sub: slice implementation 2014-06-15 18:58:32 +02:00
Simon Cruanes
e2bb0e93cb CCArray.find 2014-06-14 14:30:15 +02:00
Simon Cruanes
4c69e8216c CCError for functional error handling 2014-06-14 13:52:50 +02:00
Simon Cruanes
bb12ed932c much better error handling in CCLinq 2014-06-14 13:51:50 +02:00
Simon Cruanes
c021a2b310 map, set, and IO/string adapters for CCLinq;
also a lazy constructor
2014-06-14 12:09:07 +02:00
Simon Cruanes
4550a1c2c2 cleaner system to specify hash/eq/cmp for operations in CCLinq;
use Map to implement most binary operations, including join
2014-06-14 02:16:49 +02:00
Simon Cruanes
2492ee48a6 small change in CCOrd 2014-06-14 02:16:14 +02:00
Simon Cruanes
e3bde40598 more operators in CCKlist 2014-06-14 01:01:40 +02:00
Simon Cruanes
174957e604 more reasonable increase in size in CCVector 2014-06-14 01:01:22 +02:00
Simon Cruanes
4579213e63 some small additions 2014-06-14 00:23:09 +02:00
Simon Cruanes
65aceba85e phantom types for CCVector, for read-write and read-only vectors 2014-06-14 00:11:16 +02:00
Simon Cruanes
043003cf3b big refactoring of CCVector, to fit the recent coding style;
safe functions with _exn versions, iterators, printers, comparison
and other monadic operators
2014-06-13 23:51:34 +02:00
Simon Cruanes
e7dbdeff2e added zippers to CCList 2014-06-13 22:33:17 +02:00
Simon Cruanes
56fe3b0873 remove Qcheck (it has had its own repo for a long time) 2014-06-13 22:30:41 +02:00
Simon Cruanes
71bdc7667d gen interface in leftistheap 2014-06-13 21:57:47 +02:00
Simon Cruanes
89f4500fc2 updated CCLefistheap (more functions) 2014-06-13 21:51:38 +02:00
Simon Cruanes
d368931f70 CCOpt infix map 2014-06-13 17:56:32 +02:00
Simon Cruanes
933638244d more combinators for comparisons 2014-06-13 15:56:28 +02:00
Simon Cruanes
e9e861479c basic combinators for ordering (including lexico combination) 2014-06-13 15:08:27 +02:00
Simon Cruanes
86cd5c0e8d group_by now uses lists; a few more utils 2014-06-13 00:54:51 +02:00
Simon Cruanes
6ec499799c a few helpers + 1 example 2014-06-13 00:21:53 +02:00
Simon Cruanes
0d39bfdbf4 more optimizations, and a big chunk of query evaluation in CCLinq 2014-06-12 23:55:26 +02:00
Simon Cruanes
17930cf119 CCLinq: powerful interface for querying containers (work in progress) 2014-06-12 21:03:22 +02:00
Simon Cruanes
730f99de70 fix benchmark broken by Drup;
fix some small issues;
add CCBatch.extern combinator for arbitrary computations (that wont be optimized)
2014-06-12 11:56:57 +02:00
Simon Cruanes
8b2f5deb14 bugfix in CCArray 2014-06-12 11:56:13 +02:00
Simon Cruanes
2a27ebdf6d Merge pull request #4 from Drup/master
Change the representation of optimized list of operation and add folding.
2014-06-12 10:59:47 +02:00
Drup
7f3a33a78d Change the representation of optimized list of operation and add folding. 2014-06-12 02:58:43 +02:00
Simon Cruanes
fc3b6040f6 benchmark for CCBatch on list, array, and klist 2014-06-11 23:27:37 +02:00
Simon Cruanes
ee72934864 more operations on collections;
optimization level as a parameter in CCBatch
2014-06-11 23:27:21 +02:00
Simon Cruanes
80522a4959 expose the optimization to the user in CCBatch 2014-06-11 22:26:02 +02:00
Simon Cruanes
40f8955b34 updated CCBatch (more optimizations and type-safety,
enforcing some structural constraints with GADT)
2014-06-11 22:21:29 +02:00
Simon Cruanes
5567b12b79 CCBatch: batch operations on collections, with some fusion optimizations
to reduce the numbre of intermediate collections
2014-06-11 21:57:54 +02:00
Simon Cruanes
d7909200f6 operations on arrays (filter, filter_map, flat_map) 2014-06-11 21:54:20 +02:00
Simon Cruanes
bc40893166 CCList.filter 2014-06-11 21:54:01 +02:00
Simon Cruanes
021508968c updated test in parseReact; fixed a bug 2014-06-11 21:53:47 +02:00
Simon Cruanes
39f5e135bd crazy input-driven parser combinators 2014-06-11 00:47:53 +02:00
Simon Cruanes
9ca1f76bd7 more explicit type declaration 2014-06-09 18:10:53 +02:00
Simon Cruanes
b5fb3f0ff0 printing error in LazyGraph 2014-06-03 17:33:11 +02:00
Simon Cruanes
945325054f more functions for CCOpt 2014-06-03 17:03:34 +02:00
Simon Cruanes
fd88f10216 safe version of fold_right 2014-05-31 12:36:15 +02:00
Simon Cruanes
3127f046de remove ugly tabs 2014-05-27 13:25:15 +02:00
Simon Cruanes
9a10d477ee update the klist type in other modules 2014-05-26 22:01:21 +02:00
Simon Cruanes
ffcdfa8625 udpate the type of CCKlist 2014-05-26 21:26:45 +02:00
Simon Cruanes
8ba39cb32d update readme 2014-05-26 19:09:06 +02:00
Simon Cruanes
b661147c3c Merge pull request #3 from nbraud/avl
AVL: Change API (why not, it makes for a usable polymorphic map)
2014-05-25 13:13:42 +02:00
Nicolas Braud-Santoni
12beb90514 AVL: Change API not to carry around comparison functions 2014-05-23 10:38:15 +02:00
Nicolas Braud-Santoni
b2450a771b AVL: Minor edit
There was a let that was uselessly rec
2014-05-23 10:20:52 +02:00
Simon Cruanes
bfc78e5671 build system stuff 2014-05-23 00:43:32 +02:00