{"action":"created","issue":{"url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/35","labels_url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/35/labels{/name}","comments_url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/35/comments","events_url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/35/events","html_url":"https://github.com/stampit-org/stamp-specification/issues/35","id":108707583,"number":35,"title":"What's the point of stamp({instance}) ?","user":{"login":"markokr","id":49397,"avatar_url":"https://avatars.githubusercontent.com/u/49397?v=3","gravatar_id":"","url":"https://api.github.com/users/markokr","html_url":"https://github.com/markokr","followers_url":"https://api.github.com/users/markokr/followers","following_url":"https://api.github.com/users/markokr/following{/other_user}","gists_url":"https://api.github.com/users/markokr/gists{/gist_id}","starred_url":"https://api.github.com/users/markokr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markokr/subscriptions","organizations_url":"https://api.github.com/users/markokr/orgs","repos_url":"https://api.github.com/users/markokr/repos","events_url":"https://api.github.com/users/markokr/events{/privacy}","received_events_url":"https://api.github.com/users/markokr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":30,"created_at":"2015-09-28T17:35:11Z","updated_at":"2015-10-01T18:54:00Z","closed_at":null,"body":"There is minor issue that it uses the \"magic-arg\" antipattern.  As you have already discussed in #26.\r\n\r\nBut the major issue is that how this is supposed to be generally useful?  I assume you have some sort of use-case in mind, although I can't see it.  Current spec also does not descibe any details.\r\n\r\nMain problem is that whatever use-case you have in mind, is it really possible to do it safely without specifying non-trivial amount of restrictions what user code is allowed to do with instance attributes? Restrictions for both init functions and rest of the code.\r\n\r\nAnd even when it's possible to spec some behaviour that does not break everything it touches, how will you describe the resulting behaviour to user?\r\n\r\nUnless you have really well thought out handling of various interactions that can happen, it seems better to just remove it from spec.\r\n\r\nThe natural flow I see in current spec is that the 'options' arg of stamp is exactly same object given to initializers, without any modifications and fully user-controlled properties."},"comment":{"url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/comments/144815660","html_url":"https://github.com/stampit-org/stamp-specification/issues/35#issuecomment-144815660","issue_url":"https://api.github.com/repos/stampit-org/stamp-specification/issues/35","id":144815660,"user":{"login":"ericelliott","id":364727,"avatar_url":"https://avatars.githubusercontent.com/u/364727?v=3","gravatar_id":"","url":"https://api.github.com/users/ericelliott","html_url":"https://github.com/ericelliott","followers_url":"https://api.github.com/users/ericelliott/followers","following_url":"https://api.github.com/users/ericelliott/following{/other_user}","gists_url":"https://api.github.com/users/ericelliott/gists{/gist_id}","starred_url":"https://api.github.com/users/ericelliott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ericelliott/subscriptions","organizations_url":"https://api.github.com/users/ericelliott/orgs","repos_url":"https://api.github.com/users/ericelliott/repos","events_url":"https://api.github.com/users/ericelliott/events{/privacy}","received_events_url":"https://api.github.com/users/ericelliott/received_events","type":"User","site_admin":false},"created_at":"2015-10-01T18:54:00Z","updated_at":"2015-10-01T18:54:00Z","body":"They already don't, per the existing spec:\r\n\r\n> Different descriptor properties, one or more stamps:\r\n>* Instance properties have lowest priority\r\n>* Shallow properties override deep properties\r\n>* Descriptors override everything\r\n\r\nI still see no connection to the `.constructor` prototype property."}}