Re: Keyword Arguments

Jan-Paul Bultmann <[email protected]> Sun, 10 Jun 2012 03:27:46 +0200
Newsgroups gmane.comp.lang.io
Message-ID <[email protected]>
> 
>   1. My Io suddenly behaves differently from other people's Io. For instance, code I use this in will not run on other Io interpretors without first having them change and recompile their Io interpretor.
>   2. Other implementations of Map literals are now barriers to entry for projects. I will either have to conform to their implementation, for their project only, or write an additional implementation of my own.
> 

This is what metaprogramming is about, instead of having a giant language designed by committee where _everything_ is integrated, you get a small extensible language to fit your needs.
Today its map literals tomorrow it's the world (or pattern matching on binary data or whatever there are indefinitely many useful extensions).

> Saying "Io doesn't have Map literals" is not a another way of saying "Please, give me another random way to implement Map literals on my own project/library/interpretor."
> 

You don't have to put it into the Interpeter, the curly braces syntax is also introducible at pre-runtime within a program.
If everybody uses them, I see no reason to not include them in the core library, until then there is no need, others may find { } more useful for lambdas (I do ;)).
Also why so much emotion over a map literal that you can implement yourself? Example code seems like a helpful answer to that particular remark to me.

Cheers Jan