Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(01 Sep 2020 11:25 UTC)
|
Re: Weaken disjointness of range type?
John Cowan
(01 Sep 2020 18:19 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(01 Sep 2020 19:45 UTC)
|
Re: Weaken disjointness of range type?
Wolfgang Corcoran-Mathe
(04 Sep 2020 23:15 UTC)
|
Re: Weaken disjointness of range type?
John Cowan
(05 Sep 2020 03:03 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(05 Sep 2020 10:15 UTC)
|
Re: Weaken disjointness of range type?
Wolfgang Corcoran-Mathe
(05 Sep 2020 19:27 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(06 Sep 2020 07:25 UTC)
|
Re: Weaken disjointness of range type?
John Cowan
(05 Sep 2020 23:35 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(06 Sep 2020 07:36 UTC)
|
Re: Weaken disjointness of range type?
John Cowan
(07 Sep 2020 01:09 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(07 Sep 2020 06:18 UTC)
|
Re: Weaken disjointness of range type?
John Cowan
(08 Sep 2020 15:40 UTC)
|
Re: Weaken disjointness of range type? Marc Nieper-Wißkirchen (08 Sep 2020 15:58 UTC)
|
Re: Weaken disjointness of range type?
Marc Nieper-Wißkirchen
(05 Sep 2020 09:49 UTC)
|
Am Di., 8. Sept. 2020 um 17:40 Uhr schrieb John Cowan <xxxxxx@ccil.org>: > Ranges would be mutable if: > > 1) they might be the same type as some mutable type (in which case they could potentially, though not portably, be mutated using the procedures of that type), or > > 2) actual mutation procedures such as range-set! or range-map! were provided. > > But since neither of these things are true, ranges are immutable (as I keep saying) by construction. And indeed, the only place they are called immutable is in the abstract, which is non-normative. > > (Again, frame-breaking operations like record and procedure inspection may allow direct mutation of a range.) I think we agree 99%. The remaining 1% is that I don't make a difference between 1) and 2). For me providing a (non-portable) extended set of procedures (like range-set!) would be effectively the same as extending (non-portably) existing procedures (like extending vector-set! to ranges under the assumption that ranges may not distinguishable from vector literals). :)