question 1:

Is it possible to write gambit code to produce the equiv of:
int foo[200]; ?

the current best I have in mind is:
(let ((foo (malloc (* 200 8)))) ... )


question 2:
suppose I have:

(c-define-type bar "bar")

is there a way to create equiv of:
bar foo[200]; ?

again, current best I have in mind is:
(let ((foo (malloc (* 200 sizeof_bar)))) ... )


question 3:

in question 1, is there a way to access foo[i] ?

question 4:

in question 2, is there a way to access foo[i] ?

thanks!