(bind-func fluid-cube-create
(lambda (size-x size-y diffusion viscosity dt:double)
(let ((cube:fluidcube* (halloc))
(size:i64 (* size-x size-y 10))
(s:double* (halloc size))
(density:double* (heap-alloc size))
(Vx:double* (heap-alloc size))
(Vy:double* (heap-alloc size))
(Vx0:double* (heap-alloc size))
(Vy0:double* (heap-alloc size)))
(tfill! cube size-x dt diffusion viscosity s density Vx Vy Vx0 Vy0 size-y)
cube)))