Bob Myers (2019-06-23T10:00:54.000Z)
rtm at gol.com (2019-06-23T10:08:16.333Z)
Every language feature adds cognitive overhead. It is not something that can or should be avoided. It should be minimized and balanced against other factors. Whether some codebase uses the new ```.prop``` syntax, or ```R.pick``` (from Ramda), or ```pluck("p")``` from RxJS, or some third-party or homegrown utility, the programmer will have to learn it. For such a common use case, it's better to have one thing for everyone to learn. Even then, as with most other features, people could choose not to use it, or a company could disallow its use in their styleguide if they really felt strongly enough about it. > The problem with the proposal, as I see it, is that it creates a function that looks, at first glance, to be a variable assignment. I don't understand this objection. How does ```.p```, which is the notation we are talking about, look like a variable assignment? As mentioned earlier in the thread, if there is concern that the leading dot is easy to overlook--which I don't think is the case, and is less of a problem in any case in most editors using monospaced fonts--there are myriad alternatives, including any non-unary operator such as ```^```, some unique combination of symbols, a keyword such as `pick`, or ```?.``` where the ```?``` can be read as a placeholder for an object to be passed in later. The proposal by no means rides on the specific symbol or notation chosen. The advantage of the dot is that it is the long-established notation for property access. We are merely extending that notion by assigning a different (but related) meaning when the expression on the left is omitted.
rtm at gol.com (2019-06-23T10:07:37.445Z)
Every language feature adds cognitive overhead. It is not something that can or should be avoided. It should be minimized and balanced against other factors. Whether some codebase uses the new ```.prop``` syntax, or ```R.pick``` (from Ramda), or ```pluck("p")``` from RxJS, or some third-party or homegrown utility, the programmer will have to learn it. For such a common use case, it's better to have one thing for everyone to learn. Even then, as with most other features, people could choose not to use it, or a company could disallow its use in their styleguide if they really felt strongly enough about it. > The problem with the proposal, as I see it, is that it creates a function that looks, at first glance, to be a variable assignment. I don't understand this objection. How does ```.p```, which is the notation we are talking about, look like a variable assignment? As mentioned earlier in the thread, if there is concern that the leading dot is easy to overlook--which I don't think is the case, and is less of a problem in any case in most editors using monospaced fonts--there are myriad alternatives, including any non-unary operator such as ```^```, some unique combination of symbols, a keyword such as `pick`, or ```?.``` where the ```?``` can be read as a placeholder for an object to be passed in later. The proposal by no means rides on the specific symbol or notation chosen. The advantage of the dot is that it is the long-established notation for property access. We are merely extending that notion by assigning a different meaning when the expression on the left is omitted.
rtm at gol.com (2019-06-23T10:06:53.916Z)
Every language feature adds cognitive overhead. It is not something that can or should be avoided. It should be minimized and balanced against other factors. Whether some codebase uses the new ```.prop``` syntax, or ```R.pick``` (from Ramda), or ```pluck("p")``` from RxJS, or some third-party or homegrown utility, the programmer will have to learn it. For such a common use case, it's better to have one thing for everyone to learn. Even then, as with most other features, people could choose not to use it, or a company could disallow its use in their styleguide if they really felt strongly enough about it. > The problem with the proposal, as I see it, is that it creates a function that looks, at first glance, to be a variable assignment. I don't understand this objection. How does ```.p```, which is the notation we are talking about, look like a variable assignment? As mentioned earlier in the thread, if there is concern that the leading dot is easy to overlook--which I don't think is the case, and is less of a problem in any case in most editors using monospaced fonts--there are myriad alternatives, including any non-unary operator such as ```^```, some unique combination of symbols, a keyword such as `pick`, or ```?.` where the ```?``` can be read as a placeholder for an object to be passed in later. The proposal by no means rides on the specific symbol or notation chosen. The advantage of the dot is that it is the long-established notation for property access. We are merely extending that notion by assigning a different meaning when the expression on the left is omitted.
rtm at gol.com (2019-06-23T10:06:33.361Z)
Every language feature adds cognitive overhead. It is not something that can or should be avoided. It should be minimized and balanced against other factors. Whether some codebase uses the new ```.prop``` syntax, or ```R.pick``` (from Ramda), or ```pluck("p")```. from RxJS, or some third-party or homegrown utility, the programmer will have to learn it. For such a common use case, it's better to have one thing for everyone to learn. Even then, as with most other features, people could choose not to use it, or a company could disallow its use in their styleguide if they really felt strongly enough about it. > The problem with the proposal, as I see it, is that it creates a function that looks, at first glance, to be a variable assignment. I don't understand this objection. How does ```.p```, which is the notation we are talking about, look like a variable assignment? As mentioned earlier in the thread, if there is concern that the leading dot is easy to overlook--which I don't think is the case, and is less of a problem in any case in most editors using monospaced fonts--there are myriad alternatives, including any non-unary operator such as ```^```, some unique combination of symbols, a keyword such as `pick`, or ```?.` where the ```?``` can be read as a placeholder for an object to be passed in later. The proposal by no means rides on the specific symbol or notation chosen. The advantage of the dot is that it is the long-established notation for property access. We are merely extending that notion by assigning a different meaning when the expression on the left is omitted.