On Tue, Jun 30, 2020 at 5:01 PM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote: > > Am Di., 30. Juni 2020 um 11:52 Uhr schrieb Duy Nguyen <xxxxxx@gmail.com>: > > > I figured as much, but why would you want that? Index-as-fixnum is > > returned by plenty other functions, using fixnum for byte offset just > > opens more opportunity of using a fixnum for a wrong purpose. Plus > > This is due to SRFI 130's adhoc polymorphism, I believe. Again I'm not the srfi author, but I think it's for practical reason. r7rs and many string srfis will return an index as a position in a string. When you move in and out of "cursor domain" you have to go through the index<->cursor conversion. So either they are distinct, or they must have consistent semantics. In other words cursor-as-fixnum must be index. Two different meanings using the same type is just a recipe for disaster unless you depend on none of index-based string functions out there. -- Duy