Package rope.plt contributed by dyoo [docs]
To load: (require (planet dyoo/rope:3:2/rope))
Old style:(require (planet "rope.ss" ("dyoo" "rope.plt" 3 2)))
Package description:
Ropes for fast string concatenation and subsequencing
Downloads this week: 0
Total downloads: 1088
Tickets:0
Open tickets:0
Primary files:
NameContract
current-optimize-flat-ropes
current-max-depth-before-rebalancing
(struct rope) 
(struct (rope:string rope) s) 
(struct (rope:special rope) s) 
(struct (rope:concat rope) l r len depth) 
string->rope
(-> string? rope?)
special->rope
(-> (not/c string?) rope?)
rope-append
(-> rope? rope? rope?)
rope-append*
(->* () (listof rope?) (rope?))
rope-has-special?
(-> rope? boolean?)
rope-length
(-> rope? natural-number/c)
rope-ref
(-> rope? natural-number/c any)
subrope
(case->
  (-> rope? natural-number/c natural-number/c rope?)
  (-> rope? natural-number/c rope?))
rope=?
(-> rope? rope? boolean?)
rope->string
(-> rope? string?)
rope->vector
(-> rope? vector?)
vector->rope
(-> vector? rope?)
input-port->rope
(-> input-port? (-> any/c any) rope?)
rope-for-each
(-> (-> any/c any) rope? any)
rope-fold
(-> (-> any/c any/c any) any/c rope? any)
rope-fold/leaves
(-> (-> rope? any/c any) any/c rope? any)
open-input-rope
(-> rope? input-port?)
rope-balance
(-> rope? rope?)
rope-depth
(-> rope? natural-number/c)
rope-node-count
(-> rope? natural-number/c)
 Current version
PLaneT versionExternal versionSourceDLsDocsReq. PLTDate added
(3 2)3.0
681
[none]2008-06-18
To load: (require (planet dyoo/rope:3:2/rope))
Available in repositories: 4.x, 3xx

Version 3.0: major API changes.

  • rope-fold/leaves does not automatically unbox the leaf structure.
  • added rope-depth, rope-append*, rope=?, rope->vector, vector->rope functions.
  • rope:concat has an additional field 'depth'.
  • rope-append automatically rebalances a rope if it is too deep.
No Tickets Currently open for this Package [New Ticket]

 Old versions
PLaneT versionExternal versionSourceDLsDocsReq. PLTDate added
(3 1)3.0
4
[none]2008-06-18
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 3 (= 1))))
Available in repositories: 4.x, 3xx

Version 3.0: major API changes.

  • rope-fold/leaves does not automatically unbox the leaf structure.
  • added rope-depth, rope-append*, rope=?, rope->vector, vector->rope functions.
  • rope:concat has an additional field 'depth'.
  • rope-append automatically rebalances a rope if it is too deep.
(3 0)3.0
71
[none]2007-10-22
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 3 (= 0))))
Available in repositories: 4.x, 3xx

Version 3.0: major API changes.

  • rope-fold/leaves does not automatically unbox the leaf structure.
  • added rope-depth, rope-append*, rope=?, rope->vector, vector->rope functions.
  • rope:concat has an additional field 'depth'.
  • rope-append automatically rebalances a rope if it is too deep.
(2 3)2.3
302
[none]2007-09-03
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 2 (= 3))))
Available in repositories: 4.x, 3xx

Version 2.3: improved implementation of open-input-rope. Fixed silly bug involving subrope and specials.

(2 2)2.2
3
[none]2007-09-02
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 2 (= 2))))
Available in repositories: 4.x, 3xx

Exposed structure definitions for low-level node traversal.

(2 1)2.1
5
[none]2007-09-01
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 2 (= 1))))
Available in repositories: 3xx, 4.x

Added small optimization for concatenation of empty string.

(2 0)2.0
3
[none]2007-09-01
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 2 (= 0))))
Available in repositories: 3xx, 4.x

Support for specials in a rope.

API change: strings must be explictly turned into ropes with string->rope

(1 1)1.1
14
[none]2007-08-28
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 1 (= 1))))
Available in repositories: 4.x, 3xx

Added string->rope.

(1 0)1.0
5
[none]2007-08-12
To load: (require (planet "rope.ss" ("dyoo" "rope.plt" 1 (= 0))))
Available in repositories: 4.x, 3xx

Initial release.