Creating a vector from C added by dieggsy on Thu Sep 17 08:53:05 2020

(import miscmacros srfi-1)


#>

C_word vector_iota(int count, int start, int step) {
    C_word *ptr = C_alloc(C_SIZEOF_VECTOR(count));
    C_word
        *p = ptr,
        *p0 = p;

    *(p++) = C_VECTOR_TYPE | count;
    while(count--) {
        *(p++) = C_fix(start);
        start+=step;
    }
    ptr = p;
    C_return((C_word)p0);
}

<#

(define vector-iota
  (foreign-lambda scheme-object "vector_iota" integer integer integer))

(print (vector-iota 10 0 2))