{"action":"created","issue":{"url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/43","labels_url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/43/labels{/name}","comments_url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/43/comments","events_url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/43/events","html_url":"https://github.com/TypeCobolTeam/TypeCobol/issues/43","id":99379745,"number":43,"title":"Statement: EXEC","user":{"login":"wiztigers","id":13147832,"avatar_url":"https://avatars.githubusercontent.com/u/13147832?v=3","gravatar_id":"","url":"https://api.github.com/users/wiztigers","html_url":"https://github.com/wiztigers","followers_url":"https://api.github.com/users/wiztigers/followers","following_url":"https://api.github.com/users/wiztigers/following{/other_user}","gists_url":"https://api.github.com/users/wiztigers/gists{/gist_id}","starred_url":"https://api.github.com/users/wiztigers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wiztigers/subscriptions","organizations_url":"https://api.github.com/users/wiztigers/orgs","repos_url":"https://api.github.com/users/wiztigers/repos","events_url":"https://api.github.com/users/wiztigers/events{/privacy}","received_events_url":"https://api.github.com/users/wiztigers/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/labels/Cobol","name":"Cobol","color":"666666"},{"url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/labels/rfc","name":"rfc","color":"ba0979"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/milestones/16","html_url":"https://github.com/TypeCobolTeam/TypeCobol/milestones/A%20Complete%20ProgramClass%20Grammar","labels_url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/milestones/16/labels","id":1430861,"number":16,"title":"A Complete ProgramClass Grammar","description":"Now that CodeElements are good, ProgramClass must be tested.","creator":{"login":"wiztigers","id":13147832,"avatar_url":"https://avatars.githubusercontent.com/u/13147832?v=3","gravatar_id":"","url":"https://api.github.com/users/wiztigers","html_url":"https://github.com/wiztigers","followers_url":"https://api.github.com/users/wiztigers/followers","following_url":"https://api.github.com/users/wiztigers/following{/other_user}","gists_url":"https://api.github.com/users/wiztigers/gists{/gist_id}","starred_url":"https://api.github.com/users/wiztigers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wiztigers/subscriptions","organizations_url":"https://api.github.com/users/wiztigers/orgs","repos_url":"https://api.github.com/users/wiztigers/repos","events_url":"https://api.github.com/users/wiztigers/events{/privacy}","received_events_url":"https://api.github.com/users/wiztigers/received_events","type":"User","site_admin":false},"open_issues":4,"closed_issues":7,"state":"open","created_at":"2015-11-26T10:05:55Z","updated_at":"2015-12-08T09:38:27Z","due_on":"2015-12-03T23:00:00Z","closed_at":null},"comments":8,"created_at":"2015-08-06T07:53:38Z","updated_at":"2015-12-10T10:23:52Z","closed_at":null,"body":"Implement EXEC SQL ... END-EXEC (SQL embedding)."},"comment":{"url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/comments/163568449","html_url":"https://github.com/TypeCobolTeam/TypeCobol/issues/43#issuecomment-163568449","issue_url":"https://api.github.com/repos/TypeCobolTeam/TypeCobol/issues/43","id":163568449,"user":{"login":"wiztigers","id":13147832,"avatar_url":"https://avatars.githubusercontent.com/u/13147832?v=3","gravatar_id":"","url":"https://api.github.com/users/wiztigers","html_url":"https://github.com/wiztigers","followers_url":"https://api.github.com/users/wiztigers/followers","following_url":"https://api.github.com/users/wiztigers/following{/other_user}","gists_url":"https://api.github.com/users/wiztigers/gists{/gist_id}","starred_url":"https://api.github.com/users/wiztigers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wiztigers/subscriptions","organizations_url":"https://api.github.com/users/wiztigers/orgs","repos_url":"https://api.github.com/users/wiztigers/repos","events_url":"https://api.github.com/users/wiztigers/events{/privacy}","received_events_url":"https://api.github.com/users/wiztigers/received_events","type":"User","site_admin":false},"created_at":"2015-12-10T10:23:52Z","updated_at":"2015-12-10T10:23:52Z","body":"No problem, Liam. Glad to meet you.\r\n\r\nThe way we'll process what's inside an `EXEC` is still in discussion. As @laurentprudhon said earlier in the current discussion, we currently  just capture the text between `EXEC .. END-EXEC` but do nothing with it.\r\n\r\nIn the future, it would be nice to use a secondary parser to validate what's inside a given `EXEC`. For example, with an `EXEC SQL` you'd use a SQL parser, with an `EXEC CICS` you'd use a CICS parser, maybe with an `EXEC TYPECOBOL` you'd use our TypeCobol parser ... and this would be a configurable setting.\r\n\r\nIf you wanted to subcontract what's inside an `EXEC JAVA-YESIWANTTOINCLUDEOBJECTCODEINCOBOLJUSTBECAUSE` to a Java parser, I guess you *could* ...\r\n\r\nHowever, writing even a full fledged SQL parser is out of our scope for now. We have enough work with COBOL and must remain lucid about our development capacity.\r\n\r\nCreating an interface to use an *existing* SQL parser as a secondary parser, in a way that we could exchange data about (for example) which variables are usable by the `EXEC SQL`, and which syntactic/semantic errors are present inside this `EXEC SQL`, though ... yes, that's more in our scope. (｡•̀ᴗ-)✧\r\n\r\nI hope I answered your question."}}