public inbox for kawa@sourceware.org
 help / color / mirror / Atom feed
* Supporting SRFI 43 (Vectors)
@ 2019-01-02  1:19 Duncan Mak
  2019-01-02  1:27 ` Per Bothner
  0 siblings, 1 reply; 4+ messages in thread
From: Duncan Mak @ 2019-01-02  1:19 UTC (permalink / raw)
  To: kawa mailing list

Hello all,

As part of my project, I needed to use some APIs from SRFI 43 (vectors).

I noticed that Kawa doesn't come with this SRFI, it has its own APIs
for Vector (https://www.gnu.org/software/kawa/Vectors.html) and that
is a subset of the entire SRFI 43 definition.

In particular, I was missing vector-reverse-copy!

What would it take to get SRFI 43 into the Kawa distribution?


-- 
Duncan.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Supporting SRFI 43 (Vectors)
  2019-01-02  1:19 Supporting SRFI 43 (Vectors) Duncan Mak
@ 2019-01-02  1:27 ` Per Bothner
  2019-01-02  3:38   ` Duncan Mak
  0 siblings, 1 reply; 4+ messages in thread
From: Per Bothner @ 2019-01-02  1:27 UTC (permalink / raw)
  To: kawa

On 1/1/19 5:18 PM, Duncan Mak wrote:
> Hello all,
> 
> As part of my project, I needed to use some APIs from SRFI 43 (vectors).
> 
> I noticed that Kawa doesn't come with this SRFI, it has its own APIs
> for Vector (https://www.gnu.org/software/kawa/Vectors.html) and that
> is a subset of the entire SRFI 43 definition.
> 
> In particular, I was missing vector-reverse-copy!
> 
> What would it take to get SRFI 43 into the Kawa distribution?

I'll consider adding implementations for the missing procedures.
Initially on a procedure-by-procedure basis.
-- 
	--Per Bothner
per@bothner.com   http://per.bothner.com/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Supporting SRFI 43 (Vectors)
  2019-01-02  1:27 ` Per Bothner
@ 2019-01-02  3:38   ` Duncan Mak
  2019-01-02 18:59     ` Duncan Mak
  0 siblings, 1 reply; 4+ messages in thread
From: Duncan Mak @ 2019-01-02  3:38 UTC (permalink / raw)
  To: Per Bothner; +Cc: kawa mailing list

Okay, Here are the procedures that are missing:

= Constructors =
vector-unfold
vector-unfold-right
vector-reverse-copy
vector-concatenate

= Predicates =
vector-empty?
vector=

= Iteration =
vector-fold
vector-fold-right
vector-map!
vector-count

= Searching =
vector-index
vector-index-right
vector-skip
vector-skip-right
vector-binary-search
vector-any
vector-every

= Mutations =
vector-swap!
vector-reverse!
vector-reverse-copy!

= Conversion =
reverse-vector->list
reverse-list->vector

On Tue, Jan 1, 2019 at 8:27 PM Per Bothner <per@bothner.com> wrote:
>
> On 1/1/19 5:18 PM, Duncan Mak wrote:
> > Hello all,
> >
> > As part of my project, I needed to use some APIs from SRFI 43 (vectors).
> >
> > I noticed that Kawa doesn't come with this SRFI, it has its own APIs
> > for Vector (https://www.gnu.org/software/kawa/Vectors.html) and that
> > is a subset of the entire SRFI 43 definition.
> >
> > In particular, I was missing vector-reverse-copy!
> >
> > What would it take to get SRFI 43 into the Kawa distribution?
>
> I'll consider adding implementations for the missing procedures.
> Initially on a procedure-by-procedure basis.
> --
>         --Per Bothner
> per@bothner.com   http://per.bothner.com/



-- 
Duncan.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Supporting SRFI 43 (Vectors)
  2019-01-02  3:38   ` Duncan Mak
@ 2019-01-02 18:59     ` Duncan Mak
  0 siblings, 0 replies; 4+ messages in thread
From: Duncan Mak @ 2019-01-02 18:59 UTC (permalink / raw)
  To: Per Bothner; +Cc: kawa mailing list

Turns out there's a newer version of SRFI 43.

https://srfi.schemers.org/srfi-133/srfi-133.html

Of note:

SRFI 43 standardized more vector procedures, all of which are included
in this SRFI. Unfortunately, R7RS-small and SRFI 43 placed
irreconcileable requirements on the procedures invoked by vector-map
and vector-for-each. This SRFI resolves that issue by changing these
SRFI 43 procedures as well as vector-map!, vector-fold,
vector-fold-right, and vector-count to leave out the index argument
that is passed under SRFI 43's definition.

On Tue, Jan 1, 2019 at 10:38 PM Duncan Mak <duncanmak@gmail.com> wrote:
>
> Okay, Here are the procedures that are missing:
>
> = Constructors =
> vector-unfold
> vector-unfold-right
> vector-reverse-copy
> vector-concatenate
>
> = Predicates =
> vector-empty?
> vector=
>
> = Iteration =
> vector-fold
> vector-fold-right
> vector-map!
> vector-count
>
> = Searching =
> vector-index
> vector-index-right
> vector-skip
> vector-skip-right
> vector-binary-search
> vector-any
> vector-every
>
> = Mutations =
> vector-swap!
> vector-reverse!
> vector-reverse-copy!
>
> = Conversion =
> reverse-vector->list
> reverse-list->vector
>
> On Tue, Jan 1, 2019 at 8:27 PM Per Bothner <per@bothner.com> wrote:
> >
> > On 1/1/19 5:18 PM, Duncan Mak wrote:
> > > Hello all,
> > >
> > > As part of my project, I needed to use some APIs from SRFI 43 (vectors).
> > >
> > > I noticed that Kawa doesn't come with this SRFI, it has its own APIs
> > > for Vector (https://www.gnu.org/software/kawa/Vectors.html) and that
> > > is a subset of the entire SRFI 43 definition.
> > >
> > > In particular, I was missing vector-reverse-copy!
> > >
> > > What would it take to get SRFI 43 into the Kawa distribution?
> >
> > I'll consider adding implementations for the missing procedures.
> > Initially on a procedure-by-procedure basis.
> > --
> >         --Per Bothner
> > per@bothner.com   http://per.bothner.com/
>
>
>
> --
> Duncan.



-- 
Duncan.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-01-02 18:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-02  1:19 Supporting SRFI 43 (Vectors) Duncan Mak
2019-01-02  1:27 ` Per Bothner
2019-01-02  3:38   ` Duncan Mak
2019-01-02 18:59     ` Duncan Mak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).