{"issue":{"created_at":"2011-12-02T19:51:21Z","state":"open","updated_at":"2011-12-02T21:11:19Z","comments":4,"user":{"gravatar_id":"19f6b3877a3b4d15467481f7eeb0f635","id":879487,"url":"https://api.github.com/users/tombentley","avatar_url":"https://secure.gravatar.com/avatar/19f6b3877a3b4d15467481f7eeb0f635?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"tombentley"},"body":"In #255 Tako had the idea of using a `LetExpr` to implement named argument calls, instead of relying on an anon inner class as we do presently. Doing named argument invocation this way is an alternative to #44, which would require switching to Java 7. The obvious benefits of the `LetExpr` are:\r\n\r\n* No need for an instantiation or two method calls.\r\n* No need to generate inner classes (so using less perm gen space)\r\n* Presumably less hassle with boxing, since we don't have to box the receiver (it's currently a type parameter)\r\n\r\nCurrently I can see no drawbacks.","assignee":null,"number":256,"id":2432278,"labels":[],"pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"title":"Using LetExpr for named argument invocations","closed_at":null,"html_url":"https://github.com/ceylon/ceylon-compiler/issues/256","url":"https://api.github.com/repos/ceylon/ceylon-compiler/issues/256","milestone":null},"action":"created","comment":{"created_at":"2011-12-02T21:11:19Z","updated_at":"2011-12-02T21:11:19Z","user":{"gravatar_id":"b8932676ae05ecdd084d3839d1f49da8","id":179265,"url":"https://api.github.com/users/FroMage","avatar_url":"https://secure.gravatar.com/avatar/b8932676ae05ecdd084d3839d1f49da8?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"FroMage"},"body":"OK, very good point :)\r\n\r\nBut the whole idea about `invokedynamic` was that it could buy us binary compatibility and default values.","id":2995879,"url":"https://api.github.com/repos/ceylon/ceylon-compiler/issues/comments/2995879"}}