Commit graph

95 commits

Author SHA1 Message Date
Simon Cruanes
f6fd779f1c fix bug in CCPrint.to_file 2014-07-03 20:03:32 +02:00
Simon Cruanes
4102f3b95d CCArray.lookup for divide-and-conquer search 2014-07-03 15:08:59 +02:00
Simon Cruanes
9595ac688c CCList.sort_uniq 2014-07-02 16:47:10 +02:00
Simon Cruanes
b521f3af8e doc 2014-07-02 13:36:00 +02:00
Simon Cruanes
a64d7602a3 CCError: retry and choose combinators 2014-07-02 13:22:21 +02:00
Simon Cruanes
39c33046ce stub for monadic IO in CCPrint 2014-06-28 15:16:37 +02:00
Simon Cruanes
50cc9f8d2c CCopt.pure 2014-06-28 04:06:58 +02:00
Simon Cruanes
d36e8dd38e bugfix; more tests 2014-06-28 04:01:18 +02:00
Simon Cruanes
735a11e5ec updated CCPersistentHashtbl with new functions;
updated doc, simplified code
2014-06-28 03:53:21 +02:00
Simon Cruanes
a356d811a7 move CCString into core/, since it deals with a basic type;
also add some features to CCString (Sub and Split modules
to deal with slices and splitting by a string)
2014-06-28 03:52:47 +02:00
Simon Cruanes
712472521d CCArray.blit, .Sub.to_slice;
some bugfixes
2014-06-28 02:03:14 +02:00
Simon Cruanes
f64002b053 applicative and lifting operators for CCError 2014-06-27 15:33:57 +02:00
Simon Cruanes
e6dd5db678 CCError.map2 2014-06-27 15:25:41 +02:00
Simon Cruanes
c340ad3358 more combinators in CCError 2014-06-27 15:25:41 +02:00
Simon Cruanes
6ae3e5b283 test for CCArray.shuffle 2014-06-26 21:55:20 +02:00
Simon Cruanes
983b23046c bugfix in CCArray.shuffle 2014-06-26 21:40:29 +02:00
Simon Cruanes
4c408d1182 CCOpt.get_exn 2014-06-26 15:37:07 +02:00
Simon Cruanes
ac35980c8b CCOpt.sequence_l 2014-06-26 15:10:13 +02:00
Simon Cruanes
9caefc0e5e mplus instance for CCOpt 2014-06-26 15:01:45 +02:00
Simon Cruanes
6c19918240 monad instance for CCFun 2014-06-26 15:01:34 +02:00
Simon Cruanes
8fbc500318 CCTrie, a compressed functorial persistent trie structure 2014-06-26 02:46:27 +02:00
Simon Cruanes
d30b36dce9 fix CCPrint.unit, add CCPrint.silent 2014-06-26 00:10:10 +02:00
Simon Cruanes
451e761c8e fix type mismatch 2014-06-25 23:34:43 +02:00
Simon Cruanes
8bd2706ed5 CCKTree, abstract tree structure with dot printing 2014-06-25 03:28:41 +02:00
Simon Cruanes
10a1a0643e minor updates (new functions in CCPrint and PrintBox) 2014-06-25 03:27:30 +02:00
Simon Cruanes
9e2c8ec392 rename CCLeftistheap to CCHeap, for it is a simpler name 2014-06-25 01:36:32 +02:00
Simon Cruanes
cac3500177 updated CCLeftistheap with a brand new functorial interface,
with more conversion functions, etc.
2014-06-25 01:27:43 +02:00
Simon Cruanes
891725157e fix bug in CCFqueue 2014-06-25 01:27:17 +02:00
Simon Cruanes
a87a5b0315 CCFQueue is now a functional double-ended queue 2014-06-25 00:43:43 +02:00
Simon Cruanes
696d1f27cf update of FQueue with a richer, more consistent api 2014-06-24 22:46:34 +02:00
Simon Cruanes
1e2ac4c39b tests for bitvectors 2014-06-24 18:52:38 +02:00
Simon Cruanes
2b15a21570 refactored CCrandom (hide fuel, too complicated, but provide a fix operator);
bench_hash to compare hash combinators to the default hash function
2014-06-24 16:24:19 +02:00
Simon Cruanes
e5a842829e monadic combinators for lists and klists 2014-06-24 16:23:30 +02:00
Simon Cruanes
9da54f3e5a random generators in several modules, and CCRandom to bind them all with fuel 2014-06-24 14:06:48 +02:00
Simon Cruanes
6872591708 make a distinction between Hash.state and Hash.t (and private type is bad here) 2014-06-23 23:44:53 +02:00
Simon Cruanes
b56cdfa17a more hash functions 2014-06-23 23:40:10 +02:00
Simon Cruanes
1beab5268b changed comments, add _tags file 2014-06-23 23:29:47 +02:00
Simon Cruanes
fcd2085190 CCHash now uses murmur hash 2014-06-23 23:01:01 +02:00
Simon Cruanes
ef06d117cb api change in CClist: find is now find_idx, and find:('a->'b option) -> 'a list -> 'b option added 2014-06-20 14:28:41 +02:00
Simon Cruanes
ebb8310f84 bugfix 2014-06-15 23:10:16 +02:00
Simon Cruanes
d0393cd9b6 a few more functions in CCVector, including in-place filtering
and efficient non-order-preserving removal
2014-06-15 19:36:15 +02:00
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