Re: engine record is ugly Amirouche Boubekki 25 Oct 2019 16:22 UTC

Le ven. 25 oct. 2019 à 18:18, John Cowan <xxxxxx@ccil.org> a écrit :
>
>
>
> On Fri, Oct 25, 2019 at 4:39 AM Amirouche Boubekki <xxxxxx@gmail.com> wrote:
>
>> >    ((engine-set engine) okvs ((engine-pack engine) string uid)
>> > ((engine-pack engine) #t))))
>
>
> Ah, I thought the issue was extensibility.  SRFI 128 solves this problem by providing invokers as well as accessors, and in hindsight maybe I should have skipped the accessors.  The general pattern is that the short names like engine-set and engine-pack take an engine object as the first argument and apply the appropriate procedure from the object to the other arguments.  So the lines above become:
>
> (engine-set engine okvs (engine-pack engine string uid) (engine-pack engine) #t).

I think I will do that.

>
> If you still want accessors, call them engine-setter, engine-packer, etc.
>
>
>>
>>
>> I will work on pre-SRFI for single dispatch and publish in on the
>> scheme newsgroup to collect more thoughts.
>
>
> We already have SRFIs 99, 131, 136, 150, and R6RS.  I would suggest working on something other than this can of worms.
>
>
>
> John Cowan          http://vrici.lojban.org/~cowan        xxxxxx@ccil.org
> Lope de Vega: "It wonders me I can speak at all.  Some caitiff rogue
> did rudely yerk me on the knob, wherefrom my wits yet wander."
> An Englishman: "Ay, belike a filchman to the nab'll leave you
> crank for a spell." --Harry Turtledove, Ruled Britannia
>

--
Amirouche ~ https://hyper.dev