{"action":"created","issue":{"url":"https://api.github.com/repos/chapel-lang/chapel/issues/9656","repository_url":"https://api.github.com/repos/chapel-lang/chapel","labels_url":"https://api.github.com/repos/chapel-lang/chapel/issues/9656/labels{/name}","comments_url":"https://api.github.com/repos/chapel-lang/chapel/issues/9656/comments","events_url":"https://api.github.com/repos/chapel-lang/chapel/issues/9656/events","html_url":"https://github.com/chapel-lang/chapel/issues/9656","id":327458133,"node_id":"MDU6SXNzdWUzMjc0NTgxMzM=","number":9656,"title":"Syntax of Partial Reductions","user":{"login":"vasslitvinov","id":8039635,"node_id":"MDQ6VXNlcjgwMzk2MzU=","avatar_url":"https://avatars0.githubusercontent.com/u/8039635?v=4","gravatar_id":"","url":"https://api.github.com/users/vasslitvinov","html_url":"https://github.com/vasslitvinov","followers_url":"https://api.github.com/users/vasslitvinov/followers","following_url":"https://api.github.com/users/vasslitvinov/following{/other_user}","gists_url":"https://api.github.com/users/vasslitvinov/gists{/gist_id}","starred_url":"https://api.github.com/users/vasslitvinov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vasslitvinov/subscriptions","organizations_url":"https://api.github.com/users/vasslitvinov/orgs","repos_url":"https://api.github.com/users/vasslitvinov/repos","events_url":"https://api.github.com/users/vasslitvinov/events{/privacy}","received_events_url":"https://api.github.com/users/vasslitvinov/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"vasslitvinov","id":8039635,"node_id":"MDQ6VXNlcjgwMzk2MzU=","avatar_url":"https://avatars0.githubusercontent.com/u/8039635?v=4","gravatar_id":"","url":"https://api.github.com/users/vasslitvinov","html_url":"https://github.com/vasslitvinov","followers_url":"https://api.github.com/users/vasslitvinov/followers","following_url":"https://api.github.com/users/vasslitvinov/following{/other_user}","gists_url":"https://api.github.com/users/vasslitvinov/gists{/gist_id}","starred_url":"https://api.github.com/users/vasslitvinov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vasslitvinov/subscriptions","organizations_url":"https://api.github.com/users/vasslitvinov/orgs","repos_url":"https://api.github.com/users/vasslitvinov/repos","events_url":"https://api.github.com/users/vasslitvinov/events{/privacy}","received_events_url":"https://api.github.com/users/vasslitvinov/received_events","type":"User","site_admin":false},"assignees":[{"login":"vasslitvinov","id":8039635,"node_id":"MDQ6VXNlcjgwMzk2MzU=","avatar_url":"https://avatars0.githubusercontent.com/u/8039635?v=4","gravatar_id":"","url":"https://api.github.com/users/vasslitvinov","html_url":"https://github.com/vasslitvinov","followers_url":"https://api.github.com/users/vasslitvinov/followers","following_url":"https://api.github.com/users/vasslitvinov/following{/other_user}","gists_url":"https://api.github.com/users/vasslitvinov/gists{/gist_id}","starred_url":"https://api.github.com/users/vasslitvinov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vasslitvinov/subscriptions","organizations_url":"https://api.github.com/users/vasslitvinov/orgs","repos_url":"https://api.github.com/users/vasslitvinov/repos","events_url":"https://api.github.com/users/vasslitvinov/events{/privacy}","received_events_url":"https://api.github.com/users/vasslitvinov/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/chapel-lang/chapel/milestones/20","html_url":"https://github.com/chapel-lang/chapel/milestone/20","labels_url":"https://api.github.com/repos/chapel-lang/chapel/milestones/20/labels","id":3384952,"node_id":"MDk6TWlsZXN0b25lMzM4NDk1Mg==","number":20,"title":"PB Sprint 7","description":"","creator":{"login":"benjamin-robbins","id":30993993,"node_id":"MDQ6VXNlcjMwOTkzOTkz","avatar_url":"https://avatars1.githubusercontent.com/u/30993993?v=4","gravatar_id":"","url":"https://api.github.com/users/benjamin-robbins","html_url":"https://github.com/benjamin-robbins","followers_url":"https://api.github.com/users/benjamin-robbins/followers","following_url":"https://api.github.com/users/benjamin-robbins/following{/other_user}","gists_url":"https://api.github.com/users/benjamin-robbins/gists{/gist_id}","starred_url":"https://api.github.com/users/benjamin-robbins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/benjamin-robbins/subscriptions","organizations_url":"https://api.github.com/users/benjamin-robbins/orgs","repos_url":"https://api.github.com/users/benjamin-robbins/repos","events_url":"https://api.github.com/users/benjamin-robbins/events{/privacy}","received_events_url":"https://api.github.com/users/benjamin-robbins/received_events","type":"User","site_admin":false},"open_issues":17,"closed_issues":0,"state":"open","created_at":"2018-05-29T17:55:08Z","updated_at":"2018-05-29T20:11:08Z","due_on":"2018-06-12T07:00:00Z","closed_at":null},"comments":1,"created_at":"2018-05-29T19:35:14Z","updated_at":"2018-05-30T22:33:57Z","closed_at":null,"author_association":"MEMBER","body":"A partial-reduction expression needs these 3 ingredients:\r\n\r\n* reduction operation (`OP`)\r\n* the result shape (`SHAPE`)\r\n* the expression being reduced (`EXPR`)\r\n\r\nThe proposed syntax options are:\r\n\r\n(A) `OP reduce (shape=SHAPE) EXPR`\r\n\r\nThis option gives bison's shift/reduce conflicts because the parentheses are ambiguous.\r\n\r\n(B) `OP partreduce (SHAPE) EXPR`\r\n\r\nThis option requires the introduction of a new keyword, such as `partreduce`.\r\n\r\n`SHAPE` is one of:\r\n* a domain\r\n* a tuple with one component per dimension:\r\n  - a bounded range\r\n    + indicates a preserved dimension if it matches the corresponding dimension of EXPR\r\n    + indicates a collapsed dimension if it contains a single index\r\n  - an unbounded range - indicates a preserved dimension\r\n  - an integer - indicates a collapsed dimension\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/chapel-lang/chapel/issues/comments/393341285","html_url":"https://github.com/chapel-lang/chapel/issues/9656#issuecomment-393341285","issue_url":"https://api.github.com/repos/chapel-lang/chapel/issues/9656","id":393341285,"node_id":"MDEyOklzc3VlQ29tbWVudDM5MzM0MTI4NQ==","user":{"login":"vasslitvinov","id":8039635,"node_id":"MDQ6VXNlcjgwMzk2MzU=","avatar_url":"https://avatars0.githubusercontent.com/u/8039635?v=4","gravatar_id":"","url":"https://api.github.com/users/vasslitvinov","html_url":"https://github.com/vasslitvinov","followers_url":"https://api.github.com/users/vasslitvinov/followers","following_url":"https://api.github.com/users/vasslitvinov/following{/other_user}","gists_url":"https://api.github.com/users/vasslitvinov/gists{/gist_id}","starred_url":"https://api.github.com/users/vasslitvinov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vasslitvinov/subscriptions","organizations_url":"https://api.github.com/users/vasslitvinov/orgs","repos_url":"https://api.github.com/users/vasslitvinov/repos","events_url":"https://api.github.com/users/vasslitvinov/events{/privacy}","received_events_url":"https://api.github.com/users/vasslitvinov/received_events","type":"User","site_admin":false},"created_at":"2018-05-30T22:33:57Z","updated_at":"2018-05-30T22:33:57Z","author_association":"MEMBER","body":"@ben-albrecht - `+ reduce(dom) myArr` is exactly what we want to express.\r\nThe problem is that I do not know how to adjust the parser to parse that.\r\nThe parentheses are ambiguous with a full reduction as in `+ reduce (myArr)`.\r\nWhat do you think?\r\n"}}
{"actor":{"display_login":"vasslitvinov"}}