(bind-func glfw_init_and_create_fullscreen_window
(lambda (monitor_idx)
(glfw_init)
(glfw_set_core_profile)
(let ((num:i32* (salloc))
(monitors (glfwGetMonitors num))
(window (glfw_create_fullscreen_window (if (< monitor_idx (pref num 0))
(pref monitors monitor_idx)
(pref monitors 0)))))
(glfwShowWindow window)
(glfwMakeContextCurrent window)
(glfwSwapInterval 1)
(glfwSwapBuffers window)
window)))