+(define (get-aiString index)
+ (lambda (pointer)
+ (let* ((length (bv-uint-ref pointer index))
+ (data (pointer->bytevector pointer length (+ index 4))))
+ (bytevector->string data (fluid-ref %default-port-encoding)))))
+
+(define* (get-pointer index #:optional wrap-proc)
+ (lambda (pointer)
+ (let ((p (bv-uint-ref pointer index)))
+ (cond ((= p 0) '())
+ (else
+ (let ((p2 (make-pointer p)))
+ (list
+ (cond (wrap-proc (wrap-proc p2))
+ (else p2)))))))))
+