package sek
An efficient implementation of ephemeral and persistent sequences
Install
Dune Dependency
Authors
Maintainers
Sources
archive.tar.gz
md5=cf541b6d254a5b76c600ce9b46452569
sha512=3a75ac74022234141f8423200070058a7b843e55a5db6bce3a311422e533e70ced956383926d819260e0b2cd06e3cdee340b656265c34e94f9cd0aa3bfbbab4f
doc/CHANGES.html
Changes
2020/06/18
- The time complexity of every operation is now documented as part of its specification.
- New submodules
E.Iter
andP.Iter
, which offer very efficient iterators over ephemeral and persistent sequences. - New functions
take
,drop
,sub
,iter_segments
,to_seq
,of_list_segment
,of_list
,of_seq_segment
,of_seq
,find
,find_opt
,find_map
,for_all
,exists
,mem
,memq
,map
,mapi
,rev
,zip
,unzip
,filter
,filter_map
,partition
,flatten
,flatten_map
,iter2
,iter2_segments
,fold_left2
,fold_right2
,map2
,for_all2
,exists2
,equal
,compare
,sort
,stable_sort
,uniq
,merge
, in ephemeral and persistent flavors. - New functions
E.fill
andE.blit
. - New function
other
of typeside -> side
. - New function
opposite
of typedirection -> direction
. - New functor
SupplyDefault
, which allows supplying a default element once and for all so as to obtain a simpler API. Unfortunately, this requires choosing a fixed type of elements at the same time. - New submodules
Emulated.Array
andEmulated.List
, which can be used as drop-in replacements for OCaml's standardArray
andList
modules. - New submodule
Segment
, which offers a few facilities for iterating over array segments. - Breaking change: the default behavior of
E.copy
is now to produce a disjoint sequence in timeO(n)
. The previous behavior, which exploits sharing and produces a result in timeO(K)
, is obtained by invokingE.copy ~mode:`Share
. The two copying modes have the same observable behavior; they differ only in their performance characteristics. - Breaking change: the submodules
Queue
andStack
are renamedEmulated.Queue
andEmulated.Stack
. This makes it easier to avoid unintended shadowing ofStdlib.Queue
,Stdlib.Stack
, etc. It is now safe to useopen Sek
. - Breaking change: the functor
Make
now takes just one structure as a parameter, instead of several structures. This is more pleasant and should make future evolution easier.
2020/04/03
- Initial release of the library.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page