[Cuis-dev] UTF-8 Unicode editors
ken.dickey at whidbey.com
ken.dickey at whidbey.com
Mon May 2 06:58:29 PDT 2022
On 2022-05-02 06:10, Juan Vuletich via Cuis-dev wrote:
> On 5/1/2022 1:59 AM, Douglas Brebner via Cuis-dev wrote:
..
>> What about using Ken's Ropes?
>
> I think this is independent of Ropes. Ropes are great for very large
> text. Rope fragments should be sequences of UTF-8 bytes. So Ropes
> should be a third representation, and should be completely compatible
> with StringUTF8. Applications should be able to pick their preferred
> representation.
Quick note. As Ropes are immutable, changes/updates return a new Rope.
This is great for multicore (no locking required), and great for "undo"
(just go back to the previous rope), but no mutation means no mutation
in place.
So updates look like
textStr := textStr at: 37 put: $%.
or some such.
An application can choose which style to use, but must be aware to use
the proper style. Undo is easier, but different.
Cedar Mesa is an example of a significant IDE/system which only used
Ropes, never Strings.
HTH,
-KenD
More information about the Cuis-dev
mailing list