OpenGL status
Jason Dagit
dagitj at gmail.com
Sat Feb 11 19:49:30 GMT 2012
Ping?
On Sun, Jan 8, 2012 at 11:53 AM, Jason Dagit <dagitj at gmail.com> wrote:
> = Overview/Problem =
> The OpenGL libraries included in the HP are old (OpenGL 2.2.3.0) and I
> would like to push for it to be updated. The problem is that the
> version in the HP is quickly falling out of sync with the OpenGL
> standard and version 2.2.3.0 has some serious performance issues with
> floating point numbers. The situation has been languishing for too
> long. I need some guidance on how to resolve the issue so that the
> next HP does not suffer from this problem.
>
> = Background =
>
> As I understand it, the main problem is that starting with OpenGL
> 2.3.0.0 [1], there was a refactoring of the packages that added new
> dependencies. Of these, StateVar, Tensor, and ObjectName were
> controversial dependencies:
>
> * StateVar -- Some people have objected to the module name of the
> StateVar package, as it is Data.StateVar. As I understand it, there
> is some concern that by having that in the HP we are encouraging
> beginners to think about using state in their programs. Data.StateVar
> is very general and used by several packages (opengl, openal, hipmunk)
> [2], for this reason it doesn't seem to make sense to put it under the
> opengl module namespace. I'd also like to point out, STRefs are
> provided by the HP and allow programmers to use stateful references.
> In the current module name landscape [3], those come from Data.STRef.
>
> * ObjectName -- ObjectName is shared between OpenGL and OpenAL so
> putting it in the Graphics namespace seems a bad idea. Note: Although
> Data.ObjectName seems reasonable to me, I could be convinced to roll
> ObjectName back into each of those packages as it's just one type
> class definition (no instances) and it's used in exactly those
> packages. Plus the way the dependency is specified on hackage,
> releasing an updated package will break the existing OpenGL/OpenAL
> packages.
>
> * Tensor -- This defines some Vertex and Vector types. Data.Tensor
> seems reasonable to me. It's used by OpenGL, OpenAL, and OpenVG. If
> I change it I should probably coordinate with Stephen Tetley the
> author of OpenVG.
>
> * OpenGLRaw -- As far as I know this package is fine as it is, but
> simply has not been added to the HP yet.
>
> * GLUTRaw -- Same as OpenGLRaw.
>
> = Question =
>
> What do I need to do to get the HP to update its dependency on OpenGL?
> For example, would changing Data.StateVar to Foreign.StateVar be
> sufficient? Is the HP willing to accept Data.StateVar?
>
> Tickets have already been created for updating OpenGL [4] and adding
> OpenGLRaw [5].
>
> = References =
>
> [1] http://hackage.haskell.org/package/OpenGL-2.4.0.2
> [2] http://packdeps.haskellers.com/reverse/StateVar
> [3] http://www.haskell.org/haskellwiki/Hierarchical_module_names
> [4] http://trac.haskell.org/haskell-platform/ticket/158
> [5] http://trac.haskell.org/haskell-platform/ticket/167
>
>
>
> Thank you,
> Jason
More information about the Haskell-platform
mailing list