Previous problems with StateVar apply -  name likely to mislead users into using something they shouldn't.<div><br></div><div>If it was named OpenGL-utils no one would mind...<br><br>On Wednesday, 22 October 2014, Edward Kmett <<a href="mailto:ekmett@gmail.com">ekmett@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><p style="margin-bottom:16px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-top:0px!important">We're currently actively working on writing better SDL 2 bindings in <code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">sdl2</code>.</p><p style="margin-top:0px;margin-bottom:16px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px">For various reasons, it can't depend on the <code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">OpenGL</code> package directly, but it needs a state variable construction.</p><p style="margin-top:0px;margin-bottom:16px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px">Sadly, not every platform with SDL 2 has OpenGL -- thanks Microsoft.</p><p style="margin-top:0px;margin-bottom:16px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px">We'd like to depend on the <code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">StateVar</code> package, but then we'll get two versions of the notion of a <code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">StateVar</code> that conflict.</p><p style="margin-top:0px;margin-bottom:16px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px">By <strong>far</strong> the cleanest option for us moving forward would be if <code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">OpenGL</code> switched to using the external<code style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:12px;font-stretch:normal;line-height:normal;padding:0.2em 0px;margin:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgba(0,0,0,0.0392157)">StateVar</code> package that you also maintain, then we could incur a dependency on that.</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important">I realize that when this was last proposed there was some pushback from the Haskell Platform, but otherwise what we're going to start seeing is a profusion of almost-compatible APIs, which is the very thing that the Haskell Platform is meant to prevent.</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important"><br></p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important">This would necessitate adding StateVar to the Haskell Platform, as OpenGL is in the Haskell Platform.</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important"><br></p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important">The package is maintained by the same maintainer as the current OpenGL package.</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important"><br></p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important">Discussion Period: 2 weeks</p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important"><br></p><p style="margin-top:0px;color:rgb(51,51,51);font-family:'Helvetica Neue',Helvetica,'Segoe UI',Arial,freesans,sans-serif;font-size:14px;line-height:22.3999996185303px;margin-bottom:0px!important">-Edward Kmett</p></div>
</blockquote></div>