Simon Cruanes
3c572559b7
play with the crawler!
2013-03-30 15:04:20 +01:00
Simon Cruanes
c582e18cfa
more robust crawler
2013-03-30 14:53:13 +01:00
Simon Cruanes
a5d9a39afd
example using LazyGraph and Futures to search a path between two urls
2013-03-30 14:41:07 +01:00
Simon Cruanes
69d75de295
additional handler for LazyGraph algorithms that search for paths
2013-03-30 14:40:44 +01:00
Simon Cruanes
ddd3175185
LazyGraph:
...
- Dijkstra and A* algorithms implemented, for minimal path search;
- is_dag predicate for finite graphs;
- simple "heap_graph" example (i -> 2*i,2*i+1)
2013-03-30 13:21:01 +01:00
Simon Cruanes
fe0b4d653f
removed some non implemented functions from LazyGraph
2013-03-29 23:19:10 +01:00
Simon Cruanes
974df85321
cleanup of LazyGraph
2013-03-29 23:16:17 +01:00
Simon Cruanes
5553ed4699
updated benchs with persistentHashtbl
2013-03-27 21:47:24 +01:00
Simon Cruanes
a82ebf7d59
added PersistentHashtbl, adapted from persistent arrays of J-C Filliatre
2013-03-26 17:23:19 +01:00
Simon Cruanes
f992f279bc
Gen.lexico for lexicographic comparison
2013-03-25 14:37:27 +01:00
Simon Cruanes
bc38851de6
added a test for Future.Timer
2013-03-24 20:27:27 +01:00
Simon Cruanes
8be147c50b
added a timer in Future
2013-03-24 19:21:43 +01:00
Simon Cruanes
d74808efe0
small api change in future
2013-03-24 17:57:02 +01:00
Simon Cruanes
b4e07e07d2
benchmark SkipList with hashtables
2013-03-23 01:45:54 +01:00
Simon Cruanes
9788d108e3
faster SkipList.find
2013-03-23 01:45:46 +01:00
Simon Cruanes
6f455c7cb1
skipList module
2013-03-23 01:00:13 +01:00
Simon Cruanes
3da4f75487
correct comments for ocamldoc
2013-03-22 17:42:09 +01:00
Simon Cruanes
a9cdce9424
Gen.intersection, to intersect 2 sorted generators
2013-03-22 09:53:54 +01:00
Simon Cruanes
09817b236a
update of Bench
2013-03-21 18:55:12 +01:00
Simon Cruanes
0af36e124e
added repeatedly, rand_int, of_array and to_array to Gen
2013-03-21 18:06:00 +01:00
Simon Cruanes
6ba411d7f5
lower level pp function
2013-03-21 17:51:44 +01:00
Simon Cruanes
7ed1bced9d
forgot to update examples/
2013-03-21 17:35:23 +01:00
Simon Cruanes
2033f07aff
renamed Enum into Gen (for "generator"), and updated code and test to reflect so
2013-03-21 17:25:02 +01:00
Simon Cruanes
dfbce71324
Enum.reduce
2013-03-21 17:19:50 +01:00
Simon Cruanes
ebbf4a9138
more explanations about merge
2013-03-21 17:14:15 +01:00
Simon Cruanes
6a918a95dc
binary sorted_merge
2013-03-21 17:11:04 +01:00
Simon Cruanes
a49b37dbdb
added infix operators in the module
2013-03-21 17:03:14 +01:00
Simon Cruanes
13fd7da142
added a lot of operations on Enum, including sort, uniq, for_all, exists, mem, min, max, group, unzip, unfold, scan
2013-03-21 16:48:46 +01:00
Simon Cruanes
0694064ef5
mutable structure to build LazyGraph on top
2013-03-21 13:53:51 +01:00
Simon Cruanes
c248c9b677
added some benchs of Sequence vs Enum
2013-03-21 12:35:22 +01:00
Simon Cruanes
1c1d602ca7
improvements in Enum (should be more efficient)
2013-03-21 12:25:14 +01:00
Simon Cruanes
9cd07d3395
examples graphs; small program that computes the collatz suite
2013-03-21 12:25:03 +01:00
Simon Cruanes
e0b6b8be5b
LazyGraph is now fully polymorphic (plan to implement LazyGraph.product, which
...
cannot be expressed with functors), with optional eq/hash functions
2013-03-21 11:22:41 +01:00
Simon Cruanes
e6eb9a79eb
expose an optional Pool argument in most Future\'s combinators;
...
handlers of a future are scheduled in pool rather than sequentially (to avoid
possible deadlocks among them)
2013-03-21 10:15:35 +01:00
Simon Cruanes
08d33095f6
Future.sleep should take a float
2013-03-20 18:06:50 +01:00
Simon Cruanes
170c1031a9
some basic tests for Future
2013-03-20 18:04:04 +01:00
Simon Cruanes
174f10e4f2
update of the thread pool. It is growable, up to a certain limit, and threads are cached;
...
idle threads are killed after some (soft) time limit;
2013-03-20 17:53:49 +01:00
Simon Cruanes
43f926dcb3
copied Heap into Enum for implementing merge_sorted; test merge_sorted
2013-03-20 16:09:55 +01:00
Simon Cruanes
c1ad18407f
fix in ocamlinit
2013-03-20 16:09:12 +01:00
Simon Cruanes
02481a9352
leaner Heap
2013-03-20 15:54:45 +01:00
Simon Cruanes
35aa6cb03a
copied code of SplayTree into Heap, to reduce dependencies
2013-03-20 15:49:52 +01:00
Simon Cruanes
772e6e6844
renamed Futures into Future
2013-03-20 15:27:44 +01:00
Simon Cruanes
fac35bf61c
renamed some operations in Enum
2013-03-20 13:58:50 +01:00
Simon Cruanes
fb75b7299b
some functions of Enum are also available for Enum.Gen
2013-03-20 11:55:53 +01:00
Simon Cruanes
1d2e514d45
parametrize Futures.Pool with lifetime of transient threads; also give them time to
...
process jobs by increasing max_load temporarily
2013-03-20 10:54:26 +01:00
Simon Cruanes
e35f3c61dd
circular list in examples/mem_size
2013-03-20 10:53:07 +01:00
Simon Cruanes
4839dd82ba
example file, that uses LazyGraph to represent memory layout of values (and compute their size)
2013-03-20 10:32:11 +01:00
Simon Cruanes
b9ddea21bd
fix error in Makefile
2013-03-20 09:41:59 +01:00
Simon Cruanes
1445104e2b
comprehensive BFS;
...
implemented LazyGraph.Dot.pp (and pp_enum to have more control);
LazyGraph.map and filter implemented too
2013-03-20 01:12:52 +01:00
Simon Cruanes
64a50fbedf
pretty printing of an Enum
2013-03-20 01:10:36 +01:00