Confused as to how generate-gl-function works

2013-10-16 Thread Chris Bagley
It seems to be compiling a new lambda on every call. I'll walk through my logic below: So I am looking at how (gen-buffers) is implemented. (defun gen-buffers (count) (with-foreign-object (buffer-array '%gl:uint count) (%gl:gen-buffers count buffer-array) (loop for i below count

Re: Confused as to how generate-gl-function works

2013-10-16 Thread Chris Bagley
Or is it that once the lambda is compiled, it replaces the version with generate-gl-function in it? Does that mean that the wrapper functions are compiled on first call? On 16 October 2013 13:42, Chris Bagley wrote: > It seems to be compiling a new lambda on every call. I'll walk through my > l

Re: Confused as to how generate-gl-function works

2013-10-16 Thread Bart Botta
On Wed, Oct 16, 2013 at 6:45 AM, Chris Bagley wrote: > Or is it that once the lambda is compiled, it replaces the version with > generate-gl-function in it? Does that mean that the wrapper functions are > compiled on first call? Right, the call to COMPILE replaces the function with the result of

Re: Confused as to how generate-gl-function works

2013-10-16 Thread Chris Bagley
Cheers, good to know. OK going back and reading the code again, this all seems to boil down to the fact that some implementations of opengl are missing functions, which of course makes sense as there is plenty of difference between v2 and v4 (or gles etc) Does the resulting lisp program take a perf

Re: Confused as to how generate-gl-function works

2013-10-16 Thread Bart Botta
On Wed, Oct 16, 2013 at 8:58 AM, Chris Bagley wrote: > Cheers, good to know. OK going back and reading the code again, this all > seems to boil down to the fact that some implementations of opengl are > missing functions It is mainly intended for OpenGL extensions, but Windows in particular only