On 04.10.2017 12:03, aberba wrote:
  Upon reading this, It triggered an idea.

On Saturday, 30 September 2017 at 16:10:44 UTC, Jonathan Marler wrote:
https://wiki.dlang.org/DIP88

I'd like to see DIP88 (Named Parameters) revived.  Was this proposal rejected or is it just stale and needs a refresh? Named parameters can be implemented in a library, however, in my opinion they are useful enough to warrant a clean syntax with language support.  I'd be willing to refresh the DIP so long as I know the idea has not already been rejected.

DIP reminds me of object destruction.

/* extracts success & message from returned type. Could be tuple or structure, etc. May even eliminate use of tuples for multiple return
*/

auto {success, message} = callVoldermortFunction();

 This is concept is used in Kotlin. JavaScript es6 takes it even further (function parameters and arguments support object destruction)



Why curly braces? Multiple function arguments are a form of built-in tuple, so the syntax should be consistent:

auto (success, message) = callVoldemortFunction();

The only unresolved question is (as using the result of the comma operator has been deprecated already): How to write a unary tuple. My favourite is what python does: "(3,)". This is however already accepted as a function argument list. I think it is worth breaking though. Maybe we should deprecate it.

Reply via email to