On Thu, Feb 21, 2019 at 3:22 PM Marc Nieper-Wißkirchen <xxxxxx@gmail.com> wrote:
Am Do., 21. Feb. 2019 um 05:01 Uhr schrieb Alex Shinn <xxxxxx@gmail.com>:
>
> 2019年2月21日(木) 6:26 Marc Nieper-Wißkirchen <xxxxxx@gmail.com>:
>>
>>
>> P.S.: I am currently working on an alternative implementation for SRFI
>> 159; that's why I have been finding all the minor issues I have been
>> reporting recently. (Actually, writing an independent implementation
>> for a SRFI looks like a great way to verify it.)
>
> That's fantastic. If not too late, I recommend using CPS so you don't need continuations.

For "trimmed/lazy", one has to jump out of a running formatter. If all
formatters were composed using the primitive "each", I could thread an
explicit continuation argument through the environment monad to
implement "trimmed/lazy" without call/cc.

I think it's fine to use call/cc for trimmed/lazy, I was thinking of columnar.
 
Why do you suggest to refrain from first-class continuations, by the
way? They are a part of Scheme after all.

Mostly to have and compare the alternate implementation strategy,
and I suspect it may be less hairy.

I think the fact that we can implement columnar portably on top of
the base SRFI is a testament to the power of first-class continuations.

--
Alex