(bind-func gl_draw
(lambda ()
(glClear GL_COLOR_BUFFER_BIT)
(let ((resloc (glGetUniformLocation sp "iResolution"))
(timeloc (glGetUniformLocation sp "iGlobalTime"))
(rateloc (glGetUniformLocation sp "iSampleRate")))
(glUseProgram sp)
(glUniform3f resloc (convert width) (convert height) 1.0)
(glUniform1f timeloc (convert (% (clock_clock) 441000.)))
(glUniform1f rateloc 44100.0))
(VAO_bind_and_draw_arrays vao GL_TRIANGLE_STRIP 0 4)
(glfwSwapBuffers window)
void))