{"action":"created","issue":{"url":"https://api.github.com/repos/emojicode/emojicode/issues/65","repository_url":"https://api.github.com/repos/emojicode/emojicode","labels_url":"https://api.github.com/repos/emojicode/emojicode/issues/65/labels{/name}","comments_url":"https://api.github.com/repos/emojicode/emojicode/issues/65/comments","events_url":"https://api.github.com/repos/emojicode/emojicode/issues/65/events","html_url":"https://github.com/emojicode/emojicode/issues/65","id":252191548,"number":65,"title":"❗️❕ and ❓❔: The method revolution","user":{"login":"idmean","id":5495918,"avatar_url":"https://avatars3.githubusercontent.com/u/5495918?v=4","gravatar_id":"","url":"https://api.github.com/users/idmean","html_url":"https://github.com/idmean","followers_url":"https://api.github.com/users/idmean/followers","following_url":"https://api.github.com/users/idmean/following{/other_user}","gists_url":"https://api.github.com/users/idmean/gists{/gist_id}","starred_url":"https://api.github.com/users/idmean/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/idmean/subscriptions","organizations_url":"https://api.github.com/users/idmean/orgs","repos_url":"https://api.github.com/users/idmean/repos","events_url":"https://api.github.com/users/idmean/events{/privacy}","received_events_url":"https://api.github.com/users/idmean/received_events","type":"User","site_admin":false},"labels":[{"id":674156463,"url":"https://api.github.com/repos/emojicode/emojicode/labels/syntax-proposal","name":"syntax-proposal","color":"c2e0c6","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/emojicode/emojicode/milestones/3","html_url":"https://github.com/emojicode/emojicode/milestone/3","labels_url":"https://api.github.com/repos/emojicode/emojicode/milestones/3/labels","id":2717828,"number":3,"title":"0.6","description":"See https://github.com/emojicode/emojicode/blob/master/0.6.md","creator":{"login":"idmean","id":5495918,"avatar_url":"https://avatars3.githubusercontent.com/u/5495918?v=4","gravatar_id":"","url":"https://api.github.com/users/idmean","html_url":"https://github.com/idmean","followers_url":"https://api.github.com/users/idmean/followers","following_url":"https://api.github.com/users/idmean/following{/other_user}","gists_url":"https://api.github.com/users/idmean/gists{/gist_id}","starred_url":"https://api.github.com/users/idmean/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/idmean/subscriptions","organizations_url":"https://api.github.com/users/idmean/orgs","repos_url":"https://api.github.com/users/idmean/repos","events_url":"https://api.github.com/users/idmean/events{/privacy}","received_events_url":"https://api.github.com/users/idmean/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":0,"state":"open","created_at":"2017-08-23T08:03:07Z","updated_at":"2017-08-23T08:03:31Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2017-08-23T07:51:57Z","updated_at":"2017-08-29T19:49:22Z","closed_at":null,"body":"## ✏️ Proposed change\r\n\r\n### Part 1 (Already implemented)\r\n\r\nEmojicode shall use ❕ and ❗️as argument delimiters as described below:\r\n\r\n1. A ❗️ can appear to end the arguments of method, type method or initializer.\r\n2. Methods, type methods or initializers with any number of arguments must have its arguments wrapped between ❕ and ❗️. ❕ and ❗️may appear as `❕❗️` \r\n\r\n### Part 2\r\n\r\nMethods are defined with ❗️ instead of 🐖.\r\n\r\n### Part 3\r\n\r\nMethods can also be defined with ❓. These methods are then *interrogative* methods as opposed to *imperative* methods, which are the ones defined with ❗️. Interrogative and imperative methods with the same name may exist alongside in the same class. Interrogative methods are called with ❔and ❓in the same way imperative methods are called with ❕ and ❗️.\r\n\r\n## 🤔 Rationale\r\n\r\n### Part 1 & 2\r\n\r\nThe necessity to delimit arguments in Emojicode has recognized a long time ago. Not only does the current syntax require context sensitive parsing, it is also hard to read an Emoijcode program without knowing the exact method, type method or initializer definitions as it’s nearly impossible to guess them while reading the program the program without being able to determine the number of arguments the methods takes.\r\n\r\nFurthermore, this opens up the possibility of method overloading.\r\n\r\n### Part 3\r\n\r\nThis enhances Emojicode expressiveness. It allows somebody reading the code immediately establish whether a method is called to perform an action (imperative) or to determine a state or a value (interrogative).\r\n\r\n## 🕺Example\r\n\r\n### Part 1\r\n\r\n1. `😀 🔤Charging battery🔤❗️`\r\n2. `🔡 degree ❕3❗️`, `🔷🔡🍨❕ingredients 🔤, 🔤❗️`, `🔷🏠🆕❕🔤Boulevard du Parc🔤 🔤1🔤 🔤Serris/Coupvray🔤 🔤77700🔤 🔤Thorigny-sur-Marne🔤 🔤France🔤 ❗️`\r\n\r\n### Part 2\r\n\r\n```\r\n❗️ 🔋  🍇\r\n    😀 🔤Charging battery🔤❗️\r\n🍉\r\n```\r\n\r\n### Part 3\r\n\r\n```\r\n🐇 📱 🍇\r\n  ❗️ 🔋  🍇\r\n    😀 🔤Charging battery🔤❗️\r\n  🍉\r\n\r\n  ❓ 🔋 ➡️ 🚂 🍇\r\n    🍎 20\r\n  🍉\r\n🍉\r\n\r\n🏁 🍇\r\n  🔋 phone❓ 👴 Returns the charge left\r\n  🔋 phone❗️ 👴 Prints “Charging battery”\r\n🍉\r\n```"},"comment":{"url":"https://api.github.com/repos/emojicode/emojicode/issues/comments/325779551","html_url":"https://github.com/emojicode/emojicode/issues/65#issuecomment-325779551","issue_url":"https://api.github.com/repos/emojicode/emojicode/issues/65","id":325779551,"user":{"login":"idmean","id":5495918,"avatar_url":"https://avatars3.githubusercontent.com/u/5495918?v=4","gravatar_id":"","url":"https://api.github.com/users/idmean","html_url":"https://github.com/idmean","followers_url":"https://api.github.com/users/idmean/followers","following_url":"https://api.github.com/users/idmean/following{/other_user}","gists_url":"https://api.github.com/users/idmean/gists{/gist_id}","starred_url":"https://api.github.com/users/idmean/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/idmean/subscriptions","organizations_url":"https://api.github.com/users/idmean/orgs","repos_url":"https://api.github.com/users/idmean/repos","events_url":"https://api.github.com/users/idmean/events{/privacy}","received_events_url":"https://api.github.com/users/idmean/received_events","type":"User","site_admin":false},"created_at":"2017-08-29T19:49:22Z","updated_at":"2017-08-29T19:49:22Z","body":"Now that you mention it, I really see no reason to use  ❕ and ❔ after all. \r\n\r\nAnd I didn’t miss a ❕: They are just for *the arguments*. `🔤Charging battery🔤` is the object the method is invoked on, which per definition is not argument. And reconsidering it, that's weird too, so I let's remove them  ❕ and ❔."}}
{"actor":{"display_login":"idmean"}}