{"action":"created","issue":{"url":"https://api.github.com/repos/haskell-game/sdl2/issues/123","repository_url":"https://api.github.com/repos/haskell-game/sdl2","labels_url":"https://api.github.com/repos/haskell-game/sdl2/issues/123/labels{/name}","comments_url":"https://api.github.com/repos/haskell-game/sdl2/issues/123/comments","events_url":"https://api.github.com/repos/haskell-game/sdl2/issues/123/events","html_url":"https://github.com/haskell-game/sdl2/pull/123","id":167056540,"number":123,"title":"Remove 'linear' package dependency from library","user":{"login":"cloudhead","id":40774,"avatar_url":"https://avatars.githubusercontent.com/u/40774?v=3","gravatar_id":"","url":"https://api.github.com/users/cloudhead","html_url":"https://github.com/cloudhead","followers_url":"https://api.github.com/users/cloudhead/followers","following_url":"https://api.github.com/users/cloudhead/following{/other_user}","gists_url":"https://api.github.com/users/cloudhead/gists{/gist_id}","starred_url":"https://api.github.com/users/cloudhead/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cloudhead/subscriptions","organizations_url":"https://api.github.com/users/cloudhead/orgs","repos_url":"https://api.github.com/users/cloudhead/repos","events_url":"https://api.github.com/users/cloudhead/events{/privacy}","received_events_url":"https://api.github.com/users/cloudhead/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-07-22T14:23:57Z","updated_at":"2016-07-22T15:35:16Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/haskell-game/sdl2/pulls/123","html_url":"https://github.com/haskell-game/sdl2/pull/123","diff_url":"https://github.com/haskell-game/sdl2/pull/123.diff","patch_url":"https://github.com/haskell-game/sdl2/pull/123.patch"},"body":"Hey there, I was looking to move from GLFW to SDL2, but after seeing the linear/lens dependency I was somewhat put off, since I don't think there is any reason why a low-level library such as this should incur such a large dependency. Furthermore, it seems like very little of the linear package is used: the Storable instances, and the V2, V3, V4 types.\r\n\r\nBy doing this, we remove the lens dependency too, and a few dozen other packages. The vector functionality needed (which is very little) is in SDL.Vect.\r\n\r\nI'm still not convinced SDL even needs a real vector type though, since the amount of vector math is very minimal.\r\n\r\nIs this something you would consider?\r\n\r\nThanks\r\n\r\n## Issues\r\n\r\n- I've only tested this on GHC 8.0.1, there are some errors on 7.8.3.\r\n- Points and Vectors are no longer distinguished. This can be fixed.\r\n- The new vector type has the same name as `linear`'s `V2`. Perhaps exposing a different type name to the user might be a good idea, or simply exposing naked values."},"comment":{"url":"https://api.github.com/repos/haskell-game/sdl2/issues/comments/234576968","html_url":"https://github.com/haskell-game/sdl2/pull/123#issuecomment-234576968","issue_url":"https://api.github.com/repos/haskell-game/sdl2/issues/123","id":234576968,"user":{"login":"ivanperez-keera","id":1162320,"avatar_url":"https://avatars.githubusercontent.com/u/1162320?v=3","gravatar_id":"","url":"https://api.github.com/users/ivanperez-keera","html_url":"https://github.com/ivanperez-keera","followers_url":"https://api.github.com/users/ivanperez-keera/followers","following_url":"https://api.github.com/users/ivanperez-keera/following{/other_user}","gists_url":"https://api.github.com/users/ivanperez-keera/gists{/gist_id}","starred_url":"https://api.github.com/users/ivanperez-keera/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ivanperez-keera/subscriptions","organizations_url":"https://api.github.com/users/ivanperez-keera/orgs","repos_url":"https://api.github.com/users/ivanperez-keera/repos","events_url":"https://api.github.com/users/ivanperez-keera/events{/privacy}","received_events_url":"https://api.github.com/users/ivanperez-keera/received_events","type":"User","site_admin":false},"created_at":"2016-07-22T15:35:16Z","updated_at":"2016-07-22T15:35:16Z","body":"This is, by the way, the reason why we at Keera Studios are using a different version of SDL2. I'd love to use this one, but we can't because of TH. I think all TH requirements are gone if `lens` is gone."}}
{"actor":{"display_login":"ivanperez-keera"}}