Haskell-OpenGL3.1-Tutos
Haskell-OpenGL3.1-Tutos copied to clipboard
GLFW-dependent code breaks
Hello, YPares
I tried your code for tutorial04 - it is exactly what I need to proceed with OpenGL experience, but your code seems to rely on older version of GLFW and does not compile any more. Is there a chance you could fix it?
I am trying to fix it myself, but I am relatively inexperienced.
Thanks for your work, Vlad
Hi Vladimir,
The reason I haven't ported yet the tutos to GLFW3 is that Hackage is ahead of some linux distros (and esp. the one I use, Ubuntu) whose repositories still contain only libglfw2. So adding a dependency to GLFW 3 would require the users of those distros to manually download, build & install GLFW 3. Quite a hassle for no gain, really, since I only need very very basic GLFW features. And I wasn't sure if a lot of packages on Hackage already use and require GLFW3. Do you have a dependency to GLFW3 due to another package? In the meantime, cabal 1.18 sandbox feature can help you separating what needs GLFW3 from what needs GLFW2.
Regards, Yves.
2013/12/2 Vladimir Lopatin [email protected]
Hello, YPares
I tried your code for tutorial04 - it is exactly what I need to proceed with OpenGL experience, but your code seems to rely on older version of GLFW and does not compile any more. Is there a chance you could fix it?
I am trying to fix it myself, but I am relatively inexperienced.
Thanks for your work, Vlad
— Reply to this email directly or view it on GitHubhttps://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2 .
Hey Yves,
It's not about features, it's about up to date dependencies. Relying on a syntax that is known to be changed in more recent versions of dependencies... is short-sighted. We are talking about basic functionality and basics must be well covered. If basics are going to break with the next version bump - it makes such basics unreliable.
Considering the hassle of installing things... Anybody who is diving into fairly low-level haskell is supposed to be prepared to some pain before gain, don't you think? Of course if you consider 'cabal install GLFW' as too much hassle for a developer, then maybe it is not worth it indeed.
I think I understand why you choose to have things as they are. I know about dependencies hell. If you prefer to keep the code as is - it's ok. I intend to fix it myself then. Your code took me close enough to achieve my goal. Thank you for that.
Regards, Vladimir.
P.S.
On 2 December 2013 11:03, Yves Parès (Ywen) [email protected]:
Hi Vladimir,
The reason I haven't ported yet the tutos to GLFW3 is that Hackage is ahead of some linux distros (and esp. the one I use, Ubuntu) whose repositories still contain only libglfw2. So adding a dependency to GLFW 3 would require the users of those distros to manually download, build & install GLFW 3. Quite a hassle for no gain, really, since I only need very very basic GLFW features. And I wasn't sure if a lot of packages on Hackage already use and require GLFW3. Do you have a dependency to GLFW3 due to another package? In the meantime, cabal 1.18 sandbox feature can help you separating what needs GLFW3 from what needs GLFW2.
Regards, Yves.
2013/12/2 Vladimir Lopatin [email protected]
Hello, YPares
I tried your code for tutorial04 - it is exactly what I need to proceed with OpenGL experience, but your code seems to rely on older version of GLFW and does not compile any more. Is there a chance you could fix it?
I am trying to fix it myself, but I am relatively inexperienced.
Thanks for your work, Vlad
— Reply to this email directly or view it on GitHub< https://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2> .
— Reply to this email directly or view it on GitHubhttps://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2#issuecomment-29606002 .
Valid points. But I wasn't talking about never porting them to glfw3, just that it had not been a priority.
Anybody who is diving into fairly low-level haskell is supposed to be prepared to some pain before gain, don't you think? To me that defeats the point of a tutorial, which should provide as much accessibility as possible as long as it doesn't comes with trade-offs that could damage what the tuto is trying to show, which is here OpenGL, not GLFW. I didn't even expect people reading them to necessarily reuse GFLW for their developments (when compared to OpenGL, windowing/events libraries are fairly straightforward anyway). This is BTW the rationale that led me to use OpenGL 3.1 instead of the original 3.3: everything in the tutos was compatible with OGL 3.1, and some chipsets still don't support more recent versions, so I favored accessibility.
But If you're into adapting them for you needs, a solution could be to add a branch 'glfw3' to the tutos, or to make it the master branch and then put current master in a glfw2 branch. Do you want me to give you an access to the repository?
2013/12/2 Vladimir Lopatin [email protected]
Hey Yves,
It's not about features, it's about up to date dependencies. Relying on a syntax that is known to be changed in more recent versions of dependencies... is short-sighted. We are talking about basic functionality and basics must be well covered. If basics are going to break with the next version bump - it makes such basics unreliable.
Considering the hassle of installing things... Anybody who is diving into fairly low-level haskell is supposed to be prepared to some pain before gain, don't you think? Of course if you consider 'cabal install GLFW' as too much hassle for a developer, then maybe it is not worth it indeed.
If you prefer to keep the code as is - it's ok. I intend to fix it myself then. Your code took me close enough to achieve my goal. Thank you for that.
Regards, Vladimir.
On 2 December 2013 11:03, Yves Parès (Ywen) [email protected]:
Hi Vladimir,
The reason I haven't ported yet the tutos to GLFW3 is that Hackage is ahead of some linux distros (and esp. the one I use, Ubuntu) whose repositories still contain only libglfw2. So adding a dependency to GLFW 3 would require the users of those distros to manually download, build & install GLFW 3. Quite a hassle for no gain, really, since I only need very very basic GLFW features. And I wasn't sure if a lot of packages on Hackage already use and require GLFW3. Do you have a dependency to GLFW3 due to another package? In the meantime, cabal 1.18 sandbox feature can help you separating what needs GLFW3 from what needs GLFW2.
Regards, Yves.
2013/12/2 Vladimir Lopatin [email protected]
Hello, YPares
I tried your code for tutorial04 - it is exactly what I need to proceed with OpenGL experience, but your code seems to rely on older version of GLFW and does not compile any more. Is there a chance you could fix it?
I am trying to fix it myself, but I am relatively inexperienced.
Thanks for your work, Vlad
— Reply to this email directly or view it on GitHub< https://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2> .
— Reply to this email directly or view it on GitHub< https://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2#issuecomment-29606002>
.
— Reply to this email directly or view it on GitHubhttps://github.com/YPares/Haskell-OpenGL3.1-Tutos/issues/2#issuecomment-29610832 .