{"action":"created","issue":{"url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/245","repository_url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye","labels_url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/245/comments","events_url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/245/events","html_url":"https://github.com/tomjaguarpaw/haskell-opaleye/issues/245","id":192627133,"number":245,"title":"Competitive design goals?","user":{"login":"saurabhnanda","id":28369,"avatar_url":"https://avatars.githubusercontent.com/u/28369?v=3","gravatar_id":"","url":"https://api.github.com/users/saurabhnanda","html_url":"https://github.com/saurabhnanda","followers_url":"https://api.github.com/users/saurabhnanda/followers","following_url":"https://api.github.com/users/saurabhnanda/following{/other_user}","gists_url":"https://api.github.com/users/saurabhnanda/gists{/gist_id}","starred_url":"https://api.github.com/users/saurabhnanda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saurabhnanda/subscriptions","organizations_url":"https://api.github.com/users/saurabhnanda/orgs","repos_url":"https://api.github.com/users/saurabhnanda/repos","events_url":"https://api.github.com/users/saurabhnanda/events{/privacy}","received_events_url":"https://api.github.com/users/saurabhnanda/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":25,"created_at":"2016-11-30T17:21:51Z","updated_at":"2016-12-05T08:10:25Z","closed_at":null,"body":"**warning** this is an existential question!\r\n\r\nLooking at Hackage, it seems that [Opaleye 's first release](https://hackage.haskell.org/package/opaleye-0.2) was on 1 Dec 2014. Around that time [Persistent was at 2.1.1](https://hackage.haskell.org/package/persistent-2.1.1). \r\n\r\nDoes this mean Persistent was a fairly mature library by the time Opalaye was started? If yes, then the broad question is: what are the gaps/issues in Persistent that Opaleye is trying to fill? What problems does Persistent not solve well, and possibly cannot solve well in the future (given core design principles), that Opaleye is better positioned to solve?"},"comment":{"url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/comments/264790986","html_url":"https://github.com/tomjaguarpaw/haskell-opaleye/issues/245#issuecomment-264790986","issue_url":"https://api.github.com/repos/tomjaguarpaw/haskell-opaleye/issues/245","id":264790986,"user":{"login":"tomjaguarpaw","id":1951567,"avatar_url":"https://avatars.githubusercontent.com/u/1951567?v=3","gravatar_id":"","url":"https://api.github.com/users/tomjaguarpaw","html_url":"https://github.com/tomjaguarpaw","followers_url":"https://api.github.com/users/tomjaguarpaw/followers","following_url":"https://api.github.com/users/tomjaguarpaw/following{/other_user}","gists_url":"https://api.github.com/users/tomjaguarpaw/gists{/gist_id}","starred_url":"https://api.github.com/users/tomjaguarpaw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomjaguarpaw/subscriptions","organizations_url":"https://api.github.com/users/tomjaguarpaw/orgs","repos_url":"https://api.github.com/users/tomjaguarpaw/repos","events_url":"https://api.github.com/users/tomjaguarpaw/events{/privacy}","received_events_url":"https://api.github.com/users/tomjaguarpaw/received_events","type":"User","site_admin":false},"created_at":"2016-12-05T08:10:25Z","updated_at":"2016-12-05T08:10:25Z","body":"> > I have problems with this step honestly. SQL is not a great or even a good language. It encodes a powerful paradigm (relational algebra) but the language itself is awful. I want a dsl that makes it simpler to write query code and also ensures that its safe / composable.\r\n\r\n> @tomjaguarpaw do you agree with this comment?\r\n\r\nYes, absolutely!\r\n\r\n> If this is the motivation driving Opaleye, is there any documentation (within Opaleye, or outside), which talks about the disadvantages of SQL as a relational query language. Following from there, is there any document (it would actually be the Opaleye roadmap), which talks about how the Opaleye query language doesn't have those disadvantages?\r\n\r\nNo and no.  There is no such documentation.  I agree it would be a good idea to have it.\r\n\r\n> the latter document should also talk about how the Opaleye query language is at feature-parity with SQL (or is explicitly choosing to not implement certain features due to aforementioned disadvantages).\r\n\r\nThe only reason there is not feature parity is lack of developer time.\r\n\r\n> Any thoughts on how Opaleye's design goals compare to LINQ's?\r\n\r\nLINQ has to be supported by the language, as far as I know.  Opaleye is a pure library.  Besides that they probably have similar design goals, but I'm not terribly familiar with LINQ so I can't say for certain.\r\n\r\n> Aren't the number of \"no's\" very high?\r\n\r\nYeah absolutely!  It takes effort to support new features and I've only got a limited amount of free time!"}}
{"actor":{"display_login":"tomjaguarpaw"}}