[klm@ksuo tmp]$ echo "struct foo { float a, b;};" | chicken-bind - -o - ;;; GENERATED BY CHICKEN-BIND FROM - (begin (define foo-a (foreign-lambda* float (((c-pointer (struct "foo")) s)) "return(s->a);")) (define foo-b (foreign-lambda* float (((c-pointer (struct "foo")) s)) "return(s->b);")) (define make-foo (foreign-lambda* (c-pointer (struct "foo")) ((float a) (float b)) "struct foo *tmp_ = (struct foo *)C_malloc(sizeof(struct foo));\ntmp_->a = a;\ntmp_->b = b;\nC_return(tmp_);")))