Hi, Alex-
Alex Russell wrote:
document.matchAll is deviating from that.
Document.getElementsBySelector has a higher readability in that
regard I think.
I disagree. It's perhaps easier to *introduce*, but it's actually harder
to read since it makes lines longer and therefore increases the need to
wrap them.
It might just be my coding style, but I don't normally have many lines
that wrap.
In any case, this is overcome by shortnaming, if line length is really
that much of a concern.
If you are looking to preserve the "this API handles
selectors" semantic, one could propose document.bySelector(), but I
think the argument that this or getElementsBySelector are better than
match() or matchAll() are weak.
Why do you think they are weak?
Your argument revolves around introducing this new function name to the
global population of developers, and while I agree that it's a
considerable cost, it will be a sunk cost much sooner than the effects
of typing a longer name a billion times will be dissipated. Maciej's
argument that this will be a critical API and therefore deserves a
shorter name rings true with me in a way that optimizing for
introduceability doesn't.
I agree that the shorter the name, the better. But I'm really concerned
about losing the descriptive quality. Newbies will learn the
functionality of the name more easily if it is descriptive, and experts
can alias it shorter if they wish. I don't see where this loss of
productivity is coming from.
Upon further thought, getElementBySelector/getElementsBySelector is a
bad set of names, since it seems prone to typos. What about something like:
* document.getNodeByExpr()
* document.getNodelistByExpr()
or:
* document.nodeByExpr()
* document.nodelistByExpr()
Descriptive of the return value and the criteria, and not terribly long.
Feel free to sub in "Sel" or something else for "Expr".
Regards-
-Doug
--
Regards-
-Doug
Research and Standards Engineer
6th Sense Analytics
www.6thsenseanalytics.com
mobile: 919.824.5482