Simon Cruanes
55ff51f2cb
more combinators (iterate and forever);
...
some sequences of random elements
2013-02-15 17:35:05 +01:00
Simon Cruanes
45e331861d
more Sequence constructors and consumers
2013-02-15 17:20:33 +01:00
Simon Cruanes
d0c858ab9d
update of README;
...
in Makefile, only build tests if required, because it requires ocaml4
2013-02-11 11:52:54 +01:00
Simon Cruanes
cc241eeb33
do not install the toy Sexpr module
2013-02-10 19:53:39 +01:00
Simon Cruanes
f825f71dc6
test Sexpr parsing and printing, with
...
an example type (a kind of lambda terms)
2013-02-08 23:21:48 +01:00
Simon Cruanes
2ff632af11
more combinators in Sexpr;
...
bugfix in parsing, Return parsers must be poped off the stack as soon as possible;
^|| combinator for choosing parsers depending on a string
2013-02-08 23:20:42 +01:00
Simon Cruanes
6322884f2f
ability to parse a sequence of values from a Sexpr
2013-02-08 20:41:52 +01:00
Simon Cruanes
cce20838c4
parser combinators for deserializing token sequences directly into
...
any type, without building the intermediate Sexpr.t. GADT are now necessary, to keep the
Sexpr.parse function type-safe
2013-02-08 20:26:06 +01:00
Simon Cruanes
af0c94dab4
functorial interface for Set too
2013-02-07 16:16:23 +01:00
Simon Cruanes
07cc9df645
offer two different functions for combining Map and Seq. Both build
...
an extended version of Map, with additional conversion functions relative to Sequence.
One can Adapt an already existing Map module, or Make an extended Map directly
2013-02-07 16:07:16 +01:00
Simon Cruanes
d706038ed5
use a hidden exception for interrupting computation, so that
...
user-defined functions/callbacks can use Exit without interfering
2013-02-06 18:15:24 +01:00
Simon Cruanes
301205fafd
junk signature removed
2013-02-06 14:54:15 +01:00
Simon Cruanes
f0c3d399bc
update tests
2013-02-06 14:53:47 +01:00
Simon Cruanes
2bf5b628ab
removed type-conversion submodules, now replaced by simple values.
...
For instance, Sequence.List.of_seq is now Sequence.to_list.
Conversion with Set now uses first-class modules to avoir functor hell
(not done on Map because of limitations in the type systems)
2013-02-06 14:53:33 +01:00
Simon Cruanes
438159aa90
length and is_empty functions for Sequence
2013-02-05 16:40:31 +01:00
Simon Cruanes
855dd739e1
more tests with sexprs
2013-02-05 09:57:42 +01:00
Simon Cruanes
8c8b09c94a
better pretty printing of S-exprs
2013-02-05 09:57:27 +01:00
Simon Cruanes
8ee07ed6a2
cycle and repeat operators directly in Sequence
2013-02-05 09:57:09 +01:00
Simon Cruanes
10df563bd8
demonstrate the Sequence.map construct on S-expressions
2013-02-05 00:09:16 +01:00
Simon Cruanes
ac2fb8129c
export, install and describe the S-expr module
2013-02-05 00:00:44 +01:00
Simon Cruanes
14d651b836
S-expression module, with a strong accent on
...
sequences (o'rly?). S-exprs can be converted to and from streams of 'tokens'
2013-02-04 23:30:31 +01:00
Simon Cruanes
28332a45df
read sequence of chars from a channel
2013-02-04 23:29:18 +01:00
Simon Cruanes
74fb0a4725
test of fast iteration over integers
2013-02-04 20:41:58 +01:00
Simon Cruanes
ab74acf87a
more lightweight representation of sequences (no record, just a function)
2013-02-04 20:41:47 +01:00
Simon Cruanes
c4b7885e2a
add files for opam
2013-01-29 15:45:29 +01:00
Simon Cruanes
fb42ebcc09
Makefile target to install the library
2013-01-29 15:02:56 +01:00
Simon Cruanes
0b47a10e9b
more functions on Hashtbl;
...
functor for conversion between Map and Sequence
2013-01-29 14:40:11 +01:00
Simon Cruanes
087c38aa0c
more efficient Array.of_seq (only allocates one intermediate list, then reverse the array);
...
test of Array.to_seq and Sequence.append
2013-01-29 14:31:21 +01:00
Simon Cruanes
1e90120295
use a functor rather than first-class modules, for Set
2013-01-29 14:11:47 +01:00
Simon Cruanes
ee4ce9c9ba
generic sequence pretty-printing function
2013-01-29 11:13:46 +01:00
Simon Cruanes
fbc4946a99
add conversion from/to Stack, Queue, and add functions for Array and Ints;
...
also added more doc
2013-01-28 15:13:05 +01:00
Simon Cruanes
2ca708d41a
test the conversion to set
2013-01-28 14:32:17 +01:00
Simon Cruanes
fa412b7ece
reformatted license prelude;
...
add a Set conversion module, using first class modules of ocaml>=3.12
2013-01-28 14:32:06 +01:00
Simon Cruanes
024e0115db
added license prelude to files; added Sequence.singleton builder
2013-01-28 01:41:43 +01:00
Simon Cruanes
64f7afb6a7
test Sequence.rev, since its implementation is non totally trivial
2013-01-28 01:18:10 +01:00
Simon Cruanes
8e9842c2b6
generate documentation
2013-01-28 01:08:15 +01:00
Simon Cruanes
0534a1fc2b
for_all, rev, iteri, exists added to sequence
2013-01-28 01:04:42 +01:00
Simon Cruanes
7dbd8d15e3
append/concat primitives
2013-01-28 00:55:57 +01:00
Simon Cruanes
57b778f6cc
iterate on integers
2013-01-28 00:34:54 +01:00
Simon Cruanes
bd7ecf0b96
more tests
2013-01-28 00:27:02 +01:00
Simon Cruanes
b4ea152014
update makefile
2013-01-28 00:21:46 +01:00
Simon Cruanes
e5039470e8
renamed Sequence.sequence to Sequence.t
2013-01-28 00:12:19 +01:00
Simon Cruanes
546a77ba8f
modules to convert lists and hashtables from/to sequences
2013-01-28 00:09:48 +01:00
Simon Cruanes
2113359195
Add README and license
2013-01-27 23:45:30 +01:00
Simon Cruanes
7c8e4fca24
Initial commit
2013-01-27 14:38:43 -08:00
Simon Cruanes
0f04cb8f5c
take, concat and drop functions
2013-01-27 23:37:47 +01:00
Simon Cruanes
ad02a642bf
gitignore
2013-01-27 23:18:55 +01:00
Simon Cruanes
4229268f76
makefile
2013-01-27 23:18:18 +01:00
Simon Cruanes
d29a21f4f5
tests module
2013-01-27 23:17:41 +01:00
Simon Cruanes
4982630967
sequence type
2013-01-27 23:17:29 +01:00